Skip to content

HarshCasper/WebEdge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

59 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

WebEdge

We all have inborn talent and also inborn failings,
So often scorn a balance, chained to our own railings,
And our world misses a website that deserved to be a star,
But not unfurled in all its might, merely cowering from afar,
Why not take your Van Dyke, or Rembrandt seen by few,
And let us make it see the light, exposed to global view,
Don't hide them in shadows behind barriers of your mind,
Where pride and jealous arrows make them hard to find,
Instead turn to experts just as good as you would like to be,
Who you'll learn to trust, and who will set your website free.

Developed with β™₯ by your friends at MLH Fellowship Team-1.

version 1.0.2 license MIT MLH Fellowship Team 1 GitHub-Actions-Build Code Format: Black PyPI version PyPi downloads

πŸ’₯ Introduction

Bringing Edge to your Web Performance

Rise of Web has heralded the increasing ways in which we optimize Digital Performance. With SEO and Web Performance playing an important part, Developers feel lost around Performance needs. WebEdge aims to fix this 🌐

WebEdge have been introduced to suggest Web Optimizations for the App that can speed up operations and boost productivity ⚑

πŸ’‘ Why did we build it?

As Frontend Developers, Performance plays an important part for Ranking and User Experience. The priority is such that it cannot be avoided any longer. WebEdge provides a Python Package for you to scrap you Website and auto-suggest improvements you can make to improve your Optimization Ranking ♾️

With this Package, we aim to have a unified tool to improve your SEO Ranking with real-time optimizations, that you can fix as a Developer. Sounds interesting? Well it is πŸ”₯

πŸš€ Installation

To install WebEdge, we can use pip:

pip3 install webedge

The standard Python package will setup the CLI and you can use the same for local testing and analysis of your website and webpages.

 _       __     __    ______    __         
| |     / /__  / /_  / ____/___/ /___ ____ 
| | /| / / _ \/ __ \/ __/ / __  / __ `/ _ \
| |/ |/ /  __/ /_/ / /___/ /_/ / /_/ /  __/
|__/|__/\___/_.___/_____/\__,_/\__, /\___/ 
                              /____/       


usage: webedge [-h] -d DOMAIN [-s SITEMAP] [-p PAGE]

πŸ› οΈ Local development

That's pretty easy. To ensure that you are able to install everything properly, we would recommend you to have Git, Python and pip installed. You should ideally work with a Virtual Environment, such as venv or the virtualenv module, to get the best out of the package.

We will first start with setting up the Local Project Environment:

git clone https://github.com/HarshCasper/WebEdge.git
cd WebEdge
virtualenv venv
source venv/bin/activate
pip3 install -r requirements.txt
python3 setup.py install

Once you run the Commands and get everything fine, we are all set to run the tool βœ”οΈ

Let's run the tool now:

webedge -d http://[DOMAIN_NAME]/
  • For example if your domain is https://fastcoder.netlify.app/ then your command should be (you can use http or https in the command according to your needs):
webedge -d https://fastcoder.netlify.app/

Pass your Website to the tool and you will get a generated JSON highlighting all the achievements you have made in SEO Optimization or the warnings being displayed by the same πŸ”‘

To run the tests, simply push:

nosetests --with-coverage --cover-package=webedge tests.unit

To build with Docker, simply push:

Building using docker

$ docker build -t 'app:webedge' .
$ docker run app:webedge

πŸ›‘ External Tools

The Python Files have been linted using flake8 which automatically suggests linting errors and issues with formatting and styling. You can run the flake8 command with the given configuration in the Project πŸ€

We are also making use of CodeQL Analysis, which can be viewed here. This allows us to identify potential bugs and anti-patterns with each push to the repository, and potentially fix it πŸ›

For setting up CI/CD, we are making use of GitHub Actions. With a simple configuration set-up, we were able to test each build for specific issues, which can be viewed here 🌱

πŸ“œ LICENSE

MIT License