{"id":37510166,"url":"https://github.com/5umitpandey/ivp_coderush_hackathon","last_synced_at":"2026-01-16T08:01:23.134Z","repository":{"id":324828957,"uuid":"1097965224","full_name":"5umitpandey/IVP_CodeRush_Hackathon","owner":"5umitpandey","description":null,"archived":false,"fork":false,"pushed_at":"2025-11-18T03:44:24.000Z","size":598,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-18T05:31:29.663Z","etag":null,"topics":["appdevelopment","coderush","hackathon","ivp","moodflow"],"latest_commit_sha":null,"homepage":"https://moodflow-docker-app-latest.onrender.com/","language":"TypeScript","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/5umitpandey.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-17T04:44:08.000Z","updated_at":"2025-11-18T04:06:41.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/5umitpandey/IVP_CodeRush_Hackathon","commit_stats":null,"previous_names":["5umitpandey/ivp_coderush_hackathon"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/5umitpandey/IVP_CodeRush_Hackathon","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5umitpandey%2FIVP_CodeRush_Hackathon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5umitpandey%2FIVP_CodeRush_Hackathon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5umitpandey%2FIVP_CodeRush_Hackathon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5umitpandey%2FIVP_CodeRush_Hackathon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/5umitpandey","download_url":"https://codeload.github.com/5umitpandey/IVP_CodeRush_Hackathon/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5umitpandey%2FIVP_CodeRush_Hackathon/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478047,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T06:30:42.265Z","status":"ssl_error","status_checked_at":"2026-01-16T06:30:16.248Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["appdevelopment","coderush","hackathon","ivp","moodflow"],"created_at":"2026-01-16T08:00:49.986Z","updated_at":"2026-01-16T08:01:22.355Z","avatar_url":"https://github.com/5umitpandey.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"﻿# IVP CodeRush Hackathon\n\n## Overview\nA single-page application built with React + TypeScript and Vite. Fast dev server, optimized production builds, and utility-first styling with Tailwind CSS. Entry points: `src/App.tsx` and `src/main.tsx`.\n\n## About src/App.tsx\nThis project’s main UI and logic live in `src/App.tsx`. High-level summary:\n\n- Purpose: Implements the MoodFlow single-page UI for capturing daily mood-related data, visualizing trends, and generating basic reports — entirely client-side.\n- Data model: Defines a MoodEntry with id, date, sleep, stress, symptoms, mood, engagement, drugNames, and notes.\n- State:\n  - entries: array of MoodEntry (persisted to localStorage).\n  - activeTab: UI tab selector ('entry' | 'charts' | 'reports').\n  - formData \u0026 errors: form inputs and validation errors for the daily entry form.\n- Persistence: Loads entries from `localStorage` on mount and writes back whenever entries change.\n- Form handling \u0026 validation:\n  - validateDate: requires a date within the last year.\n  - validateNumber: validates numeric ranges (sleep 0–24; stress/symptoms/mood/engagement 1–10).\n  - sanitizeString: strips unsafe characters and limits length.\n  - Notes must be at least 10 characters.\n  - On submit, new entries replace any entry with the same date and entries are sorted by date (newest first).\n- Analytics \u0026 charts:\n  - Uses Chart.js + react-chartjs-2 to render Line (mood/stress/engagement), Bar (sleep), and Pie (drug impact) charts.\n  - Charts use the last 30 entries (if available).\n- Drug analysis:\n  - Parses comma-separated `drugNames`, normalizes them, and computes average mood per drug.\n  - Displays results in a pie chart and a sortable table with usage counts and categorized average mood badges.\n- UI:\n  - Tabbed layout: Daily Entry, Analytics, Reports.\n  - Tailwind CSS for styling and responsive layout.\n  - Accessible, client-only flow with immediate visual feedback for validation errors.\n\nNotes \u0026 considerations:\n- All data is stored locally (no backend). For sensitive health data consider adding encryption, backups, or a secure backend with authentication.\n- Validation and sanitization are basic — extend server-side if you add a backend.\n- Charts and layout can be customized in `src/App.tsx` (colors, ranges, and chart options).\n\n## Features\n- Modern React + TypeScript architecture\n- Fast development with Vite\n- Tailwind CSS for styling\n- Docker-ready and AWS deployment support\n\n## Tech stack\n- Framework: React (TypeScript) — entry: `src/App.tsx`, `src/main.tsx`\n- Bundler/dev server: Vite — config: `vite.config.ts`\n- Language: TypeScript — configs: `tsconfig.json`, `tsconfig.app.json`, `tsconfig.node.json`\n- Styling: Tailwind CSS (`tailwind.config.js`) + PostCSS (`postcss.config.js`), main styles at `src/index.css`\n- Containerization \u0026 deployment: Docker (`Dockerfile`), AWS Elastic Beanstalk manifest (`deploy/Dockerrun.aws.json`)\n- Project metadata \u0026 scripts: `package.json`\n- Static entry: `index.html`\n\n## Prerequisites\n- Node.js (LTS)\n- npm (or yarn)\n- Docker (optional, for container builds)\n\n## Installation\n1. Install dependencies:\n```sh\nnpm install\n```\n\n## Usage\n- Run the dev server:\n```sh\nnpm run dev\n```\n\n## Configuration\n- `tsconfig.json`: TypeScript configuration\n- `tsconfig.app.json`: Application-specific TypeScript configuration\n- `tsconfig.node.json`: Node.js-specific TypeScript configuration\n- `tailwind.config.js`: Tailwind CSS configuration\n- `postcss.config.js`: PostCSS configuration\n- `src/index.css`: Main styles\n\n## Testing\n- Run tests:\n```sh\nnpm test\n```\n\n## Screenshots!\n![Screenshot 1](https://raw.githubusercontent.com/5umitpandey/IVP_CodeRush_Hackathon/main/Screenshot1.png)\n![Screenshot 2](https://raw.githubusercontent.com/5umitpandey/IVP_CodeRush_Hackathon/main/Screenshot2.png)\n![Screenshot 3](https://raw.githubusercontent.com/5umitpandey/IVP_CodeRush_Hackathon/main/Screenshot3.png)\n\n\n\n## Contributing\n- Fork the repo\n- Create a feature branch\n- Commit changes\n- Push to the branch\n- Open a pull request\n\n## License\nMIT\n\n## Live Demo\nA live demo of the application is available at: [Live Demo](https://moodflow-docker-app-latest.onrender.com/)\n\n\n## Prize!\n![Prize](https://raw.githubusercontent.com/5umitpandey/IVP_CodeRush_Hackathon/main/IVP_Prize_C.JPG)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F5umitpandey%2Fivp_coderush_hackathon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F5umitpandey%2Fivp_coderush_hackathon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F5umitpandey%2Fivp_coderush_hackathon/lists"}