Before you spin up a Classify instance you need a small set of tools installed locally and a Supabase project to provide the database, authentication, file storage, and row-level security layer. None of these require paid plans — the Supabase free tier is sufficient for development and small production deployments.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Taykl12/Classify/llms.txt
Use this file to discover all available pages before exploring further.
Required software
Node.js 18 or later
Classify’s server targets the Node.js 18 LTS runtime. Check your version with:Download the latest LTS release from nodejs.org or use a version manager such as
nvm or fnm.pnpm 8 or later
The repository is a pnpm monorepo. npm and Yarn are not supported because the workspace protocol (
workspace:*) and lockfile format are pnpm-specific.Git
You need Git to clone the repository and to stay up to date with upstream changes.Install Git from git-scm.com if it is not already present.
A Supabase project
Classify relies on Supabase for four services that work together out of the box:
Create a free project at supabase.com. Once the project has provisioned (usually under a minute) you can retrieve the two keys you need:
| Service | What Classify uses it for |
|---|---|
| PostgreSQL | All application data — users, projects, courses, attendance records |
| Auth | JWT-based authentication; user sign-up, sign-in, and password reset flows |
| Storage | Profile avatar images (stored in the avatars bucket) |
| Row-Level Security (RLS) | Fine-grained access control enforced at the database level |
- Open your project in the Supabase Dashboard.
- Go to Settings → API.
- Copy the Project URL, the anon / public key, and the service_role / secret key.
.env file during the Environment setup step.The anon key is safe to include in browser-side code. The service role key bypasses all Row-Level Security policies — keep it server-side only and never commit it to version control.
Optional hardware
An ESP32 microcontroller can be connected to Classify to record attendance automatically via the device token mechanism. If you do not have ESP32 hardware, attendance can still be recorded manually through the web interface. You can add device-based attendance at any time without changing your database schema.
Next step
Once all prerequisites are in place, continue to Environment Variables to configure your.env file before running the migrations.