Launcher

Type to filter results. Use arrow keys to navigate, Enter to select.

Preferences

You've reached the end of the results

Project Overview

Nexo is a cryptocurrency platform designed around a multi-framework microservices architecture. The system uses Spring Boot, Micronaut, and Quarkus across different services, allowing each framework to be used where its capabilities best fit the service requirements.

The platform provides a unified gateway through which users can authenticate, manage cryptocurrency wallets, track market prices, and interact with platform services. Its architecture separates responsibilities across independently deployable services while maintaining centralized routing, authentication, and service discovery.

Technical Challenges

One of the main challenges was designing communication and coordination between services built with different Java frameworks.

Nexo uses Spring Boot for the API Gateway, discovery server, and user service, Micronaut for the wallet service, and Quarkus for the PriceFeed service. This polyglot approach required consistent service communication, authentication, and configuration across the different frameworks.

The API Gateway acts as the central entry point for client requests and provides routing, JWT validation, load balancing, rate limiting, and circuit breaking. A dedicated discovery server handles service registration and dynamic discovery, allowing services to communicate without relying on fixed service locations.

Security was another important part of the system. The User Service handles registration and authentication, integrates with Google OAuth 2.0, issues JWT tokens, and provides role-based access control. Shared JWT validation is then used across services for cross-service authentication.

Nexo cryptocurrency platform architecture Nexo microservices platform interface Nexo cryptocurrency wallet and service interface Nexo cryptocurrency price tracking interface

Key Highlights

Nexo brings together several backend engineering concepts in a single distributed platform:

  • Polyglot microservices architecture using Spring Boot, Micronaut, and Quarkus
  • Spring Cloud API Gateway as the central entry point for client requests
  • Service discovery and load balancing
  • JWT-based authentication and authorization
  • Google OAuth 2.0 integration
  • Role-based access control
  • Rate limiting and circuit breaking for API resilience
  • Cryptocurrency wallet management and transaction history
  • Real-time cryptocurrency price data through CoinMarketCap API
  • In-memory caching for price data and reduced external API calls
  • Swagger UI for API documentation
  • Quarkus native compilation for the PriceFeed service

A multi-framework microservices platform built to explore distributed architecture, service resilience, security, and performance across the Java ecosystem.

Nexo

Nexo demonstrates how different Java frameworks can work together within a distributed system while maintaining consistent security, service communication, and operational concerns. The project uses Docker and Docker Compose for its development environment and requires a CoinMarketCap API key for market data integration.