Skip to content

The Stock Portfolio API provides functionalities to manage and assess stock portfolios

Notifications You must be signed in to change notification settings

sathishsuresh04/PortfolioManagement

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Stock Portfolio API

Implemented features:

  • Developed endpoints for fetching specific portfolios, computing total value of stocks in a chosen currency, and soft-deleting portfolios.
  • Integrated CurrencyLayer API for applicable exchange rates, set to refresh every 24 hours.

Refactoring & Testing:

  • Code refactoring executed to improve both maintenance and readability.
  • Created unit tests to confirm feature functionality, focusing on creating a concise and meaningful test suite.

Database:

  • MongoDB was kept as the primary database for data persistence, leveraging its document-oriented format and scalability advantages.

Execution:

  • To run the solution, update the following in your configuration file(appsettings.json): "MongoDbOptions": {"ConnectionString": ""} "ExchangeRateApiOptions": { "Token": ""}

Tech Stack:

  • Vertical Slice Architecture
  • Domain-Driven Design (DDD)
  • Repository Pattern
  • Command Query Responsibility Segregation (CQRS) Pattern with MediatR library
  • Minimal APIs
  • Fluent Validation with a Validation Pipeline Behaviour on top of MediatR
  • Azure Cosmos MongoDB
  • Structured Logging with Serilog
  • Unit Testing with NSubstitute
  • .Net 8
  • Centralized package management and build managment

Third-Party Libraries:

  • Ardalis.GuardClauses
  • Mapster
  • MediatR
  • FluentValidation.AspNetCore
  • Scrutor
  • Serilog
  • Humanizer
  • Bogus
  • EasyCaching.Core

Note: All changes have adhered to best coding practices, and third-party open source libraries were utilized for task efficiency.

About

The Stock Portfolio API provides functionalities to manage and assess stock portfolios

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages