This site is driven by two keys, like the machine it came from. Reading: j and k scroll, d and u move half a page, gg goes to the top, G to the bottom, H and L switch windows, ? opens the help. Space is the Neovim leader and handles content: Space then h home, r research, p projects, g gear, a about, / tags, or Space then a digit to jump to that window. Home is the tmux prefix and handles windows: Home then c opens a terminal, Home then & closes a window, Home then space goes to the next one. While focus is on the keyboard, h j k l move between keys and Enter opens one.

ResearchR AboutA Gear — G for gear — keyboard, terminal, editor, homelab.G
    ProjectsP Tags — / as in vim: search./
    ×
    Menu

    Workspacebook: A Campus Mobile Client in Flutter + Supabase

    A Flutter app for campus use with Supabase for auth and backend — including the OAuth flow that has to be reconfigured every time the environment moves.

    Overview

    Workspacebook Mobile Flutter is a mobile client built with Flutter and powered by Supabase for authentication and backend services. Before running the app, configure the required environment variables first.

    🔐 Environment Variable Configuration

    Create a .env file at the project root, then add the following variables:

    SUPABASE_URL=
    SUPABASE_ANON_KEY=
    SUPABASE_REDIRECT_URL=
    

    Variable Reference

    VariablePurposeWhere to find it
    SUPABASE_URLThe base URL of your Supabase project.Project Settings → API → Project URL
    SUPABASE_ANON_KEYThe public anonymous API key used to access Supabase from the frontend.Project Settings → API → anon public
    SUPABASE_REDIRECT_URLThe redirect URL used after login or OAuth sign-in (e.g. Google Sign-In).Authentication → URL Configuration → Site URL

    Local Development Notes

    💡 For local development, point SUPABASE_REDIRECT_URL to your local app scheme or an http://localhost callback so the OAuth flow returns to the running app.

    id en
    rss gh in