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 (habit, general, or workout).
  • Open the Daily Dashboard to see tasks for today; check off items or slide daily targets.
  • 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.

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-plan 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.

Markdown

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

  • Links: [label](https://example.com) and bare https:// URLs auto‑link.
  • Bold: **bold** or __bold__.
  • Notes support headings (# Heading) and lists (- item, 1. item).
  • No raw HTML or advanced Markdown (images, tables, code blocks).

See the full Markdown Guide

Import & Export

  • Use /import-data and /export-data for CSV import/export.
  • Exports include challenge metadata 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.
  • 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.