How laiquanghai2k6/mxh works
Projectz is a Next.js community app with a discussion feed and a course-creation and quiz-taking flow. Visitors browse posts and courses; signed-in users can create posts, interact with posts, build courses, and edit profile details. The sampled pages read and write Firestore directly, while course and profile image uploads use Firebase Storage. Authentication is exposed through Firebase Auth and modal UI. The README describes only the Next.js starter, so feature scope is inferred from the sampled source and tree; unsampled modal behavior is not assumed beyond its role implied by its path.
Main entry points: index.tsx Home feed · postid/[id].tsx Post detail · courseid/[id].tsx Course quiz · AuthModal.tsx Auth modal
Components 18
Pages and layout
- Home feed
src/pages/index.tsx - App layout
src/components/Layout/Layout.tsx - Navigation bar
src/components/NavBar/Navbar.tsx
Community
- Post detail
src/pages/postid/[id].tsx - Post creation
src/components/Modal/Post/PostModal.tsx
Courses
- Course builder
src/components/Modal/Course/CourseModal.tsx - Course quiz
src/pages/courseid/[id].tsx - Quiz results
src/components/Modal/Finish/FinishModal.tsx
Identity and auth
- Profile details
src/components/Modal/Profile/ProfileModal.tsx - Auth controls
src/components/NavBar/RightContent/AuthButton.tsx - Auth modal
src/components/Modal/Auth/AuthModal.tsx - Credential forms
src/components/Modal/Auth/AuthInput.tsx - Auth modal state
src/atoms/authModalAtom.ts
Firebase services
- Firebase client
src/firebase/clientApp.ts - Firestore
- Firebase Storage
- Firebase Auth
Other components
- Visitor
Connections 26
- Visitor → App layout: visits
- App layout → Home feed: renders
- App layout → Navigation bar: renders
- Home feed → Firestore: reads posts and courses
- Home feed → Firebase Auth: checks sign-in
- Home feed → Post creation: opens
- Home feed → Course builder: opens
- Home feed → Post detail: links to details
- Post detail → Firestore: reads and updates posts
- Post detail → Firebase Auth: checks sign-in
- Post detail → Profile details: shows profile
- Course builder → Firestore: reads and writes courses
- Course builder → Firebase Storage: uploads course images
- Course quiz → Firestore: reads course and updates views
- Course quiz → Firebase Auth: checks sign-in
- Course quiz → Quiz results: opens results
- Profile details → Firestore: reads and updates profiles
- Profile details → Firebase Storage: uploads profile image
- Auth controls → Auth modal state: sets modal view
- Auth modal → Auth modal state: reads modal state
- Auth modal → Credential forms: renders credentials
- Auth modal → Firebase Auth: observes session
- Credential forms → Firebase Auth: authenticates
- Firebase client → Firestore: initializes
- Firebase client → Firebase Storage: initializes
- Firebase client → Firebase Auth: initializes