Skip to content

Commit 6b38763

Browse files
committed
Add GitHub Pages documentation with Cayman theme
2 parents 2402534 + f490c10 commit 6b38763

File tree

1 file changed

+51
-15
lines changed

1 file changed

+51
-15
lines changed

README.md

Lines changed: 51 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,16 @@
99
[![MySQL](https://img.shields.io/badge/MySQL-4479A1?style=for-the-badge&logo=mysql&logoColor=white)](https://www.mysql.com/)
1010
[![TailwindCSS](https://img.shields.io/badge/Tailwind_CSS-38B2AC?style=for-the-badge&logo=tailwind-css&logoColor=white)](https://tailwindcss.com/)
1111
[![Node.js](https://img.shields.io/badge/Node.js-339933?style=for-the-badge&logo=nodedotjs&logoColor=white)](https://nodejs.org/)
12+
[![Finnhub](https://img.shields.io/badge/Finnhub-1B1B1B?style=for-the-badge&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMyA2aDJsMTUgMk0xNyA2djE0TTcgMTZoMTAiLz48L3N2Zz4=)](https://finnhub.io/)
1213

1314
<p align="center">
1415
<strong>A modern, responsive stock portfolio tracker built with React and Node.js</strong>
1516
</p>
1617

1718
[Live Demo](https://portfolio-tracker-hackstyx.vercel.app)[API Documentation](#-api-endpoints)[Report Bug](https://github.com/HackStyx/portfolio-tracker/issues)
1819

20+
> **Note**: Due to the free tier limitations of Render, the initial load of the demo might take 30-60 seconds. If no data appears, please refresh the page. If issues persist, click the logout button to reset the application state. The backend spins down after 15 minutes of inactivity and needs time to restart.
21+
1922
![Portfolio Dashboard](https://github.com/user-attachments/assets/c18f253c-2ac2-4df9-8025-c91858b74237)
2023

2124
</div>
@@ -26,8 +29,10 @@
2629
- 👀 **Watchlist** - Monitor potential investments
2730
- 🌓 **Dark/Light Mode** - Easy on the eyes, day and night
2831
- 📱 **Fully Responsive** - Perfect on desktop and mobile
29-
- 🔄 **Live Updates** - Stock prices update automatically
30-
- 📈 **Price History** - Visualize stock performance
32+
- 🔄 **Live Updates** - Real-time stock prices via Finnhub API
33+
- 📈 **Price History** - Visualize stock performance with historical data
34+
- 💹 **Market Data** - Real-time quotes and market status tracking
35+
- 🎯 **Price Targets** - Set and monitor stock price targets
3136

3237
## 🚀 Quick Start
3338

@@ -36,6 +41,7 @@
3641
- Node.js 14+
3742
- npm or yarn
3843
- MySQL
44+
- Finnhub API Key (get one at [finnhub.io](https://finnhub.io/))
3945

4046
### Frontend Setup
4147

@@ -69,6 +75,7 @@ npm install
6975
DATABASE_URL=mysql://user:password@localhost:3306/portfolio_tracker
7076
PORT=5000
7177
NODE_ENV=development
78+
FINNHUB_API_KEY=your_finnhub_api_key
7279
```
7380

7481
3. Run migrations and start:
@@ -104,25 +111,54 @@ DELETE /api/watchlist/:id # Remove from watchlist
104111

105112
## ⚡️ Tech Stack
106113

107-
### Frontend
108-
- React + Vite
109-
- TailwindCSS
110-
- Framer Motion
111-
- Tremor Charts
112-
- Axios
113-
114-
### Backend
115-
- Node.js
116-
- Express
117-
- MySQL
118-
- Knex.js
114+
### 🎨 Frontend
115+
- **Framework**: [React](https://reactjs.org/) - A JavaScript library for building user interfaces
116+
- **Build Tool**: [Vite](https://vitejs.dev/) - Next generation frontend tooling
117+
- **Styling**:
118+
- [TailwindCSS](https://tailwindcss.com/) - Utility-first CSS framework
119+
- [Tremor](https://www.tremor.so/) - React library for dashboards and charts
120+
- [Framer Motion](https://www.framer.com/motion/) - Animation library
121+
- **State Management**: React Context API
122+
- **HTTP Client**: [Axios](https://axios-http.com/) - Promise based HTTP client
123+
124+
### 🛠 Backend
125+
- **Runtime**: [Node.js](https://nodejs.org/) - JavaScript runtime
126+
- **Framework**: [Express](https://expressjs.com/) - Web framework for Node.js
127+
- **Database**: [MySQL](https://www.mysql.com/) - Open-source relational database
128+
- **ORM**: [Sequelize](https://sequelize.org/) - Modern TypeScript and Node.js ORM
129+
- **Market Data**: [Finnhub](https://finnhub.io/) - Real-time RESTful APIs for stocks
130+
- **API Documentation**: OpenAPI/Swagger
131+
132+
### 🚀 DevOps & Infrastructure
133+
- **Frontend Hosting**: [Vercel](https://vercel.com/)
134+
- Zero-config deployments
135+
- Automatic HTTPS
136+
- Edge Network for optimal performance
137+
- **Backend Hosting**: [Render](https://render.com/)
138+
- Containerized deployment
139+
- Automatic scaling
140+
- Built-in monitoring
141+
- **Database Hosting**: [Railway](https://railway.app/)
142+
- Managed MySQL database
143+
- Automated backups
144+
- High availability
145+
146+
### 📦 Additional Tools
147+
- **Version Control**: Git & GitHub
148+
- **Code Quality**: ESLint & Prettier
149+
- **API Testing**: Postman
150+
- **Environment Variables**: dotenv
151+
- **Security**: CORS, Helmet
152+
- **Real-time Data**: WebSocket (planned)
119153

120154
## ⚠️ Limitations
121155

122-
- Uses simulated stock data
156+
- Uses simulated stock data when Finnhub API rate limit is reached
123157
- Single-user environment
124158
- Price updates every minute
125159
- Best viewed in modern browsers
160+
- Backend spins down after 15 minutes of inactivity and needs time to restart
161+
- Limited to 60 API calls per minute (Finnhub free tier)
126162

127163
## 📄 License
128164

0 commit comments

Comments
 (0)