🧩 Feature / Task
Establish the foundational project folder structure as specified, including directories for public/ (hosting root), scripts/ (JavaScript logic), styles/ (CSS files), and their respective subdirectories. This organizes the codebase for maintainability.
✅ Acceptance Criteria
The hackathon-finder/ root directory is set up.
public/ directory exists with index.html, login.html, signup.html, dashboard.html, upload.html, profile.html, offline.html, assets/, manifest.json, service-worker.js.
scripts/ directory exists with auth/, ui/, features/, and main.js.
styles/ directory exists with global.css, theme.css, auth.css, dashboard.css, responsive.css.
All specified subdirectories (e.g., scripts/auth/, public/assets/icons/) are created.
🚧 Steps To Do
Create the root hackathon-finder/ directory.
Inside hackathon-finder/, create the public/, scripts/, and styles/ directories.
Inside public/, create index.html, login.html, signup.html, dashboard.html, upload.html, profile.html, offline.html, manifest.json, service-worker.js.
Inside public/, create assets/ and its subdirectories icons/ and images/. Add logo.svg to assets/.
Inside scripts/, create auth/, ui/, features/, and main.js.
Inside scripts/auth/, create login.js, signup.js, firebase.js.
Inside scripts/ui/, create navbar.js, themeToggle.js, reminder.js, routing.js.
Inside scripts/features/, create uploadHackathon.js, bookmark.js, dashboard.js, searchFilter.js, mateFinder.js, upcomingBanner.js.
Inside styles/, create global.css, theme.css, auth.css, dashboard.css, responsive.css.
📁 Related Files / Areas
All project files and directories.
🧩 Priority
Priority : 🔴 High
🔗 Dependencies
None
🖼️ Reference
hackathon-finder/
├── public/ # Firebase hosting root
│ ├── index.html # Home page
│ ├── login.html # Login page
│ ├── signup.html # Signup page
│ ├── dashboard.html # User dashboard (bookmarked/uploaded hackathons)
│ ├── upload.html # Upload hackathon form
│ ├── profile.html # Profile + skill info + mate finder
│ ├── offline.html # Shown when offline (optional)
│ ├── assets/
│ │ ├── icons/ # App icons for PWA
│ │ ├── images/ # Banners, illustrations
│ │ └── logo.svg
│ ├── manifest.json # PWA Manifest file
│ └── service-worker.js # Service worker for PWA
│
├── scripts/ # JavaScript logic
│ ├── auth/ # Auth-related logic
│ │ ├── login.js
│ │ ├── signup.js
│ │ └── firebase.js # Firebase config and init
│ ├── ui/ # DOM manipulation / components
│ │ ├── navbar.js
│ │ ├── themeToggle.js
│ │ ├── reminder.js
│ │ └── routing.js # SPA hash-based routing (if used)
│ ├── features/ # Business logic
│ │ ├── uploadHackathon.js
│ │ ├── bookmark.js
│ │ ├── dashboard.js
│ │ ├── searchFilter.js
│ │ ├── mateFinder.js
│ │ └── upcomingBanner.js
│ └── main.js # Entry point (script for index.html)
│
├── styles/
│ ├── global.css # Global styles and variables
│ ├── theme.css # Dark/light mode variables
│ ├── auth.css # Styles for login/signup
│ ├── dashboard.css
│ └── responsive.css # Media queries and mobile-first fixes
│
├── .firebaserc # Firebase project alias
├── firebase.json # Firebase hosting config
├── .gitignore
├── README.md
└── package.json (if using npm for dev tools or Tailwind)
🧩 Feature / Task
Establish the foundational project folder structure as specified, including directories for
public/(hosting root),scripts/(JavaScript logic),styles/(CSS files), and their respective subdirectories. This organizes the codebase for maintainability.✅ Acceptance Criteria
hackathon-finder/root directory is set up.public/directory exists withindex.html,login.html,signup.html,dashboard.html,upload.html,profile.html,offline.html,assets/,manifest.json,service-worker.js.scripts/directory exists withauth/,ui/,features/, andmain.js.styles/directory exists withglobal.css,theme.css,auth.css,dashboard.css,responsive.css.scripts/auth/,public/assets/icons/) are created.🚧 Steps To Do
hackathon-finder/directory.hackathon-finder/, create thepublic/,scripts/, andstyles/directories.public/, createindex.html,login.html,signup.html,dashboard.html,upload.html,profile.html,offline.html,manifest.json,service-worker.js.public/, createassets/and its subdirectoriesicons/andimages/. Addlogo.svgtoassets/.scripts/, createauth/,ui/,features/, andmain.js.scripts/auth/, createlogin.js,signup.js,firebase.js.scripts/ui/, createnavbar.js,themeToggle.js,reminder.js,routing.js.scripts/features/, createuploadHackathon.js,bookmark.js,dashboard.js,searchFilter.js,mateFinder.js,upcomingBanner.js.styles/, createglobal.css,theme.css,auth.css,dashboard.css,responsive.css.📁 Related Files / Areas
🧩 Priority
Priority: 🔴 High
🔗 Dependencies
None
🖼️ Reference