How should I plan and build a school management system with AI integration?
Asked by
MellowKite47
I need to create a semester project for a school management system that includes an AI or LLM feature. I want to genuinely understand what I build instead of blindly following tutorials or relying on vibe coding, since previous tutorial-based projects left me unsure how to implement features independently. I know the basics of HTML and have some experience with Next.js, and I'm considering Next.js, TypeScript, Tailwind CSS, and Supabase or another suitable database. I have no previous experience with AI or LLM development. Given my limited time and current skill level, where should I start, how should I plan the system, and what would be a realistic way to add an AI feature while still learning the fundamentals?
Answers
Start with planning rather than jumping into the UI. List the users, permissions, and data the system needsโfor example students, teachers, classes, attendance, grades, and assignmentsโthen map those into tables in a spreadsheet or a diagram. Define how the frontend will read and update that data before writing the components. Once the schema and basic API actions are clear, build one small end-to-end feature, such as creating and viewing a class, instead of trying to develop the entire system at once.
Reply to this answer
Sketch the application flow with a tool such as draw.io before coding. Decide which screens are needed, who can access each one, and what happens when a user submits a form. For the AI portion, keep the first version narrowโsuch as answering questions about school policies or summarizing teacher-entered notesโrather than trying to make the model manage the whole system. Build the normal database-backed application first, then add the LLM feature through one clearly defined server-side action so you can understand both parts separately.
Reply to this answer
Add your answer
Answers are reviewed before publication.
QuietHarbor62: A schema-first approach prevents a lot of problems later. Most of the application will ultimately involve storing, retrieving, validating, and connecting data, so getting those relationships right early is valuable.