📖 Documentation & Knowledge Base

QR Chores User Guide

Everything you need to know about setting up chores, printing permanent QR stickers, setting timing rules, and tracking rewards.

🔑 Getting Started & Role Accounts

QR Chores uses secure email and password authentication with role-based permissions tailored for families.

Role Who Permissions & Actions
Parent Mom and Dad (Separate accounts) Create/edit/delete chores, print QR code stickers, configure timing bonuses & achievements, review today board and photo completion history.
Child Daughter View scheduled chores on home board, scan QR code stickers to confirm completions, upload proof photos, earn points, and unlock achievements.
💡
Logging In: Parents land directly on the live Today Board, while the child lands on her personalized Home Screen showing daily tasks and point streaks. Use the Log out button in the top navigation bar when sharing a phone.

👨‍👩‍👧 Parent Guide

1. Today Board Statuses

The Today Board provides a real-time snapshot of scheduled chores for the current local calendar day:

  • Pending: Chore is scheduled for today but has not yet been completed.
  • Done: Completed on-time or early.
  • Late: Past due time + grace period (or completed after the grace period expired).

2. Creating and Managing Chores

Navigate to Chores → Add Chore to configure new household tasks:

Field Description
Title & Description Clear task description (e.g. "Clean Kitchen Counter", "Feed Dog").
Due Time Local wall-clock time in your family's timezone (e.g. 6:00 PM).
Schedule Days Which days of the week this chore repeats (e.g. Mon, Wed, Fri or Daily).
Base Points Base point reward awarded once per day upon completion.
Photo Policy Set to Required, Optional, or None.
📌
Deactivate vs. Delete:
Deactivate: Pauses the chore from appearing on today's list while keeping historical records.
Delete: Permanently removes the chore, all completion logs, and associated proof photos from the system.

3. Configuring Rewards & Achievements

Under Rewards, parents control point multipliers and custom achievement badges:

  • Timing Bonuses: Set extra points for completing chores Early, On-Time, or Late. These stack directly on top of base chore points.
  • Achievement Criteria: Create badges triggered by 7-day streaks, total completions, photo uploads, or on-time milestones.

👧 Child Guide

Home & Daily List

When logged in as a child, your home screen shows your current point balance, active streaks, unlocked badges, and today's scheduled chores.

Completing a Chore

1 Scan QR Sticker: Scan the QR code sticker placed near the chore (or tap the chore card on Home).
2 Check Photo Rules: If a photo is required, tap to snap or upload proof from your phone camera.
3 Tap "I Did It!": Instantly trigger the celebration animation, collect your points, and check for new achievement badges!
🎉
Double Completion Rule: Each chore can only be completed once per calendar day. Scanning a second time will display an "Already Done" confirmation with your earlier completion timestamp.

⏱️ Timing Windows: Early, On-Time, & Late

Timing status is calculated based on the chore's due time and your family's local timezone settings.

Status Default Time Window Example (Chore Due at 6:00 PM)
Early More than 60 minutes before due time Completed before 5:00 PM
On Time From 60 mins before due through due time + 15 min grace period Completed between 5:00 PM and 6:15 PM
Late After due time + 15 minutes grace period Completed after 6:15 PM (Same calendar day)

*Note: Completing a chore late on the same day is still allowed and awards the base chore points plus any parent-configured late bonus!

📸 Photos & Security Protocol

QR Chores implements strict file inspection and secure streaming to keep your household photos safe:

  • Magic-Byte Verification: All uploaded photos are inspected at the binary header level to confirm valid JPEG, PNG, or WebP formats.
  • Encrypted Off-DB Storage: Image bytes live outside the database in local disk storage (dev) or Cloud Storage (prod). The database only stores reference keys.
  • Authenticated Access Only: Proof photos can only be streamed via authenticated endpoints (/photos/...) by logged-in family members. Public direct access is blocked.

🏆 Server-Side Points Ledger System

Point balances in QR Chores are stored in an append-only PointLedger table on the server. Point balances cannot be altered or spoofed by client requests.

Point Source Calculation Rule
Chore Base Points Awarded once per day when chore is completed.
Timing Bonus Extra points added for Early, On-Time, or Late completion as defined in Parent Rewards.
Achievement Reward Bonus points credited instantly when milestone achievements unlock.

📌 Permanent QR Stickers Printing Guide

One of QR Chores' core design highlights is permanent sticker codes:

🖨️
Sticker Printing Best Practices:
1. In the Parent menu, click Print Sticker Sheet.
2. Print on standard Avery or sticker label paper.
3. Affix stickers directly to physical chore locations (e.g. Dishwasher, Dog Food Bin, Trash Can, Desk).
4. Crucial invariant: Keep your public application domain (BASE_URL) stable after printing so printed stickers remain valid indefinitely.

🔧 Troubleshooting & FAQ

Issue / Symptom Recommended Resolution
QR code opens wrong page or fails Verify that your application's BASE_URL environment setting matches your current web domain. Re-print sticker sheet if server address was modified.
"Wrong Account" error upon scanning Ensure the phone is logged in as the Child role before scanning the sticker code.
Cannot complete chore without photo Check if the parent set the chore's photo policy to Required. Ensure camera permissions are enabled for your mobile browser.
"Already Completed Today" message Each chore can only be completed once per calendar day. Check the history tab for earlier completion logs.
Logged out unexpectedly QR Chores uses HTTP-only secure cookie sessions. If the server secret key changes, users must re-authenticate.