Submission for the Hack-Nation Global AI Hackathon (Aug 2025)
FinSight.ai is a full-stack, AI-powered application designed to solve the problem of information overload in financial analysis. It transforms dense, impenetrable SEC 10-K filings and real-time market news into a clear, actionable, and interactive investment briefing.
Our system allows a user to enter any major US stock ticker and receive a comprehensive, AI-generated report in seconds. This report includes a strategic executive summary, a data-driven Bull vs. Bear case, a snapshot of key financial metrics, and a summary of critical risks admitted to by the company itself.
The core innovation is a stateful, conversational RAG (Retrieval-Augmented Generation) pipeline. After viewing the report, users can engage in an interactive Q&A to interrogate the source documents directly, with every answer grounded in verifiable evidence, making our tool not just intelligent, but trustworthy.
- Backend: Python, FastAPI, LangGraph (for agent orchestration)
- Frontend: Next.js, React, Tailwind CSS
- AI / ML Models:
- Synthesis: Gemini 1.5 Pro
- Chat & Routing: Gemini 1.5 Flash
- Embeddings: Google
embedding-001
- Vector Store: FAISS (in-memory)
- Data APIs: SEC-API, Tavily Search, yfinance
This is a full-stack application with a Python backend and a Next.js frontend. You will need two terminals running simultaneously from this root project folder.
- Python 3.10+
- Node.js and npm
- API keys (see
.env.example)
-
Set up the environment:
# Create and activate a virtual environment (recommended) python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate # Install Python dependencies pip install -r requirements.txt
-
Add API Keys:
- Create a file named
.envin the root directory. - Copy the contents of
.env.exampleinto it and fill in your actual API keys.
- Create a file named
-
Run the server:
uvicorn main:api_app --reload
The backend will be running at
http://127.0.0.1:8000.
-
Set up the environment:
# Install Node.js dependencies npm install --legacy-peer-deps -
Add API URL:
- Create a file named
.env.localin the root directory. - Add the following line to it:
NEXT_PUBLIC_API_BASE_URL=http://127.0.0.1:8000
- Create a file named
-
Run the server:
npm run dev
The frontend will be running at
http://localhost:3000. -
Open
http://localhost:3000in your browser to use the application.