Skip to content

Andrey-Volkovitskiy/web-page-analyzer

Repository files navigation

Web page analyzer

This is the 3rd training project of "Python Developer" specialization.

Flask web app that analyzes web pages for basic SEO suitability. Just enter URL and check it out!

Deployed at: https://web-page-analyzer.up.railway.app/

  • Implemented the web app using Flask and raw SQL queries
  • A PostgreSQL database deployed in a Docker container
  • Beautiful Soup library used for page parsing
  • The code covered with tests
  • CI implemented via GitHub Actions
  • Deployed at Railway

Tests and code quality assessment:

Linter Pytest (with postgres)

Maintainability Test Coverage


This project was built using these tools:

Tool Description
Flask Micro web framework
Jinja2 Web template engine
PostgreSQL Database management system
Beautiful Soup HTML parsing package
Docker Container-based platform for building apps
Poetry Python dependency manager
Pytest Testing framework
Flake8 Linter to check code style
Code Climate Clean Code verification system
GitHub Actions Continuous Integration (CI)
Railway Deployment platform

Installation and running

The application stores data using PostgreSQL. The database schema is described in database.sql

  • make install - to install dependencies
  • make start - to start the application (Russian user interface)
  • make start-eng - to start the application (English user interface)
  • make dev - to start app on development web server
  • make test - to run tests

(more service commands can be found in Makefile)