Skip to content

pratyush103/Paper-Trading

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Paper-Trading

This repository contains the microservices middleware built using .NET Web API for the OnPaper paper trading application. It includes two primary microservices:

  1. User Management and Authentication Service
  2. Trade Management Service

Table of Contents

Overview

The OnPaper application simulates a trading environment where users can conduct paper trades without any real financial risk on Indian Stock Exchanges like BSE and NSE. This repository hosts the back-end microservices which are responsible for handling user authentication, user management, and trade operations.

Microservices

User Management and Authentication Service

This service is responsible for:

  • User registration and authentication.
  • Managing user profiles.
  • Handling user sessions and authorization.

Trade Management Service

This service handles:

  • Recording trades conducted by users.
  • Managing trade data and history.
  • Providing trade-related insights and analytics.

Technologies Used

  • C#: The primary programming language for microservice development.
  • .NET Web API: Framework used to build the microservices.
  • Docker: For containerizing the microservices.
  • Azure: For deploying the microservice container in a Container App.
  • GitHub Actions: Establishing CI/CD pipeline for Continuous deployment of the microservices on Azure Container Apps

Getting Started

Prerequisites

Ensure that you have the following installed:

Installation

  1. Clone the repository:
    git clone https://github.com/siddhantsnaik/Paper-Trading.git
    cd Paper-Trading

Running the Services

  1. Navigate to the directory of the microservice you want to run:

    cd UserManagementService
    # or
    cd TradeManagementService
  2. Build and run the microservice using the .NET CLI:

    dotnet build
    dotnet run
  3. Alternatively, you can use Docker to run the services:

    docker build -t user-management-service .
    docker run -p 5000:80 user-management-service

API Endpoints

User Management and Authentication Service

  • POST /api/register: Register a new user.
  • POST /api/login: Authenticate a user and start a session.
  • GET /api/users/{id}: Get user profile details.
  • PUT /api/users/{id}: Update user profile.

Trade Management Service

  • POST /api/trades: Record a new trade.
  • GET /api/trades/{userId}: Get trade history for a user.
  • GET /api/trades/{tradeId}: Get details of a specific trade.
  • DELETE /api/trades/{tradeId}: Delete a trade.

Contributing

We welcome contributions! Please read our contributing guidelines to get started.

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 96.3%
  • Dockerfile 3.7%