API d'échange de Tether ABAN
Ce projet est une tâche de mise en œuvre pour ABAN Tether. L’objectif est de concevoir une API permettant d’enregistrer les bons de commande d’une plateforme d’échange ou d’échange de cryptomonnaies dans des conditions spécifiques.
Caractéristiques
- Gestion des utilisateurs : Créez et authentifiez les utilisateurs.
- Gestion des devises : répertorie les devises disponibles.
- Gestion des transactions : soumettez des transactions et gérez leurs états.
- Gestion des événements : règlez les transactions avec des événements d'échange.
- Tâches planifiées : rétablissez périodiquement les transactions bloquées à l'état soumis.
Pile technologique
- Python : Le principal langage de programmation.
- Nameko : Un framework de microservices pour Python.
- SQLAlchemy : Un ORM pour interagir avec la base de données.
- Marshmallow : Pour la validation du schéma et la sérialisation/désérialisation.
- Alambic : Pour les migrations de bases de données.
- Docker : Pour la conteneurisation.
Instructions de configuration
Conditions préalables
- Docker et Docker Composer
Configuration du développement local
Cloner le référentiel :
git clone https://github.com/amir-mhp/aban-tether-task.git
cd aban-tether-exchange
Construisez l'image Docker :
docker build -t abantether/core .
Démarrez les services :
Exécutez les migrations de bases de données :
docker-compose run --rm core alembic upgrade head
Ajouter des devises par défaut : :
docker-compose run --rm core python pre_deploy/add_default_currency.py
Accédez à l'application :
L'application sera exécutée sur http://localhost:8005