π’οΈ Iran-Oil Intelligence & Prediction App (IOIPS) A 21-Day Rapid Build for PCCOE Engineering Project
π Project Overview This platform analyzes the correlation between the 2026 Iran geopolitical climate and global oil price volatility. Using EIA v2 data and GDELT news sentiment, we provide real-time tracking and a "What-If" scenario simulator for price prediction.
π οΈ The Tech Stack (All Free Tier) Frontend: React.js + Tailwind CSS + Chart.js
Backend: Node.js + Express + MongoDB Atlas
Data/ML: Python (yfinance, EIA API v2, Scikit-Learn)
Deployment: Vercel (Frontend) & Render (Backend)
π 21-Day Sprint Roadmap Phase 1: Foundation (Days 1β7) Member 1 (Data): Setup EIA API v2 & yfinance scripts. Get historical data into MongoDB.
Member 2 (ML): Analyze historical war price spikes. Create a "Correlation Matrix."
Member 3 (Backend): Setup Express server & Mongo connection. Create "Mock" data routes.
Member 4 (Frontend): Design the Dashboard layout with Chart.js placeholders.
Phase 2: Intelligence (Days 8β14) Member 1 (Data): Build the GDELT News Scraper (Sentiment score focus).
Member 2 (ML): Train the Random Forest model. Export as .pkl.
Member 3 (Backend): Build the Scenario Engine (Logic for the sliders).
Member 4 (Frontend): Connect UI to real API. Build the "Market Fear" Gauge.
Phase 3: Launch (Days 15β21) Member 1 & 2: Accuracy testing & Documentation for the final report.
Member 3: Deploy Backend to Render.
Member 4: UI Polish, Dark Mode, and Vercel deployment.
π CRITICAL: Security & API Keys To protect our EIA API Key, we follow these rules:
NEVER hardcode the key in your .py or .js files.
Create a .env file in your root folder:
Plaintext EIA_API_KEY=your_key_here MONGO_URI=your_mongodb_link Ensure .env is listed in your .gitignore so it is never uploaded to GitHub.
π How to Start Coding (For Team Members) Open this Repository on GitHub.
Click the green "<> Code" button.
Select "Codespaces" and click "Create codespace on main."
To run the Backend: cd backend && npm install && npm start
To run Data Scripts: cd data && pip install -r requirements.txt && python main.py
π Progress Tracker We use the [GitHub Projects Board] to track daily tasks.
Todo: Tasks not yet started.
In Progress: What you are working on right now.
Done: Completed and merged into main.
Team Members Member 1: Rudra G. - Data Engineering
Member 2: Siddhant U. - Machine Learning
Member 3: Aashish B. - Backend Architecture
Member 4: Abhishek T. - Frontend / UI-UX
Pro-Tip for the Team: If you finish your daily task early, help the person "upstream" or "downstream" from you. For example, if the Data is ready, help the ML member clean it!
Let's build this! π