Public
Like
SchoolBank
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Viewing readonly version of main branch: v4View latest version
A comprehensive web application for managing student records and facilitating communication between school management and parents.
- Register new students with complete details
- View and search student records
- Update student information
- Track student academic progress
- Send announcements from school to parents
- Direct messaging between teachers and parents
- Notification system for important updates
- Message history and tracking
- School Admin: Full access to all features
- Teachers: Student records and parent communication
- Parents: View their child's information and receive messages
├── backend/
│ ├── database/
│ │ ├── migrations.ts # Database schema setup
│ │ └── queries.ts # Database query functions
│ ├── routes/
│ │ ├── students.ts # Student CRUD operations
│ │ ├── messages.ts # Communication system
│ │ └── auth.ts # Authentication routes
│ └── index.ts # Main Hono server
├── frontend/
│ ├── components/
│ │ ├── App.tsx # Main application component
│ │ ├── StudentForm.tsx # Student registration/edit form
│ │ ├── StudentList.tsx # Student records display
│ │ ├── MessageCenter.tsx # Communication interface
│ │ └── Dashboard.tsx # Main dashboard
│ ├── index.html # Main HTML template
│ └── index.tsx # Frontend entry point
└── shared/
└── types.ts # Shared TypeScript interfaces
- Backend: Hono (TypeScript API framework)
- Database: SQLite (Val Town hosted)
- Frontend: React with TypeScript
- Styling: TailwindCSS
- Authentication: Simple session-based auth
- The app will automatically set up the database on first run
- Access the application through the HTTP endpoint
- Default admin credentials will be created for initial setup
GET /api/students- List all studentsPOST /api/students- Register new studentPUT /api/students/:id- Update studentDELETE /api/students/:id- Remove student
GET /api/messages- Get messages for userPOST /api/messages- Send new messagePUT /api/messages/:id/read- Mark message as read
POST /api/auth/login- User loginPOST /api/auth/logout- User logoutGET /api/auth/me- Get current user info