Cointainr
Cointainr
A modern, self-hosted portfolio tracking application for comprehensive financial asset management with real-time price monitoring and advanced analytics.
Problem Statement
Managing a diverse investment portfolio across different brokers, asset types, and currencies is challenging. Existing solutions often lack privacy, require sharing sensitive financial data with third parties, or don’t provide the flexibility needed for comprehensive portfolio analysis. The goal was to create a privacy-first, self-hosted solution that gives users complete control over their financial data.
My Solution
I developed a full-stack application consisting of several integrated components:
- FastAPI Backend: A robust Python backend built with FastAPI providing a comprehensive REST API for asset management, real-time price fetching, and portfolio calculations with intelligent caching strategies.
- Price Management System: An advanced service that fetches real-time prices from multiple APIs (Finnhub, CoinGecko) with fallback mechanisms, rate limiting, and smart caching to ensure reliable data availability.
- SvelteKit Frontend: A modern, responsive single-page application built with SvelteKit and TypeScript, featuring interactive charts, real-time portfolio analytics, and a clean, intuitive interface following modern design principles.
- Multi-Currency Support: Automatic currency conversion with cached exchange rates, supporting EUR, USD, GBP, CHF and other major currencies for global portfolio management.
- Analytics Dashboard: Advanced portfolio analytics including asset distribution charts, performance tracking, risk assessment, and efficiency metrics to provide comprehensive investment insights.
- Self-Hosted Deployment: The entire application is containerized with Docker and can be easily deployed via Docker Compose with automated CI/CD pipelines and GitHub Container Registry integration.
Key Features
- Privacy-First: Complete data ownership with no third-party data sharing
- Multi-Asset Support: Stocks, ETFs, cryptocurrencies, and cash positions
- Real-Time Updates: Live price feeds with intelligent caching
- Advanced Analytics: Portfolio distribution, performance tracking, and risk metrics
- Responsive Design: Mobile-friendly interface with dark theme
This post is licensed under CC BY 4.0 by the author.
