{"id":29417840,"url":"https://github.com/anish-2005/tech-expo","last_synced_at":"2025-10-15T14:16:09.899Z","repository":{"id":303862480,"uuid":"1016951740","full_name":"Anish-2005/Tech-Expo","owner":"Anish-2005","description":"A comprehensive air quality monitoring system with a space-themed design, built for the Tech Expo Hackathon.  This repository contains a full-stack application that provides real-time air quality intelligence across India","archived":false,"fork":false,"pushed_at":"2025-07-09T19:44:16.000Z","size":795,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-10T05:02:22.502Z","etag":null,"topics":["app-dev","aqi","expressjs","flutter","ml","nodecron","supabase"],"latest_commit_sha":null,"homepage":"","language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Anish-2005.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-09T19:32:40.000Z","updated_at":"2025-07-09T20:20:30.000Z","dependencies_parsed_at":"2025-07-10T05:05:00.645Z","dependency_job_id":"3498df2a-f54b-43be-ac02-7fb8559d1387","html_url":"https://github.com/Anish-2005/Tech-Expo","commit_stats":null,"previous_names":["anish-2005/tech-expo"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Anish-2005/Tech-Expo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anish-2005%2FTech-Expo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anish-2005%2FTech-Expo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anish-2005%2FTech-Expo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anish-2005%2FTech-Expo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Anish-2005","download_url":"https://codeload.github.com/Anish-2005/Tech-Expo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anish-2005%2FTech-Expo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279085216,"owners_count":26100015,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-15T02:00:07.814Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["app-dev","aqi","expressjs","flutter","ml","nodecron","supabase"],"created_at":"2025-07-11T22:12:40.276Z","updated_at":"2025-10-15T14:16:09.866Z","avatar_url":"https://github.com/Anish-2005.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🌍 Atmospheric Quality Intelligence (AQI) Monitor\n\n**A Space-Themed Air Quality Monitoring System for the Tech Expo Hackathon**\n\n[![Flutter](https://img.shields.io/badge/Flutter-02569B?style=for-the-badge\u0026logo=flutter\u0026logoColor=white)](https://flutter.dev)\n[![Node.js](https://img.shields.io/badge/Node.js-43853D?style=for-the-badge\u0026logo=node.js\u0026logoColor=white)](https://nodejs.org)\n[![PostgreSQL](https://img.shields.io/badge/PostgreSQL-316192?style=for-the-badge\u0026logo=postgresql\u0026logoColor=white)](https://postgresql.org)\n[![Vercel](https://img.shields.io/badge/Vercel-000000?style=for-the-badge\u0026logo=vercel\u0026logoColor=white)](https://vercel.com)\n\n## 🚀 Overview\n\nThe **Atmospheric Quality Intelligence (AQI) Monitor** is a comprehensive air quality monitoring solution developed for the Tech Expo Hackathon. This project combines a space-themed Flutter mobile application with a robust Node.js backend to provide real-time air quality data across India using satellite-grade precision and government APIs.\n\n### 🌟 Key Features\n\n- **🛰️ Space-Themed UI**: Immersive space-inspired design with animated stars, nebula backgrounds, and cosmic aesthetics\n- **📍 Real-Time Location Tracking**: GPS-based location services for precise air quality monitoring\n- **🗺️ Interactive Maps**: Integration with Google Maps and Flutter Map for visual data representation\n- **📊 Data Visualization**: Beautiful charts and graphs using FL Chart for AQI trends\n- **🔔 Smart Notifications**: Local notifications for air quality alerts and updates\n- **🌡️ Multi-Pollutant Monitoring**: Tracks PM2.5, PM10, NO2, SO2, CO, Ozone, and NH3 levels\n- **📱 Cross-Platform**: Flutter app supporting Android, iOS, Web, Windows, macOS, and Linux\n- **🌐 Web Interface**: Additional web-based GeoFinder tool for location discovery\n\n## 🏗️ Architecture\n\n### 📱 Frontend (Flutter App)\n```\napp/\n├── lib/\n│   ├── main.dart              # Entry point with space-themed splash screen\n│   ├── screens/\n│   │   └── home_page.dart     # Main dashboard with AQI data and maps\n│   ├── models/               # Data models (to be implemented)\n│   ├── services/             # API services (to be implemented)\n│   ├── utils/                # Utility functions (to be implemented)\n│   └── widgets/              # Reusable UI components (to be implemented)\n├── assets/\n│   ├── astronaut.webp        # Space-themed imagery\n│   ├── India-map.svg         # Indian map visualization\n│   └── logo.png              # App logo\n└── pubspec.yaml              # Dependencies and project configuration\n```\n\n### 🖥️ Backend (Node.js API)\n```\nbackend/\n├── index.js                  # Express server with CORS and API endpoints\n├── data.js                   # Government API data fetching\n├── db.js                     # PostgreSQL database operations\n├── aqiCalculator.js          # AQI calculation algorithms\n├── connection.js             # Database connection management\n├── package.json              # Node.js dependencies\n└── vercel.json               # Deployment configuration\n```\n\n\n\n## 🛠️ Technology Stack\n\n### Mobile Application\n- **Framework**: Flutter 3.0+\n- **Language**: Dart\n- **Maps**: Google Maps Flutter, Flutter Map\n- **Location**: Geolocator\n- **Charts**: FL Chart\n- **Animations**: Animated Text Kit, Shimmer\n- **HTTP**: HTTP package for API calls\n- **State Management**: Provider\n- **Notifications**: Flutter Local Notifications\n\n### Backend API\n- **Runtime**: Node.js\n- **Framework**: Express.js\n- **Database**: PostgreSQL\n- **Scheduler**: Node-Cron\n- **Environment**: Dotenv\n- **HTTP Client**: Node-Fetch\n- **Deployment**: Vercel\n\n### Data Sources\n- **Government API**: data.gov.in AQI datasets\n- **Weather API**: OpenWeather integration (configured)\n- **Mapping**: Leaflet.js, Google Maps\n\n## 📦 Installation \u0026 Setup\n\n### Prerequisites\n- Flutter SDK (3.0 or higher)\n- Node.js (16 or higher)\n- PostgreSQL database\n- Android Studio / Xcode (for mobile development)\n- API keys for data.gov.in and OpenWeather\n\n### 🚀 Quick Start\n\n#### 1. Clone the Repository\n```bash\ngit clone https://github.com/yourusername/Tech-Expo.git\ncd Tech-Expo\n```\n\n#### 2. Backend Setup\n```bash\ncd backend\nnpm install\n\n# Create .env file\necho \"AQI_API_KEY=your_data_gov_in_api_key\" \u003e .env\necho \"DATABASE_URL=your_postgresql_connection_string\" \u003e\u003e .env\n\n# Start the server\nnpm start\n```\n\n#### 3. Flutter App Setup\n```bash\ncd app\nflutter pub get\n\n# For Android\nflutter run\n\n# For iOS\nflutter run -d ios\n\n# For Web\nflutter run -d chrome\n```\n\n\n## 🔧 Configuration\n\n### Environment Variables (.env)\n```env\nAQI_API_KEY=your_data_gov_in_api_key\nDATABASE_URL=postgresql://user:password@localhost:5432/aqi_db\nNODE_ENV=production\n```\n\n### Flutter Configuration\nUpdate the API endpoint in the Flutter app:\n```dart\n// In lib/screens/home_page.dart\nconst String API_BASE_URL = 'https://your-api-domain.vercel.app';\n```\n\n### Database Schema\nThe PostgreSQL database includes tables for:\n- `stations` - Air quality monitoring stations\n- `pollutant_data` - Raw pollutant measurements\n- `aqi_data` - Calculated AQI values with categories\n\n## 📊 API Endpoints\n\n### Base URL: `https://your-api-domain.vercel.app/api`\n\n| Endpoint | Method | Description |\n|----------|--------|-------------|\n| `/health` | GET | Server health check |\n| `/aqidata` | GET | Retrieve all AQI data points |\n| `/pollutants` | GET | Get pollutant measurements |\n| `/stations` | GET | List monitoring stations |\n\n### Sample API Response\n```json\n{\n  \"status\": \"success\",\n  \"data\": [\n    {\n      \"station_id\": \"DELHI001\",\n      \"time\": \"2025-07-10T12:00:00Z\",\n      \"latitude\": 28.6139,\n      \"longitude\": 77.2090,\n      \"aqi\": 156,\n      \"category\": \"Moderate\",\n      \"dominant_pollutant\": \"PM2.5\"\n    }\n  ]\n}\n```\n\n## 🎨 Design Features\n\n### Space Theme Elements\n- **Cosmic Color Palette**: Deep space blues (#0A043C) with teal accents\n- **Animated Stars**: Randomly positioned twinkling star field\n- **Nebula Backgrounds**: SVG-based cosmic imagery\n- **Astronaut Graphics**: Space exploration themed assets\n- **Floating Animations**: Scale and opacity transitions\n- **Cosmic Typography**: Animated text with space-grade terminology\n\n### AQI Visualization\n- **Color-Coded Categories**: \n  - 🟢 Good (0-50)\n  - 🟡 Satisfactory (51-100)\n  - 🟠 Moderate (101-200)\n  - 🔴 Poor (201-300)\n  - 🟣 Very Poor (301-400)\n  - 🔴 Severe (400+)\n\n## 📱 Supported Platforms\n\n- ✅ Android (API 21+)\n- ✅ iOS (iOS 12+)\n- ✅ Web (Modern browsers)\n- ✅ Windows (Windows 10+)\n- ✅ macOS (macOS 10.14+)\n- ✅ Linux (Ubuntu 18.04+)\n\n## 🤝 Contributing\n\n1. Fork the repository\n2. Create a feature branch (`git checkout -b feature/amazing-feature`)\n3. Commit your changes (`git commit -m 'Add amazing feature'`)\n4. Push to the branch (`git push origin feature/amazing-feature`)\n5. Open a Pull Request\n\n### Development Guidelines\n- Follow Flutter/Dart style guidelines\n- Use meaningful commit messages\n- Add comments for complex algorithms\n- Test on multiple platforms\n- Update documentation for new features\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🎯 Hackathon Context\n\nDeveloped for the **Tech Expo Hackathon**, this project demonstrates:\n- **Space Technology Integration**: Satellite-grade precision in air quality monitoring\n- **Government Data Utilization**: Leveraging data.gov.in APIs\n- **Cross-Platform Development**: Unified solution across all major platforms\n- **Real-Time Monitoring**: Live data processing and visualization\n- **User-Centric Design**: Intuitive space-themed interface\n\n## 🌟 Future Enhancements\n\n- [ ] Machine Learning predictions for AQI trends\n- [ ] Satellite imagery integration\n- [ ] Social sharing of air quality reports\n- [ ] Health recommendations based on AQI levels\n- [ ] Multiple language support\n- [ ] Offline data caching\n- [ ] Push notifications for severe pollution alerts\n- [ ] Integration with wearable devices\n\n## 👥 Team\n\n- **Frontend Development**: Flutter mobile \u0026 web applications\n- **Backend Development**: Node.js API and database management\n- **UI/UX Design**: Space-themed interface design\n- **Data Integration**: Government API integration and processing\n\n## 📞 Support\n\nFor support, create an issue in the GitHub repository.\n\n---\n\n**🛰️ \"Monitoring Earth's Atmosphere with Space-Grade Precision\" 🛰️**\n\n*Built with ❤️ for the Tech Expo Hackathon*","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanish-2005%2Ftech-expo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanish-2005%2Ftech-expo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanish-2005%2Ftech-expo/lists"}