How hasnain-a7/nextprojectflow works
Project Flow is a project and task management web app. Users authenticate, enter a protected workspace, and manage projects and tasks; the workspace also presents deadlines, schedules, profile information, and project collaboration. Firebase Auth and Firestore back identity and project data, while a separate chat API calls Gemini. The README is generic Next.js starter text, so product capabilities are inferred from the route tree and sampled components; unsampled route wiring is not asserted.
Main entry points: projectContext.tsx Project data context · layout.tsx Protected workspace shell · AuthContext.tsx Auth context · Firebase.ts Firebase setup
Components 22
Identity and shell
- Sign in
app/(auth)/SignIn/page.tsx - Sign up
app/(auth)/SignUp/page.tsx - Auth context
app/context/AuthContext.tsx - Protected workspace shell
app/(protected)/layout.tsx
Project and task work
- Project data context
app/context/projectContext.tsx - Project list
app/(protected)/projects/page.tsx - Project details
app/(protected)/projects/[projectId]/page.tsx - Project dashboard
app/(protected)/dashboard/[projectId]/page.tsx - Project editor
components/modols/ProjectModol.tsx - Task editor
components/modols/TaskModol.tsx - Task details
components/modols/TrelloModol.tsx
Planning and overview
- Workspace overview
app/(protected)/Home/page.tsx - Schedule
app/(protected)/schedule/page.tsx - Profile
app/(protected)/profile/page.tsx
Collaboration and AI
- Project chat
components/modols/ProjectChatModal.tsx - AI chat page
app/(protected)/chatai/page.tsx - Chat API
app/api/chat/route.ts
External services
- Firebase setup
app/config/Firebase.ts - Firebase Auth
- Cloud Firestore
- Google Gemini
Other components
- User
Connections 29
- User → Sign in: enters credentials
- User → Sign up: registers
- Sign in → Auth context: uses auth
- Sign up → Auth context: uses auth
- Auth context → Firebase setup: uses clients
- Firebase setup → Firebase Auth: configures
- Firebase setup → Cloud Firestore: configures
- Auth context → Firebase Auth: authenticates
- Auth context → Cloud Firestore: writes profile
- Auth context → Protected workspace shell: provides identity
- Protected workspace shell → Workspace overview: hosts routes
- Protected workspace shell → Project list: hosts routes
- Protected workspace shell → Schedule: hosts routes
- Protected workspace shell → Profile: hosts routes
- Protected workspace shell → Project data context: workspace data
- Project data context → Cloud Firestore: reads and writes
- Project list → Project data context: uses projects
- Project details → Project data context: uses project data
- Project dashboard → Project data context: uses project data
- Workspace overview → Project data context: uses project data
- Schedule → Project data context: uses project data
- Project editor → Project data context: edits projects
- Task editor → Project data context: edits tasks
- Task details → Project details: shows task detail
- User → Project chat: opens collaboration
- Project chat → Cloud Firestore: reads and writes chat
- User → AI chat page: asks questions
- AI chat page → Chat API: posts messages
- Chat API → Google Gemini: generates response