0%
balqalam Logo
balqalam
FeaturesCommunityPricingDocumentation
Login
  • Introduction
  • Pitch
  • Hogwarts
  • Live Demo
  • MVP
  • Roadmap
  • Launch Sprint
  • PRD
  • Get Started
  • Localhost
  • Architecture
  • Structure
  • Pattern
  • Page
  • Layout
  • Content
  • Types
  • Config
  • Actions
  • Queries
  • Authorization
  • Validation
  • Form
  • Table
  • Detail
  • Card
  • Util
  • Hooks
  • List Params
  • Views
  • README.md
  • ISSUE.md
  • Technology Stack
  • Database
  • File
  • CDN Assets
  • Entry Points
  • Dashboard
  • Authentication
  • Credentials
  • OAuth
  • Flow Diagrams
  • Multi-Tenancy
  • Offline
  • Onboarding
  • Onboarding Videos
  • Add Values
  • Admission
  • Application
  • Attendance
  • Compliance
  • Profile
  • Exams
  • Exam Wizard
  • Timetable
  • Classrooms
  • Notifications
  • Conference
  • LMS (Lumos)
Finance
  • Finance
  • Fee Management
  • Invoice
  • Wallet
  • Salary
  • Payroll
  • Timesheet
  • Expenses
  • Budget
  • Receipt
  • Accounts
  • Banking
  • Reports
  • Dashboard
  • Permissions
  • Messages
  • Integration Flow
  • Provision
  • AI Document Processing
  • Document Intelligence
  • Internationalization
  • Translation
  • Translation Guide
  • Icons
  • Docs Factory
  • Inspiration
  • Listings
  • Teachers
  • Students
  • Catalog
  • Library
  • Contributing
  • Code of conduct
  • GitHub Workflow
  • Database Seeds
  • Database Safety
  • Test Accounts
  • Playwright
  • Prettier
  • Block Rebound
Sales & GTM
  • Marketing Brief
  • Sales
  • Go-to-market
  • Marketing
  • Admission — Feature Spotlight
  • Pilot Program
  • Leads
  • Proposal
  • Outreach Templates
  • Case Study
  • Competitors
  • Landing-page teardown
  • Competitor FAQ
  • Business model
  • Shared economy
  • Traction
Fundraising & Ecosystem
  • Get Support
  • Investor Deck
  • Data Room
  • Investors
  • Accelerators
  • Incubators
  • Grants
  • Sponsors
  • Partners
  • Competitions & Hackathons
  • Universities & Training Centers

Test Accounts

PreviousNext

8 named test accounts and ~3,100 bulk accounts seeded for the demo school.

The seed creates 8 named test accounts plus ~3,100 bulk accounts in Demo Academy (subdomain demo). All accounts use password 1234. Named accounts are mapped to Harry Potter characters with Arabic names.

Named accounts

EmailRoleArabic / EnglishPersonalSchool
dev@balqalam.comDEVELOPERسيفيروس سنيب / Severus Snapeseverus-snape@hotmail.comPlatform (no schoolId)
user@balqalam.comUSERنيفيل لونغبوتوم / Neville Longbottom—None (onboarding)
admin@balqalam.comADMINألباس دمبلدور / Albus Dumbledorealbus-dumbledore@hotmail.comDemo
teacher@balqalam.comTEACHERمينيرفا ماكغونغال / Minerva McGonagallminerva-mcgonagall@hotmail.comDemo
student@balqalam.comSTUDENTهاري بوتر / Harry Potterharry-potter@gmail.comDemo
parent@balqalam.comGUARDIANجيمس بوتر / James Potter (father)james-potter@gmail.comDemo
parent1@balqalam.comGUARDIANليلي بوتر / Lily Potter (mother)lily-potter@gmail.comDemo
accountant@balqalam.comACCOUNTANTفيليوس فليتويك / Filius Flitwickfilius-flitwick@hotmail.comDemo
staff@balqalam.comSTAFFروبياس هاغريد / Rubeus Hagridrubeus-hagrid@hotmail.comDemo

Platform accounts

dev@balqalam.com — only DEVELOPER can access the SaaS dashboard at ed.databayt.org/en/dashboard (or localhost:3000/en/dashboard). Capabilities: view all schools, platform analytics, system config.

user@balqalam.com — fresh user for onboarding tests. Reset with pnpm db:reset-test-user.

Demo school accounts

Demo Academy: demo.databayt.org (production) or demo.localhost:3000 (local).

