ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
Production-ready school management software for Nigerian schools.
Translation pending
EducationTypeScript · HTMLGitHub @FRwebsOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
A school management system for nigeria
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗Production-minded School Management System for Nigerian schools, built with a Next.js frontend and a NestJS + TypeScript backend, powered by Prisma/PostgreSQL, role-based portals, finance workflows, admissions, attendance, grading, communication tools, and mobile-friendly dashboards.
.
├── prisma/
│ ├── schema.prisma
│ └── seed.ts
├── src/
│ ├── app/
│ │ ├── (app)/ # Protected admin and portal screens
│ │ ├── api-docs/ # Links to Nest Swagger docs
│ │ └── login/ # Authentication entry screen
│ ├── components/
│ │ ├── dashboard/
│ │ ├── data-display/
│ │ ├── forms/
│ │ ├── layout/
│ │ └── portals/
│ ├── hooks/
│ │ └── use-offline-draft-queue.ts
│ ├── lib/
│ │ ├── auth/
│ │ ├── db/
│ │ ├── demo/
│ │ ├── domain/
│ │ ├── integrations/
│ │ ├── pdf/
│ │ ├── uploads/
│ │ └── utils/
├── backend/
│ ├── src/
│ │ ├── auth/ # Session, roles, CSRF guards
│ │ ├── common/ # API exception filter
│ │ └── modules/ # Nest controllers and services
│ └── Dockerfile
├── tests/
│ ├── unit/
│ ├── integration/
│ └── e2e/
├── Dockerfile
├── docker-compose.yml
└── .github/workflows/ci.yml
School model and flows through academic, finance, operational, and communication tables with schoolId ownership on domain records./api/v1./api/... shape without Next implementing the backend itself./api/docs and /api/docs-json.env.example to .env.npm install
docker-compose up -d db
For this workspace, no existing prisma/migrations history is present, so local development uses:
npx prisma db push
If you introduce a migration baseline later, use:
npx prisma migrate dev --name init
npm run prisma:seed
npm run dev
[email protected][email protected][email protected][email protected][email protected], [email protected], [email protected][email protected][email protected], [email protected], [email protected][email protected], [email protected], [email protected], [email protected], [email protected]FutureRealm123!POST /api/v1/auth/loginPOST /api/v1/auth/logoutGET /api/v1/auth/sessionGET /api/v1/dashboard/overviewGET/POST /api/v1/admissionsGET /api/v1/admissions/metricsGET/PUT /api/v1/admissions/settingsGET /api/v1/admissions/:applicationIdPOST /api/v1/admissions/:applicationId/submitPOST /api/v1/admissions/:applicationId/reviewPOST /api/v1/admissions/:applicationId/request-documentsPOST /api/v1/admissions/:applicationId/verify-feePOST /api/v1/admissions/:applicationId/schedule-screeningPOST /api/v1/admissions/:applicationId/screening-resultPOST /api/v1/admissions/:applicationId/recommendPOST /api/v1/admissions/:applicationId/decisionPOST /api/v1/admissions/:applicationId/issue-offerPOST /api/v1/admissions/:applicationId/accept-offerPOST /api/v1/admissions/:applicationId/decline-offerPOST /api/v1/admissions/:applicationId/financial-clearancePOST /api/v1/admissions/:applicationId/enrollGET /api/v1/admissions/:applicationId/offer-letterGET/POST /api/v1/studentsGET /api/v1/student-portal/dashboardGET /api/v1/student-portal/profileGET /api/v1/student-portal/attendanceGET /api/v1/student-portal/resultsGET /api/v1/student-portal/timetableGET /api/v1/student-portal/assignmentsGET /api/v1/student-portal/feesGET /api/v1/student-portal/announcementsGET /api/v1/student-portal/notificationsGET /api/v1/student-portal/servicesGET /api/v1/parent-portal/dashboardGET /api/v1/parent-portal/childrenGET /api/v1/parent-portal/children/:studentIdGET /api/v1/parent-portal/children/:studentId/attendancenpm run test
npm run test:e2e
vercel.json routes /api/* to that function explicitly so production requests keep the same /api/v1/... shape as local development.http://127.0.0.1:4000, but Vercel automatically disables that rewrite so requests do not bounce back to localhost.npm run build
DATABASE_URL=...
DIRECT_URL=...
APP_URL=https://your-domain.example
JWT_SECRET=replace-with-a-long-random-secret
DEFAULT_SCHOOL_SLUG=greenfield-college
DEMO_MODE=false
NEST_API_URL in Vercel unless you intentionally want the frontend to call a different external API host.APP_URL fallback logic.npx prisma db push
npm run prisma:seed
/login/api/v1/auth/session/api/docs/dashboardnpx prisma db push.GET /api/v1/parent-portal/children/:studentId/resultsGET /api/v1/parent-portal/children/:studentId/feesGET /api/v1/parent-portal/children/:studentId/timetableGET /api/v1/parent-portal/announcementsGET /api/v1/parent-portal/notificationsGET /api/v1/parent-portal/profileGET/POST /api/v1/attendanceGET/POST /api/v1/academics/gradesGET/POST /api/v1/finance/invoicesGET /api/v1/finance/dashboardGET/POST /api/v1/finance/fee-structuresGET /api/v1/finance/invoices/:invoiceIdPOST /api/v1/finance/invoices/generateGET /api/v1/finance/paymentsPOST /api/v1/finance/paymentsPOST /api/v1/finance/payments/manualPOST /api/v1/finance/payments/verifyPOST /api/v1/finance/discountsPOST /api/v1/finance/waiversGET/POST /api/v1/finance/installment-plansGET /api/v1/finance/reports/exportGET/POST /api/v1/communications/announcementsGET /api/v1/reports/report-card/:studentIdGET /api/docsGET /api/docs-json