Visit Egypt aplication made with Python's FastAPI framework and Hexagonal Architecture.
This project is comprised of the following languages and libraries:
- Language: Python 3.9+
- Web framework: FastAPI
- Production web server: Uvicorn
- MongoDB database: MongoDB
- Password hashing utilities: Passlib
- Data parsing and validation: Pydantic
- Testing: Pytest
- Linter: Flake8
- Static type checker: Mypy
- Formatter: Black
To start development it is recommended to have these utilities installed in a local development machine:
For better development experience, it is recommended these tools:
To run the API in development mode, follow these steps:
- Test the API with:
pytest
- Format code with:
autopep8 --in-place --recursive visitegypt
- Lint the code with:
flake8 todolist tests
- Run static analysis with:
mypy job_form_api tests