Eikaiwa Admin Dev Diary #8 - Lockdown
I touched on this last week, but would like to explain in more detail why I'm building this as a backend system rather than a front-facing portal for teachers, parents and students.
Strict boundaries
Eikaiwa Admin is first and foremost a system for school managers.
I started this project with the intention of replacing spreadsheets with a modern database, but it's grown far beyond that. It now handles scheduling, billing, expense tracking, a sales funnel for bringing in new students, and much more.
What it doesn't do, though, is arguably its greatest strength.
Missing features
There are no features for parents and students. Teaching staff are limited to checking schedules and notices about events, trials, absences, make-ups and late students. There's no curriculum here, no homework uploads, heck, they can't even mark the attendance themselves. It's strictly read-only.
These missing elements are serviced by other hard-working teachers tapping into the same market of English schools looking for digital and automated solutions to make work easier. One example is PeraPera Memo.
Security by design
Eikaiwa Admin is so locked down that it doesn't even have a registration form. Nobody gets access to this control panel unless you're added as a staff member. And only "managers" can make changes to the database.
Thou shall not pass!
Built on Laravel and Filament, any unauthorized access results in a brick wall, and if a teacher tries to mess with it, or leaks their login credentials, it doesn't matter. Nothing can be edited and no sensitive data is visible beyond a teaching schedule with student names.
Doing one thing exceptionally well
By drawing a line in the sand and focusing solely on the backend stuff, Eikaiwa Admin stays secure and true to its purpose. It gives managers total control over their business and the peace of mind that their data is safe.*
What's that asterisk?
When I say "safe", I mean that years and years of data can be safely stored in the database. You can export that data, but I've not yet implemented automatic backups or integration with cloud services. That's still on the todo list.
Progress update
This post was inspired by the completion of the "teacher view", which limits what a logged-in teacher can access. Notifications are now tailored to that specific teacher.