CoolFace
Apppublic

Pravat-123/Equity_Research

sourceHugging Faceupdated 1mo agoView on Hugging Face
0likes
App README

Equity research platform

Fundamental research on any NIFTY 500 company, plus market scan, sector insight, index and analyst coverage, earnings, and news.

Everything is computed from daily closing prices and published filings, and every scale used is a published one, named to its source. Nothing here is a recommendation — the platform reports what happened and where the numbers came from, and leaves the decision to the reader.

Running locally

bash
pip install -r requirements.txt
streamlit run dashboard.py

Sign-in is skipped when no identity provider is configured, so local development needs no setup.

Deploying

The free CPU tier on Hugging Face Spaces has enough memory for the full stack, including FinBERT. Streamlit Community Cloud's ~1 GB does not — torch, transformers and keras exceed it before any data is loaded.

First cold start is slow. The cache is empty and the app downloads two years of daily closes for 500 companies. Expect a few minutes; it is fast afterwards until the container is recycled.

Sign-in

Set these in the host's secrets UI — never in the repository:

toml
[auth]
redirect_uri = "https://<your-space-url>/oauth2callback"
cookie_secret = "<a long random string>"

[auth.google]
client_id     = "<from Google Cloud console>"
client_secret = "<from Google Cloud console>"
server_metadata_url = "https://accounts.google.com/.well-known/openid-configuration"

# Optional. Without this, any account that can sign in gets in.
[access]
emails  = ["you@example.com"]
domains = ["iimcal.ac.in"]

Google credentials come from Google Cloud Console → APIs & Services → Credentials → OAuth client ID (type: Web application), with the redirect_uri above registered as an authorised redirect URI.

A note on the data

Prices and analyst estimates come from Yahoo Finance; financial statements are scraped from Screener.in; news comes from public RSS feeds. Both Yahoo and Screener restrict redistribution of their data. Personal research use is ordinary; running this as a public service is a different act, and the access list above is the mechanism for keeping it to named people.