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.0 license MIT MLH Fellowship Team 1 Travis-Build

💥 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 🔥

🛠️ Usage

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
(venv) $ pip3 install -r requirements.txt
(venv) $ 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:

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

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 🔑

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 DeepSource 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 Travis CI. With a simple configuration set-up, we were able to test each build for specific issues, which can be viewed here 🌱

🐱‍👤 Challenges we ran into

We ran into specific challenges like:

  • Scripting the Web Scrapping Part.
  • Parsing the generated JSON in form of Command Line Interface.
  • Fixing Bugs on the generated UI.
  • Extending a RESTful API out of the CLI App.

⚽ Accomplishments that we are proud of

  • Devised and Developed a Tool for critical SEO Analysis.
  • Implemented a coverage of 97% with Unit-Testing via Nose.

🧭 What we learnt

  • Unit-Testing with Nose.
  • Command Line Interface App Development.
  • Developing Python Packages.

🎄What's next for WebEdge

  • Developing a Web Application for WebEdge.
  • Further removing the False Positives.
  • Finish the work on the REST API for WebEdge.
Share this project:

Updates