Skip to content

Latest commit

 

History

History
59 lines (46 loc) · 3.72 KB

File metadata and controls

59 lines (46 loc) · 3.72 KB

Schuly

Schuly Logo

The better Schulnetz app - Flutter mobile client

GitHub stars Latest Release Documentation Website

A modern Flutter mobile app providing a superior alternative to the official Schulnetz client. Intuitive interface, multi-user support, and seamless access to grades, timetable, absences, documents & report cards (Zeugnisse), and holidays.

Important

This project is NOT affiliated with, endorsed by, or connected to Schulnetz or Centerboard AG in any way.

Quick start

Common workflows are wrapped as bun scripts (bun is only the task runner - it doesn't pull in a Node toolchain):

bun run dev               # flutter run, dev flavor
bun run prod              # flutter run, prod flavor
bun run analyze           # flutter analyze
bun run test              # flutter test

Flavors: dev (com.schuly.app.dev, "Schuly DEV") and prod (com.schuly.app, "Schuly"). Targets Android and iOS only.

The backend URL is compiled in via --dart-define=BACKEND_BASE_URL and defaults to http://localhost:5033, so no machine IP is ever committed. Development setup covers the full script list, the build variants, and pointing the app at a local backend over USB or LAN.

Documentation

Full documentation lives at docs.schuly.dev/Schuly.

Guide What it covers
Development setup Prerequisites, bun tasks, flavors, and connecting to a local backend.
Build and release Release builds for Android and iOS, and how a release is cut.
Architecture modes Account mode vs private mode, and how each reaches school data.
API client Regenerating the Dart client from the backend's OpenAPI document.
Contributing Workflow, branch and PR conventions.

New to Schuly as a user? Start with the getting-started walkthrough.

The Schuly ecosystem

Repo Purpose
Schuly Flutter mobile app (this repo)
SchulyBackend ASP.NET Core API backend
SchulyKeycloak Keycloak image + the schuly realm
SchulyPluginAbstractions Plugin contract (NuGet)
SchulyPlugins Official plugins monorepo
SchulyWebsite Landing site (schuly.dev)
SchulyDocs Documentation site (docs.schuly.dev)