AccountNotable data
admin@Full school dashboard — manages teachers, students, classes, exams, finance, settings
teacher@EMP0001, Languages dept (Arabic), qualifications + multi-level classes
student@GR0001, Grade 10, 16 subjects, 2 guardians, ~60 attendance days, midterm + final + 2 quizzes per subject
parent@Father, primary guardian for student@
parent1@Mother, secondary guardian for student@
accountant@Finance dashboard — fees, payments, invoices, reports
staff@STAFF001, Keeper of Keys and Grounds — admin operations, non-teaching

Harry's 16 Grade 10 subjects

Arabic, English, French, Mathematics, Physics, Chemistry, Biology, Computer Science, History, Geography, Civics, Islamic Studies, Quran, ICT, Art, PE.

Email pattern

Every account has two emails:

FieldExampleUse
Login emailteacher@balqalam.comAuthentication
Personal emailfirstname-lastname@domain.comProfile and membership table

Bulk accounts use generatePersonalEmail() → firstname-lastname{index}@{gmail|yahoo|hotmail|outlook}.com.

Access matrix

AccountURL patternBehavior
dev@localhost:3000/en/dashboardSaaS platform dashboard
user@localhost:3000Onboarding (Get Started)
admin@demo.localhost:3000/en/s/demoFull school dashboard
teacher@demo.localhost:3000/en/s/demoTeacher view (classes, students)
student@demo.localhost:3000/en/s/demoStudent view (16 classes)
parent@demo.localhost:3000/en/s/demoGuardian view
accountant@demo.localhost:3000/en/s/demoFinance dashboard
staff@demo.localhost:3000/en/s/demoStaff operations

Bulk accounts

Teachers (100)

teacher1@ … teacher99@balqalam.com. Distributed across 6 departments: Languages, Sciences, Mathematics, Social Studies, Islamic Studies, Technology. Each has qualifications, experience, and subject assignments.

Students (1,000)

student1@ … student999@balqalam.com, distributed across K-12.

SectionLevelsPer levelTotal
KindergartenKG1, KG250100
ElementaryGrades 1-680480
MiddleGrades 7-970210
HighGrades 10-1260180

Note: student@balqalam.com (Harry) is reassigned to Grade 10 after distribution (KG1 ends at 49, Grade 10 at 61).

Guardians (2,000)

parent1@ … parent1999@balqalam.com. Two guardians per student (father + mother), linked by index.

Simulation flows

FlowSteps
StudentLogin student@ → 16 classes, exams, attendance, fee status
ParentLogin parent@ → child profile (Harry), grades, attendance, fee/payment
TeacherLogin teacher@ → assigned Arabic classes, roster, marks, attendance
AdminLogin admin@ → full dashboard, finance overview, school settings
AccountantLogin accountant@ → fees, payments, invoices, reports
DeveloperLogin dev@ on main domain → /en/dashboard platform analytics
OnboardingLogin user@ → Get Started → wizard → new school. Reset via pnpm db:reset-test-user

Role protection

dev@balqalam.com has an immutable DEVELOPER role. Enforced at multiple layers:

LayerMechanismFile
Seed scriptsPROTECTED_EMAILS exclusion in bulk updateManyprisma/seeds/reset-test-user.ts
OAuth adapterReturns role field to prevent JWT losssrc/lib/multi-tenant-prisma-adapter.ts
Claude rulePath-scoped warning when touching auth/seed code.claude/rules/accounts.md
PostToolUse hookDetects unguarded bulk role changes.claude/hooks/check-roles.sh
const PROTECTED_EMAILS = ["dev@balqalam.com", "dev@databayt.org"]
 
await prisma.user.updateMany({
  where: {
    schoolId: { in: schoolIds },
    email: { notIn: PROTECTED_EMAILS },
  },
  data: { role: "USER" },
})

Resettable: user@balqalam.com (pnpm db:reset-test-user) and applicant@balqalam.com (pnpm db:reset-test-applicant).

Reset

pnpm db:reset-test-user                              # Fresh state for user@balqalam.com
pnpm db:seed                                         # Full re-seed (idempotent, ~45-120 min)
pnpm prisma migrate reset && pnpm db:seed            # Nuclear (manual only)
pnpm db:seed:single <name>                           # Single module — much faster

Seeds use upsert and are idempotent.

Known gaps

  • No second school for cross-tenant testing.
  • No OAuth test accounts (Google/Facebook).
  • No suspended/inactive user.
  • No multi-school user — User.schoolId is single-valued by design.

See also

  • Authentication
  • Safe seeds
Database SafetyPlaywright

On This Page

Named accountsPlatform accountsDemo school accountsHarry's 16 Grade 10 subjectsEmail patternAccess matrixBulk accountsTeachers (100)Students (1,000)Guardians (2,000)Simulation flowsRole protectionResetKnown gapsSee also

Built by Databayt ·

Welcome to balqalam.

A great journey is about to begin.