Skip to content

R-100/exchange-platform

 
 

Repository files navigation

Exchange platform

Currency exchange platform in market exchange model where user may submit their currency exchange offers. This system facilitates peer-to-peer trading by matching buy and sell orders across different currency pairs, utilizing an event-driven architecture for high performance and scalability.

Important

Project is in a pre-alpha state, and only suitable for use by developers

Technology Stack

  • Backend Services: Java (v26), Spring Boot (v4.0.5)
  • Database: PostgreSQL
  • Event Streaming Platform Kafka + Zookeeper
  • Containerization & Orchestration: Docker, Docker Compose
  • Identity and Access Management: Keycloak
  • Frontend: Angular (v21), TypeScript, NgRx library
  • Testing:
    • JUnit (Java)
  • Other Tools:
    • Liquibase (database migrations)
    • Prettier, ESLint (Frontend linting/formatting)

Documentation

Developer guide.

Database structure.

Translations Team.

Quick Start

  1. Clone the repository:
git clone https://github.com/tomasz-franek/exchange-platform.git
cd exchange-platform
mvn clean install
  1. Run with Docker Compose ( run the services in detached mode ) :
docker-compose up -d
# Or to rebuild:
docker-compose up --build -d

This command starts the following components:

Contribute

Pull Requests are welcome. For significant changes, please open an issue first to discuss what you would like to change. Make sure to update tests as appropriate. Please read our Contribution Guidelines for more information on how to get involved.

License

Exchange platform is licensed under a MIT license.

About

Currency exchange platform in market exchange model where user may submit their currency exchange offers.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 47.3%
  • TypeScript 41.9%
  • FreeMarker 5.5%
  • HTML 3.6%
  • SCSS 0.6%
  • Mustache 0.5%
  • Other 0.6%