Skip to content

Decentralized Exchange Platform for XRP Ledger

License

Notifications You must be signed in to change notification settings

0xwonj/xrpl-swap

Repository files navigation

xrpl-swap Backend

This backend API is built using FastAPI, a modern, high-performance web framework for building APIs with Python 3. Additionally, the backend interacts with the XRP Ledger through the xrpl-py library, a pure Python implementation of the XRP Ledger.

Prerequisites

Project Structure

This backend solution is categorized into three major components:

  1. FastAPI (API Endpoint Exposures)
  2. ETL (Data Extraction, Transformation, and Loading)
  3. Redis (In-memory data structure store)

Development Setup

  1. Clone the repository to your local machine.

  2. Navigate to the project's root directory using the terminal.

  3. Make sure to set up the .env file using the provided .env-template before proceeding further.

Running the Application using Docker

  1. To initiate the application, use the following Docker command:

    docker compose up --build -d
  2. Once executed, the application will run on https://0.0.0.0:8000/.

  3. To shut down the application and its services:

    docker compose down

API Endpoints

A complete list of endpoints and their descriptions can be found in the FastAPI's interactive API documentation (swagger) at https://<your-server-url>/docs.

Contributing

If you wish to contribute to this project, kindly go through our CONTRIBUTING.md guidelines. We value each contribution and request you to adhere to the coding conventions and guidelines for all pull requests and issues.

License

This project adheres to the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License (CC BY-NC-ND 4.0). You're permitted to copy and distribute the material across various mediums. However, appropriate credit is essential, and commercial usage or derivative works creation isn't allowed.

For a comprehensive understanding, refer to the LICENSE.md documentation or the official license page.

Releases

No releases published

Packages

No packages published