Skip to main content

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.

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.

Required software

1

Node.js 18 or later

Classify’s server targets the Node.js 18 LTS runtime. Check your version with:
node --version   # must be v18.x or higher
Download the latest LTS release from nodejs.org or use a version manager such as nvm or fnm.
2

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.
# Install pnpm via corepack (bundled with Node.js 18+)
corepack enable
corepack prepare pnpm@latest --activate

# Or via npm
npm install -g pnpm

pnpm --version   # must be 8.x or higher
3

Git

You need Git to clone the repository and to stay up to date with upstream changes.
git --version
Install Git from git-scm.com if it is not already present.
4

A Supabase project

Classify relies on Supabase for four services that work together out of the box:
ServiceWhat Classify uses it for
PostgreSQLAll application data — users, projects, courses, attendance records
AuthJWT-based authentication; user sign-up, sign-in, and password reset flows
StorageProfile avatar images (stored in the avatars bucket)
Row-Level Security (RLS)Fine-grained access control enforced at the database level
Create a free project at supabase.com. Once the project has provisioned (usually under a minute) you can retrieve the two keys you need:
  1. Open your project in the Supabase Dashboard.
  2. Go to Settings → API.
  3. Copy the Project URL, the anon / public key, and the service_role / secret key.
You will place these values in the server .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.

Build docs developers (and LLMs) love