Documentation

How Quickcheck works and how to use it.

Overview

Quickcheck is a web-based checklist tool for engineering teams. Checklists persist across sessions, so you can track progress on deployments, incident response, release gates, and other operational processes without losing state.

The application runs entirely in the browser with data stored in a PostgreSQL database via Supabase. Authentication supports email/password, Google OAuth, and GitHub OAuth.

Getting started

  1. Create an account — sign up at auth/index.html using email, Google, or GitHub.
  2. Create a checklist — click "New checklist" in the sidebar and choose "Blank checklist" or upload a markdown template.
  3. Add sections and items — click section titles or item labels to edit them inline. Check items off as you complete them.
  4. Progress is saved automatically — every change syncs to the database in real time.
  5. Return anytime — your checklists are waiting when you come back.

Authentication

Quickcheck uses Supabase Auth for all authentication. Sessions are managed with refresh-enabled JWTs. Passwords are hashed with bcrypt before storage.

Supabase integration

Data storage and authentication are provided by Supabase. Each user's checklists are stored in a checklists table with row-level security (RLS) policies that restrict access to the owning user.

Database connections are encrypted with TLS. Backups run automatically and are stored encrypted. The Supabase project is configured with standard security hardening including network restrictions and automated patching.

Google OAuth

Sign in with a Google account using OAuth 2.0. Quickcheck requests access to your email address and basic profile information. No other Google services are accessed.

After sign-in, the browser redirects to the callback handler at /auth, which exchanges the authorization code for a session. You are then redirected to the dashboard.

GitHub OAuth

Sign in with a GitHub account using OAuth 2.0. Quickcheck requests access to your email address and basic profile information. No other GitHub services are accessed.

After sign-in, the browser redirects to the callback handler at /auth, which exchanges the authorization code for a session. You are then redirected to the dashboard.

Checklist storage

Each checklist is stored as a single row in the checklists table. The data column contains the full checklist structure (sections, items, checked state) serialized as JSON. This keeps read and write operations atomic.

RLS policies ensure that:

Checklist titles are also stored as a separate indexed column for efficient listing in the sidebar.

FAQ

Is my data encrypted?

Yes. All data in transit is encrypted with HTTPS/TLS. Data at rest is encrypted by Supabase's infrastructure (PostgreSQL encryption at rest). Checklist content is not end-to-end encrypted.

Can I export my checklists?

Not yet. Export is on the roadmap. For now, checklists are accessible whenever you sign in to your account.

Can I share checklists with my team?

Not yet. The current version is single-user. Team collaboration features are planned.

What happens if I delete my account?

All checklist data associated with the account is permanently deleted. The process is irreversible. A confirmation email is sent before deletion completes.

Which browsers are supported?

Quickcheck supports the latest two versions of Chrome, Firefox, Safari, and Edge.