Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Acadance

A functional academic platform prototype for role-based course, group, laboratory, and assignment workflows.

Project status: Paused

Acadance is the public case-study identity of a paused academic platform prototype focused on frontend engineering, product engineering, and role-based academic workflows.

What is Acadance?

Acadance is a role-based academic platform prototype for organizing courses, laboratories, units, practices, and related teacher/student workflows.

It demonstrates:

  • Role-specific academic experiences
  • Complex validated forms
  • Relational workflows
  • Responsive dashboards and navigation
  • Typed Supabase integration
  • Reusable React and TypeScript UI patterns

Teacher view of course units and practices

At a glance

Area Description
Product type Functional academic platform prototype
Primary focus Frontend and product engineering
User experiences Administrator, lab admin or department head, teacher, and student
Frontend Next.js App Router, React, and TypeScript
Backend platform Supabase Auth, PostgreSQL, and Storage
Data access TanStack Query, server-side accessors, and generated TypeScript types
Current status Paused
Public positioning Sanitized engineering case study

Role-based experience

Administrator

  • User listings
  • Search, filtering, and pagination
  • Public profile information
  • Role-related profile fields
  • Administrative dashboard navigation

Administrator view of users with filters and pagination

Lab admin or department head

  • Laboratory listings and filters
  • Course and group creation
  • Teacher and subject selection
  • Syllabus-based unit initialization
  • Enrollment, schedule, status, and visibility fields

Laboratory administration list with capacity and availability status

Teacher

  • Assigned groups and courses
  • Unit and practice management
  • PDF practice files
  • Practice metadata editing and deletion
  • Public practice reuse
  • Submission viewing
  • Course invitations and join requests

Student

  • Course and group listings
  • Course invitation codes
  • Join requests
  • Role-specific dashboard navigation

Core workflows

  1. A user signs in, refreshes a session, and reaches a role-specific experience.
  2. An authorized user creates a course or group through validated form data.
  3. A syllabus initializes the units associated with an academic workflow.
  4. A teacher manages practices, files, invitations, and visible submissions.
  5. A student joins a course through an invitation code or join request.

Group creation form with course, teacher, schedule, and enrollment fields

Architecture

Next.js App Router
        |
Layouts and Providers
        |
Authentication and role-specific experiences
        |
TanStack Query and server-side accessors
        |
Supabase Auth, PostgreSQL, and Storage

The application combines Server Components and Client Components according to interaction needs.

Key characteristics include:

  • App Router layouts for shared structure and navigation
  • Authentication-aware server and client boundaries
  • Role-based redirects and navigation
  • TanStack Query prefetching and hydration
  • Generated TypeScript types for Supabase data
  • Supabase as the backend platform
  • No important custom backend or standalone API layer

Frontend engineering

Acadance demonstrates frontend patterns for data-heavy product interfaces:

  • React component composition with TypeScript
  • Responsive desktop and mobile dashboard layouts
  • Reusable navigation, form, table, dialog, and feedback components
  • React Hook Form and Zod validation
  • Search, filtering, and pagination flows
  • Light and dark theme support
  • Client-side avatar compression and file handling
  • Loading states, skeletons, notifications, and transitions
  • Radix-based and shadcn-style UI composition
  • Framer Motion for focused interface transitions

Tech stack

Layer Technology
Framework Next.js 14 App Router
UI React 18
Language TypeScript
Styling Tailwind CSS
Components Radix UI and shadcn-style patterns
Forms React Hook Form
Validation Zod
Server state TanStack Query
Animation Framer Motion
Authentication Supabase Auth
Database Supabase PostgreSQL
File storage Supabase Storage
Generated types Supabase TypeScript types
Local state Zustand is present in parts of the source but is not central

Development approach

Acadance predates my current AI-assisted development workflow and was built primarily through traditional programming, codebase exploration, and standard autocomplete tooling.

Project status

Acadance is currently paused. The implemented prototype covers authentication, role-specific navigation, course and group workflows, academic units, practices, file handling, and join requests. Student submissions, grading, laboratory reservations, and scheduling remained partial when development stopped.

  • It is not a complete learning management system.
  • It is not a finished Microsoft Teams alternative.
  • It was not an official university production system.

About the source

Acadance is a curated public case-study identity rather than a complete mirror of the original private project.

The original implementation was developed for a university systems department and remains private. This public repository should remain sanitized and must not include:

  • Credentials, demo accounts, or environment secrets
  • Supabase keys or real user identifiers
  • Student, teacher, or institutional data
  • Private CSV exports
  • Institutional logos or campus photographs
  • Assets without clear public-use authorization
  • Original private Git history
  • Claims of official university production use

The repository communicates product decisions, frontend architecture, role-based interface design, relational workflow modeling, and typed Supabase integration.

Future documentation

About

Academic platform prototype for role-based course, laboratory, group, and assignment workflows. Built with Next.js, React, TypeScript, and Supabase.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors