User Guide

Learn how to use challenges, habits, workouts, import/export, and Google Sheets sync. This app stores data locally and never requires an account.

Quick Start

  • Create a challenge from /create (general, habit, workout).
  • Open the Daily Dashboard to see tasks for today; check off items or slide daily targets.
  • Need a prep list? Go to /checklists to add a checklist (from templates or from scratch).
  • Use Export to save a CSV backup at any time.

Challenges

  • Go to /challenges to browse or open a challenge; use /create to make your own.
  • Two tracking types: Simple (done/not done) and Daily Progress with a target (e.g., 500 words, 10 pages).
  • Set a weekly schedule; only scheduled days count toward your streak.
  • The challenge page shows a monthly calendar, completion rate, streak, and (for daily progress) progress vs. target.
  • Each challenge keeps timestamps: createdAt, updatedAt for conflict‑free sync/merge.

Checklists

  • Go to /checklists to create a one‑off checklist for an event (e.g., travel).
  • Choose a template (searchable) or Start from scratch, then customize title, due date, reminder window, and items.
  • The checklist appears on your Daily Dashboard starting N days before the due date, and each item shows as a subtask.
  • Edit any checklist inline on the Checklists page; items and meta can be updated later.

Habits

  • Create a habit-like challenge via /create with Daily Progress (target + unit) for a built‑in slider on your daily list.
  • Examples: “Drink 8 glasses of water” (target: 8, unit: glasses) or “Read 10 pages” (target: 10, unit: pages).
  • On the Daily view, adjust the slider to record progress; reaching the target marks the day complete.
  • Alternatively, manage multiple individual habits in /habit-plans using quick suggestions and per‑day schedules.

Projects

  • Add project tasks to specific dates — each entry becomes a daily todo on that date (and shows on your Daily dashboard).
  • The planner auto-starts at the first recent week with items (otherwise this week). Adjust Start week, Weeks (1–8), and the Active week.
  • In the active week, click a day and type the task. It’s staged until you press Save.
  • Toggle existing tasks; tasks with unfinished subtasks can’t be marked complete. Delete staged items or mark existing ones for deletion.
  • When ready, click Save to commit all staged adds/updates/deletes. Your tasks now appear as todos on those dates.

Workout Plans

  • Visit /workout-plans to create a weekly workout plan: choose days, add exercises, sets, and weights.
  • Activate a plan to generate daily workout todos; open a workout to tick exercises and track completion.
  • You can use quick set templates (e.g., 12‑10‑8) and tweak reps/weights per exercise.

Daily Todos

  • Every dated task appears on the Daily dashboard as a todo for that day.
  • Todos can come from challenges (on scheduled days), habits (daily progress items with a slider), workout plans (plan days), projects (via the Project Planner), and ad-hoc tasks you add yourself.
  • Click the checkbox to complete. If a todo has subtasks, they must all be complete first. Habit/progress items auto-complete when you reach the target (you can log up to 2× the target).
  • Use the chevron to show subtasks. You can add/edit/delete subtasks on ad-hoc todos; linked todos from challenges/plans may restrict editing but still allow checking off.
  • Ad-hoc todos can be edited or deleted. Linked todos open their source (Challenge/Workout) instead of allowing text edits.
  • Open a todo’s page to view notes (Markdown), history, and manage subtasks more comfortably.

Todo Input Parsing

  • Paste multi-line or bullet lists (-,*, en/em dashes, or) into the “Add a todo” box to auto-split each line into a subtask.
  • If the first line is plain text, it becomes the todo title and the remaining lines become subtasks. If you paste only bullets, the first bullet becomes the title and every bullet turns into a subtask.
  • Imported content is cleaned up automatically — zero-width characters, extra blank lines, and repeated bullet prefixes are stripped so items paste cleanly from apps like Notes or Google Docs.

Markdown

The app supports a safe, minimal Markdown subset in todos and notes:

  • Links: [label](https://example.com)and bare https:// URLs auto‑link. External links open in a new tab and are sanitized; internal paths like /create navigate within the app.
  • Inline styles: **bold**, *italic*, ~~strike~~, and `code`.
  • Notes support headings (# Heading), lists (- item, 1. item), blockquotes (> quote), and fenced code blocks (```).
  • No raw HTML or advanced Markdown (images, tables).

See the full Markdown Guide

Todo Sharing

  • Open any personal todo (general or project) and click Share to generate a private link. Linked challenge/habit todos stay private and cannot be shared.
  • The link copies to your clipboard; send it to a teammate and they can open it at /todo/share to preview the title, notes, and subtasks.
  • Recipients pick a date and save it into their own planner — shared todos never sync automatically, so each person stays in control of their schedule.

Import & Export

  • Use /import-data and /export-data for CSV import/export.
  • Exports include challenge metadata (including checklist details) and daily todo progress with subtasks.
  • Imports merge by ID; if an item exists, the CSV value overwrites local (use Sync for timestamp‑aware merge).
  • Markdown import (recommended): Paste or upload Markdown on /import-data for the most accurate results. Supported: H2 date headings (e.g., ## 2025-09-05), checklists and bullets as tasks/subtasks, strikethrough as complete, and inline links [label](url) (Google redirects are normalized; Google Docs links are canonicalized).
  • HTML import: Also supported (paste or upload). We handle headings, UL/LI hierarchies, checkboxes, strikethrough, and links, but accuracy can vary with exported HTML. Prefer Markdown when possible.

Sync with Google Sheets

  • Go to /sync-data.
  • Click Connect Google and paste your Spreadsheet ID (from the Sheets URL). You can create a spreadsheet from the Export page if needed.
  • Because the app uses the drive.file  scope, the spreadsheet must be created through the app; external sheets will return 404 errors and cannot be synced.
  • Click Start Syncing. The app will import recent changes from Sheets, then export your local data.
  • Auto‑sync runs in the background and periodically syncs the last day. If the last import was under 1 day ago, it fetches only the latest date; otherwise it fetches recent days.
  • Conflict resolution: “latest wins” using updatedAt, or createdAt when missing.
  • Sheets layout: Challenges sheet for challenges; one sheet per date (YYYY‑MM‑DD) for daily todos.

Privacy

No accounts or tracking. Your data stays on your device unless you export or sync it.

Tips & Troubleshooting

  • If syncing fails, verify your Google Client ID and Spreadsheet ID on /sync-data.
  • To reconcile edits across devices, use Sync (merges by timestamps) rather than raw CSV import.
  • Back up regularly via Export — it’s instant and offline.