Skip to content

chinchy/CryptoConvert

Repository files navigation

Crypto Convert

Overview

Crypto Convert is a Python-based project designed to facilitate cryptocurrency conversions. The application provides a robust backend for managing conversion operations, caching, integrations with external services, and task automation.

Technologies

The project leverages the following technologies and frameworks:

  • Python 3.12: Core programming language.
  • Django: Web framework for backend development.
  • Celery: Task queue for asynchronous job processing.
  • PostgreSQL: Modern database for development and testing.
  • Docker: Containerization for consistent development and deployment environments.
  • Pytest: Testing framework for unit and integration tests.

Features

  • Cryptocurrency conversion logic with support for multiple coins.
  • Caching mechanisms to optimize performance.
  • Integration with external services for real-time data (e.g., Bybit).
  • Automated tasks for updating conversion statuses and coin data.
  • Comprehensive test suite for ensuring code quality.

Integrations

The project integrates with the following external services:

  • Bybit: Fetches real-time cryptocurrency data and handles conversion-related operations.

Directory Structure

  • crypto_convert/: Core application logic, including settings, URLs, and signals.
  • api/: API endpoints for cryptocurrency conversion.
  • cache/: Caching logic and models.
  • integrations/: External service integrations (e.g., Bybit).
  • models/: Database models for configuration and conversion.
  • services/: Business logic for fees and other operations.
  • tasks/: Celery tasks for background processing.
  • tests/: Unit and integration tests.
  • utils/: Utility functions and mixins.

Getting Started

  1. Clone the repository.
  2. Build and run the Docker containers:
    docker-compose up --build
  3. Run migrations:
    python manage.py migrate
  4. Start the development server:
    python manage.py runserver

Testing

Run the test suite using Pytest:

pytest

License

This project is licensed under the MIT License.

About

Crypto Convert is a Python-based project designed to facilitate cryptocurrency conversions.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages