Skip to content

codecoradev/sinau-lms

Repository files navigation

Sinau LMS

Sinau - Javanese (Krama) for "to learn". A modern, lightweight, self-hostable open-source learning management system.

Tech Stack

Layer Technology
Runtime Bun
Frontend SvelteKit 5 + Svelte 5
Styling Tailwind CSS 4 + shadcn-svelte
Editor TipTap
Backend Rust + Axum
Database sqlx + SQLite (dev) / PostgreSQL (prod)

Features (MVP)

  • OAuth authentication (Google, GitHub, Keycloak)
  • RBAC (admin, teacher, student)
  • Course management (chapters, activities, published/public)
  • Rich content editor (TipTap)
  • Media upload (local filesystem or S3-compatible)
  • API tokens (headless access)
  • Webhooks

Getting Started

Prerequisites

  • Rust 1.80+
  • Bun latest
  • sqlx-cli (cargo install sqlx-cli)

Development

bash git clone git@github.com:codecoradev/sinau-lms.git cd sinau-lms

Backend

cd server cp ../.env.example .env sqlx database create sqlx migrate run cargo run

Frontend (separate terminal)

cd web bun install bun run dev

Environment Variables

See .env.example for all configuration options.

Documentation

Document Description
PRD Product Requirements Document
ERD Entity Relationship Diagram
ROADMAP Development roadmap and sprints
ARCHITECTURE Architecture decisions and project structure
AGENT.md Development workflow and branching strategy

Contributing

See CONTRIBUTING.md.

License

TBD

About

Sinau LMS — Open source learning management system. Built with Rust (Axum) + SvelteKit 5

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors