A modern, secure financial portfolio management application built with React and Supabase. Track your investments, manage assets, and monitor your financial growth with beautiful analytics and insights.
- 🔐 Secure Authentication - Email/password with strong validation
- 📊 Dashboard Analytics - Real-time portfolio overview with interactive charts
- 💼 Asset Management - Track liquid assets and investments by category
- 📈 Growth Tracking - Monitor monthly and total portfolio growth
- 📋 Statistics - Detailed analytics with category breakdowns
- 🔄 Period Comparison - Compare performance across different time periods
- 🌙 Dark/Light Mode - Beautiful glass morphism design with theme switching
- 📱 Responsive Design - Works seamlessly on desktop and mobile
- Node.js 18+ and npm
- Supabase account (for backend)
# Clone the repository
git clone https://github.com/your-username/assets-manager.git
# Navigate to project directory
cd assets-manager
# Install dependencies
npm install
# Start development server
npm run dev- Create a Supabase project at supabase.com
- Copy
.env.exampleto.envand fill in your Supabase credentials:cp .env.example .env
- Update the
.envfile with your Supabase URL and anon key - Configure your database schema
- React 18 - Modern React with hooks and context
- TypeScript - Type-safe development
- Vite - Fast build tool and dev server
- Tailwind CSS - Utility-first CSS framework
- shadcn/ui - Beautiful, accessible UI components
- Framer Motion - Smooth animations and transitions
- Recharts - Interactive data visualization
- React Router - Client-side routing
- Supabase - PostgreSQL database with real-time features
- Supabase Auth - User authentication and authorization
- Edge Functions - Serverless API endpoints
- Row Level Security - Database-level security
- ESLint - Code linting and quality
- Prettier - Code formatting
- TypeScript - Static type checking
src/
├── components/ # Reusable UI components
│ ├── ui/ # shadcn/ui components
│ ├── AppSidebar.tsx # Navigation sidebar
│ ├── Footer.tsx # Application footer
│ └── ThemeProvider.tsx # Theme management
├── pages/ # Main application pages
│ ├── Dashboard.tsx # Portfolio overview
│ ├── AddParticulars.tsx # Add new assets
│ ├── Statistics.tsx # Analytics and insights
│ ├── Comparison.tsx # Period comparisons
│ ├── Settings.tsx # User settings
│ └── Auth.tsx # Authentication
├── hooks/ # Custom React hooks
├── services/ # API service layer
├── integrations/ # Third-party integrations
└── lib/ # Utility functions
supabase/
├── functions/ # Edge Functions (API)
├── migrations/ # Database schema
└── config.toml # Supabase configuration
- Glass Morphism - Modern translucent card designs
- Gradient Themes - Beautiful green-based color palette
- Responsive Layout - Mobile-first design approach
- Smooth Animations - Framer Motion powered interactions
- Accessibility - WCAG compliant components
- Row Level Security (RLS) - Database-level data isolation
- JWT Authentication - Secure token-based auth
- Input Validation - Client and server-side validation
- HTTPS Only - Secure data transmission
npm run dev # Start development server
npm run build # Build for production
npm run preview # Preview production build
npm run lint # Run ESLint
npm run format # Format code with Prettier
npm run format:check # Check code formattingThe application can be deployed on various platforms:
- Vercel - Recommended for React apps
- Netlify - Great for static sites
- Supabase Hosting - Integrated with backend
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
ASH - Ananda S Holla
- LinkedIn: @ananda-s-holla
- Twitter: @AnandSHolla8
⭐ Star this repository if you found it helpful!