Stock-Tok is a full-stack web application that provides AI-enhanced stock analysis. Users can enter a stock symbol and receive comprehensive analysis including raw stock quote data from Alpha Vantage and AI-generated contextual information about the stock using Google's Gemini AI.
- Stock Quote Data: Fetches real-time stock information from Alpha Vantage API
- AI Contextual Analysis: Uses Google's Gemini AI to analyze various factors about stocks
- User-Friendly Interface: Simple Angular frontend for entering stock symbols and viewing analysis
- Comprehensive Results: Displays both raw data and AI-generated insights in an easy-to-read format
- Java 17 or higher
- Node.js 18.x and npm
- Maven 3.9+
- Google Cloud account with Gemini API access
- Alpha Vantage API key
-
Clone the repository:
git clone https://github.com/AnthonyKot/stock-tok.git cd stock-tok -
Configure API keys in
src/main/resources/application.properties:alpha.vantage.api.key=YOUR_ALPHA_VANTAGE_API_KEY gemini.api.key=YOUR_GEMINI_API_KEY
- Build and run the Spring Boot backend:
The backend will start on http://localhost:8080
mvn spring-boot:run
-
Navigate to the Angular project directory:
cd stock-ui -
Install dependencies:
npm install
-
Start the Angular development server:
ng serve
The frontend will be available at http://localhost:4200
The project includes a multi-stage Dockerfile that builds both the frontend and backend:
docker build -t stock-tok .
docker run -p 8080:8080 stock-tokAccess the application at http://localhost:8080
- Spring Boot Backend: Handles API requests, coordinates data retrieval and AI analysis
- Angular Frontend: Provides user interface for stock analysis
- External Services:
- Google Gemini AI for contextual stock analysis
- Alpha Vantage API for stock quote data
GET /api/analyze/{symbol}: Analyzes the specified stock symbol and returns combined data
This project is licensed under the MIT License - see the LICENSE file for details.