How ravic6630/project-finance works
Sampada is a multi-user personal-wealth tracker: users bring in balances and transactions, then view consolidated net worth, plans, returns and alerts. The main path is the web app calling the API, which exposes domain routes backed by server services and persistent data. Its documented import, family, legacy, billing and reporting features are retained as separate branches. API wiring and the frontend-to-route details are only partly sampled, so uncertain internal calls are not drawn; feature coverage also reflects the README.
Main entry points: index.js Express API · App.jsx Web application · api.js API client · auth.js Authentication
Components 30
Web experience
- Web application
web/src/App.jsx - Dashboard
web/src/pages/Dashboard.jsx - Investments
web/src/pages/Investments.jsx - Finance pages
web/src/pages/Transactions.jsx - Goals hub
web/src/pages/Goals.jsx - API client
web/src/lib/api.js
API and identity
- Express API
server/src/index.js - Authentication
server/src/routes/auth.js - Session security
server/src/auth.js - Application data
server/src/db.js
Wealth tracking
- Market routes
server/src/routes/prices.js - Prices and FX
server/src/services/prices.js - Portfolio and assets
server/src/routes/holdings.js - Imports
server/src/routes/import.js - Broker connection
server/src/routes/broker.js - Cash and transactions
server/src/routes/transactions.js
Planning and reporting
- Net worth summaries
server/src/services/networth.js - Goal planning
server/src/services/goalPlan.js - Financial insights
server/src/services/insights/fi.js - Returns and tax
server/src/services/returns.js
Account services
- Premium billing
server/src/routes/billing.js - Family portfolios
server/src/routes/family.js - Legacy access
server/src/routes/legacy.js - Alerts and email
server/src/services/alerts.js - Scheduled delivery
server/src/routes/cron.js
Other components
- Wealth user
- Market data providers
- Broker services
- Payment gateways
- Email provider
Connections 24
- Wealth user → Web application: uses
- Web application → API client: requests
- API client → Express API: calls API
- Express API → Authentication: mounts routes
- Express API → Market routes: mounts routes
- Express API → Portfolio and assets: mounts routes
- Express API → Imports: mounts routes
- Express API → Broker connection: mounts routes
- Express API → Cash and transactions: mounts routes
- Express API → Premium billing: mounts routes
- Express API → Family portfolios: mounts routes
- Express API → Legacy access: mounts routes
- Express API → Alerts and email: mounts routes
- Express API → Scheduled delivery: mounts routes
- Authentication → Session security: uses sessions
- Express API → Prices and FX: warms list
- Prices and FX → Market data providers: fetches quotes
- Broker connection → Broker services: connects
- Premium billing → Payment gateways: processes payments
- Scheduled delivery → Email provider: sends mail
- Web application → Dashboard: renders
- Web application → Investments: renders
- Web application → Finance pages: renders
- Web application → Goals hub: renders