A modern, responsive web application for managing investment portfolios and tracking stock market data. Built with React, Supabase, and Tailwind CSS.
- Modern gradient hero section with welcome message
- Portfolio overview with key statistics
- Quick access to portfolio management
- Real-time data visualization
- Responsive grid layout
- Create and manage multiple portfolios
- Add stocks with purchase details (date, quantity, price)
- View portfolio performance metrics
- Track invested value and market value
- Interactive portfolio selection sidebar
- Browse comprehensive stock database
- Advanced search functionality by symbol or company name
- Detailed stock information (OHLC data, volume)
- Modern card-based layout with hover effects
- Pagination for easy navigation
- Google OAuth integration via Supabase
- Secure user session management
- Modern login interface with animated background
- Beautiful blue gradient theme
- Responsive design for all devices
- Smooth animations and transitions
- Intuitive navigation with icons
- Professional color scheme
- Node.js (v14 or higher)
- npm or yarn
- Supabase account and project
-
Clone the repository
git clone https://github.com/Rishirxt/StocksPortfolio.git cd StocksPortfolio -
Install dependencies
cd frontend npm install -
Environment Setup
Create a
.env.localfile in thefrontenddirectory:REACT_APP_SUPABASE_URL=your_supabase_project_url REACT_APP_SUPABASE_ANON_KEY=your_supabase_anon_key
-
Start the development server
npm start
The application will open at
http://localhost:3000
StocksPortfolio/
├── frontend/
│ ├── public/
│ ├── src/
│ │ ├── components/
│ │ │ ├── Navbar.jsx # Navigation component
│ │ │ └── ui/ # Reusable UI components
│ │ ├── pages/
│ │ │ ├── Home.jsx # Dashboard page
│ │ │ ├── Portfolio.jsx # Portfolio management
│ │ │ ├── BrowseStocks.jsx # Stock browser
│ │ │ └── Login.jsx # Authentication
│ │ ├── supabaseClient.js # Supabase configuration
│ │ └── index.css # Global styles
│ ├── package.json
│ └── tailwind.config.js
└── README.md
- React 18.2.0 - Modern UI library
- React Router DOM - Client-side routing
- Tailwind CSS - Utility-first CSS framework
- Lucide React - Beautiful icons
- Radix UI - Accessible component primitives
- Supabase - Backend-as-a-Service
- PostgreSQL - Database
- Row Level Security - Data protection
- Create React App - Development environment
- PostCSS - CSS processing
- Autoprefixer - CSS vendor prefixes
npm run build- Connect your GitHub repository
- Set environment variables
- Deploy automatically on push to main branch
REACT_APP_SUPABASE_URL=your_production_supabase_url
REACT_APP_SUPABASE_ANON_KEY=your_production_supabase_anon_key- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some 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.
Rishi - GitHub
- Supabase for backend services
- Tailwind CSS for styling
- React for the UI framework
- Lucide for beautiful icons
If you have any questions or need help, please:
- Open an issue on GitHub
- Contact the author
- Check the documentation
⭐ Star this repository if you found it helpful!