PredictHub is a sophisticated stock price prediction platform that combines machine learning with real-time market data analysis. The application leverages LSTM (Long Short-Term Memory) neural networks to forecast stock prices based on historical data. 🤖
- 🔮 Stock Price Predictions: Utilizes deep learning LSTM models to generate price forecasts
- 📊 Real-Time Market Data: Integrates with Yahoo Finance API to fetch current stock information
- 📈 Interactive Charts: Visualizes stock data through interactive candlestick charts
- 🔐 User Authentication: Secure login system with GitHub OAuth integration
- 📱 Responsive Design: Modern UI built with React and Tailwind CSS
Frontend:
- ⚛️ React.js with TypeScript
- 🎨 Tailwind CSS for styling
- 🎯 Shadcn UI components
- 📊 Chart.js for data visualization
Backend:
- 🐍 Flask Python server
- 🗄️ MongoDB database
- 🧠 LSTM neural networks for predictions
- 📡 Yahoo Finance API integration
The application follows a client-server architecture:
- 🖥️ Frontend makes API calls to fetch predictions and stock data
- ⚙️ Backend processes requests, runs ML models, and manages authentication
- ⚡ Real-time data is fetched from Yahoo Finance
- 🤖 Predictions are generated using pre-trained LSTM models
- Navigate to the server directory:
cd server - Create a virtual environment:
python -m venv venv
- Activate the virtual environment:
- On Windows:
venv\Scripts\activate
- On macOS/Linux:
source venv/bin/activate
- On Windows:
- Install the required packages:
pip install -r requirements.txt
- Ensure you have MongoDB running and set the
MONGODB_URLand to use GithubOAuth you need Github_ClientId and Github_ClientSecret from the Github account in your.envfile:MONGODB_URI=YOUR_MONGODB_URI GITHUB_CLIENT_ID=YOUR_GITHUB_CLIENT_ID GITHUB_CLIENT_SECRET=YOUR_GITHUB_CLIENT_SECRET
Follow this documentation to get the Github_ClientId and Github_ClientSecret: Github OAuth
6. Start the server:
sh flask run
- Navigate to the client directory:
cd client - Install the dependencies:
npm install
- Start the development server:
npm run dev
predicthub/
├── client/
│ ├── public/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── styles/
│ │ └── utils/
│ ├── package.json
│ └── vite.config.ts
│
├── server/
| ├── venv/
│ ├── api/
│ ├── models/
│ ├── services/
│ ├── utils/
│ ├── requirements.txt
│ └── app.py
│
├── LICENSE
└── README.md