Skip to main content

Welcome to Asset360 v3 Documentation

This is the internal documentation for Asset360 v3, a comprehensive fund management platform built with modern web technologies and Domain-Driven Design principles.

What is Asset360?

Asset360 is a fund management platform designed to handle:

  • Fund Management: Complete lifecycle management of investment funds
  • Investor Relations: Registration, unit purchases, redemptions, and holdings tracking
  • Portfolio Management: Equity and bond portfolio tracking with market data integration
  • Accounting: Double-entry accounting system with automated journal entries
  • EOD Processing: End-of-day calculations including NAV, interest accrual, and portfolio valuation
  • Fixed Deposits: FDR management with interest calculations
  • Bank Account Management: Multi-account management with interest tracking

Technology Stack

  • Frontend: React 19.2, Vite 7, TanStack Router 1.133, TanStack Query 5.90, shadcn/ui component library
  • Backend: Cloudflare Workers with Hono 4 and tRPC v11.6
  • Data: Cloudflare D1 (SQLite) accessed through Drizzle ORM 0.44
  • Supporting Services: Market data adapters for DSE equities & bonds, Google OAuth2 integration
  • Package Manager: pnpm 10
  • Testing: Vitest 3 with Testing Library

Architecture Highlights

Asset360 v3 follows Domain-Driven Design (DDD) principles:

  • Each domain is isolated in its own folder with a barrel file (index.ts) public API
  • Service → Repository → Database pattern
  • Service factory for dependency injection
  • Two-layer architecture: Domain Services + Application Services (Coordinators)
  • ESLint-enforced domain boundaries through barrel imports

Getting Started

Quick Navigation

For Developers

For Understanding the System

For Integration

Last Updated: Based on commit ee3a9e55 (Merge pull request #101 from saadmniamatullah/dependabot/npm_and_yarn/non-major-4a69fc7260)