Skip to content

EnzoSeason/signature_detection_app

Repository files navigation

Signature Detection App

A web application for signature detection.

It's based on the signature detection tool I created.

Features

This app has 3 features.

In the end, user can download the result as a json file.

Detect the signature

detect

Correct the error

correct_error

Add a signature

add_signature

Install

This application is shipped with Docker.

After downloading the codes, you can run it in 2 modes.

dev mode:

cd signature_detection_app
docker-compose up

production mode:

cd signature_detection_app
docker-compose -f docker-compose.yml up

That's all! The application is run at localhost.

Structure

The application is composed by 3 parts.

  • frontend

    It is created by CRA (create-reat-app), written by Typescript.

  • backend

    It uses Fastapi, a Python web framework.

  • web server

    It is Nginx. It proxys the requests.

For now, no database is connected. It's very easy to extend with docker-compose.

Testing

  • Frontend:

    CRA includes the testing-library.

    To test the file you create or modify, run:

    cd signature_detection_app/frontend
    npm test -- --coverage

    To test all the files, run:

    cd signature_detection_app/frontend
    npm test -- --watchAll=false --coverage
  • backend:

    I uses pytest and coverage for backend testing.

    To see the test coverage, run:

    cd signature_detection_app
    source backend-coverage.sh 

Future reading