Skip to main content

Project Leader Prompts — Introduction

This section archives prompts, implementation decisions, and feature requests initiated by the project leader. Each entry documents what was requested, what was built, and why.


Completed Tasks

Requested:

Add a "View Documentation" link/button on the frontend Home page (Home.jsx) that opens the Docusaurus documentation site.

Implementation:

The existing Home.jsx already had a "View Documentation" <button> placeholder with no action. This was wired up as an <a> tag pointing to the Docusaurus URL:

<a
href={import.meta.env.VITE_DOCS_URL || 'http://localhost:3000'}
target="_blank"
rel="noopener noreferrer"
className="px-8 py-4 bg-trading-panel border border-trading-border
text-white rounded-lg font-semibold hover:bg-trading-hover
transition-all w-full sm:w-auto text-center"
>
View Documentation ↗
</a>

File changed: frontend/src/pages/Home.jsx

URL configuration:

EnvironmentURL
Local devhttp://localhost:3000 (default fallback)
CustomSet VITE_DOCS_URL=https://docs.yourdomain.com in frontend/.env

Behaviour:

  • Opens Docusaurus in a new tab (target="_blank")
  • arrow icon signals external link to users
  • URL is configurable via VITE_DOCS_URL environment variable

Add new project leader prompts and decisions below this line.

Documentation for NSEEOD

let us make Documentation for NSEEOD... Under Docs/developer create a Folder named Packages (our custom Built packages) Under that folder create a sub folder named "NSEEOD" So use that NSEEOD for Documentation for backend/nseeod

  1. go through all files under this folder and list function (Use merimaid diagrams for better visual )
  2. Pls documents helper files also
  3. Identify any junk functions or files (List them in separate .md file)
  4. Try to get table information of Postgres which frequently used(we will document further later)
  5. Once The documentation done I want to commit this in Branch Named docs/nseeod
  6. Pls don't commit your self Prompt me to to that...(I will learn from you :) )
  7. give me Detailed instruction (step by step guide ) to Create PR (pull request)
  8. How to accept this PR
  9. How to merge with it with main (give me details)

Scratch folder

Requested:

  1. Create a scratch/ folder under backend/
  2. Under that, create a Jupyter notebook that shows .env contents using config.py
  3. this Scratch folder should ignored in git

Implementation:

Created backend/scratch/env_config.ipynb — a four-section notebook:

SectionWhat it shows
1 · Raw .envEvery KEY=VALUE line from backend/.env; password-like values masked with
2 · Resolved Settingspandas DataFrame of all Settings attributes with the active LOCAL_* / VPS_* source noted
3 · DB Connection URLsBoth async (asyncpg) and sync (psycopg2) SQLAlchemy URLs, masked
4 · Switching EnvironmentsReference table showing which .env key each setting reads from in each env

How to run:

# from project root — activate the backend venv first
cd backend
venv/Scripts/activate # Windows
# or
source venv/bin/activate # Linux / Mac

pip install jupyter # one-time, if not already installed
jupyter notebook scratch/env_config.ipynb

Or open backend/scratch/env_config.ipynb directly in VS Code (Python + Jupyter extensions).

Files created:

  • backend/scratch/env_config.ipynb

Documentation for nseieod

Requested:

Create a NSEIEOD subfolder under docs/developer/Packages/, document all files in backend/nseieod/, include Mermaid diagrams, document helper files, identify junk/incomplete items, then commit to branch docs/nseieod and raise a PR.

Implementation:

Created docs/docs/developer/packages/nseieod/ with four documentation pages:

FileContent
overview.mdArchitecture overview — 3-stage pipeline diagram, Parquet store layout, GDFL version table, DB tables reference, quick-start
nseieod-pipeline.mdFull reference for nseIEOD.py — helpers (IsDate, get_last_thursday, save_gdfl_index_config), IEod class (ingestion + packing), Con_Price_Getter class (price retrieval) — all with Mermaid flowcharts
nseieod-sdetails.mdFull reference for SDetails.pyIEOD, EOD, ScriptDetails, DataDetails dataclasses — with class diagram and verification flow diagrams
nseieod-main.mdReference for main.py verification entry point — verify_scripts, process_a_letter_folder, process_a_script with call-flow diagram and usage scenarios

Also updated docs/sidebars.ts to add the NSEIEOD section under Packages.

Junk / Incomplete items identified:

ItemFileIssue
update_index_file()nseIEOD.pyOnly prints ticker list — insert logic not implemented
update_eq_file()nseIEOD.pyStub (pass) — equity intraday ingestion missing
__process_future_file()SDetails.pyStub (pass)
__process_options_file()SDetails.pyStub (pass)
EOD.calculate()SDetails.pyStub (pass)
Hardcoded mDatapathnseIEOD.py (bottom)Windows local path at module level — runs on import
Hardcoded mDatapathmain.py (bottom)verify_scripts(...) runs on import/exec with fixed 2007 date

Branch & PR workflow (same as NSEEOD — follow these steps):

# 1. Create branch
git checkout -b docs/nseieod

# 2. Stage the new files
git add docs/docs/developer/packages/nseieod/
git add docs/sidebars.ts
git add docs/docs/prompts/byProjectLeader/Introduction.md

# 3. Commit
git commit -m "docs: add NSEIEOD package documentation"

# 4. Push
git push -u origin docs/nseieod

Then on GitHub: New Pull Request → base: main ← compare: docs/nseieodCreate PRMerge → on VPS: git pull.

move ut_Classes.py

Pls move ut_Classes.py from nseeod to nseieod as it is used mainly in intraday... Pls redocument junk-analysis.md in docs/packages/nseeod also update ieod documantation

Liquid scripts

I want to maintain Liquid Scripts as of now below scripts from

SELECT masid, mname FROM scr_master WHERE masid IN (1, 2) OR (underly = 1 AND monthindex = 1) OR (underly = 2 AND monthindex = 1);

These scripts must traded all trading days and all trading minutes to restores missingtimes I use FillingMissingTimes from ut_classes if any date missing it should maintained for liquid scripts how and where I need to store all these information ?? The NSE changed its trading start time from 9:55 AM to 9:15 AM on January 4, 2010.