1. Per-Holiday & Per-Occasion Recipient Budgets (Target: first update after v2.1.0 — HIGH PRIORITY)
Description: Allow users to define distinct budget limits for the same person depending on the holiday/occasion.
Example Use Case:
Alice Smith → $150 budget for Christmas 2026
Alice Smith → $50 budget for Birthday 2026
Alice Smith → $25 budget for Anniversary
2. Recurring Annual Gifts (Auto-Repeat Every Year) (Target: v2.2.0)
Description: Mark gifts as recurring (e.g., "Grandma always gets chocolates" or "Nephew gets Xbox gift card"). At the start of a new holiday season/year, the app prompts the user to re-create annual recurring gifts in 1 tap.
3. Home Screen Widgets (👑 Pro Feature — Target: v2.3.0)
Description: Home screen widgets on Android and iOS showing countdowns, budget remaining, or "3 gifts left to wrap" directly on the phone's home screen.
4. Per-Gift Celebration Destination Mode (👑 Pro Feature — Target: v2.2.0)
Description: Allow specifying the celebration destination mode on a per-gift basis:
1. 🎄 Under Tree: For presents opened at home.
2. 🚗 Packed for Travel: For presents packed in the car trunk for driving to Grandma & Grandpa's house.
3. 📦 Shipped Ahead: For presents mailed directly to extended family.
5. Custom Relationship Sort Order & Default People Sort (Target: v2.2.0)
Description: Let users choose the order relationships are sorted in, instead of the built-in order (spouse, kids, parents/parents-in-law, siblings, etc.), and pick which People sort the app opens with (Relationship or Family Name).
Also fold in here — more relationship options: Step-parent/child, Half-sibling, Godparent/Godchild, Fiancé(e), Roommate. Also offer gender-neutral options (Parent, Child, Spouse/Partner) alongside the specific ones, and let users add a fully custom relationship label if none of the presets fit.
6. Photos in the Add Gift and Edit Gift Forms
Description: Today a photo can only be added after a gift is saved, using Add photo on its gift card. Let users take or pick photos while filling in Add Gift (e.g., snapping the item in the store) and from the Edit Gift window.
7. Birthdays & Anniversaries Become Active Occasions When Planned
Birthdays and anniversaries come from people's cards. Users can add as many as they like; they are reminders (and will drive notifications in a later release) and do not count toward the free plan's 5 active occasions.
A birthday or anniversary becomes an active occasion only when the user starts planning it (taps Plan gifts / starts adding gifts). Only then does it count toward the free
Add an occasion is for events that aren't on anyone's card: graduations, baby showers, weddings, retirements, housewarmings. These are saved plans and Plan gifts activates them (already works).
8. Automatic Husband/Wife Linking (Target: v2.2.0)
Description: When a second Husband/Wife/Spouse/Partner is added to a family that already has one, offer to link them ("Link Bob as Alice's spouse?"), and save the link on both people so it shows in their details and everywhere else.
9. Birthdays Without a Year & Typed Dates (Target: v2.2.0)
People often don't know a friend's birth year, and scrolling the calendar back decades to pick a birthday is painful.
Replace the Birthday and Anniversary date pickers with three typed fields: Month (Jan–Dec), Day (number), Year (optional).
Birthdays, the Occasion Hub, Show gifts and future reminders only need month and day.
Age: calculated when the year is known. When it isn't, optionally type the age once ("about 40"); store an approximate birth year flagged as approximate so the age still goes up every year, shown as "~41".
Anniversaries: with a year show "25th anniversary"; without, just the date.
10. Choose People When Creating an Occasion (Target: first update after v2.1.0, build with FE-29)
Description: When creating an occasion (manually, or when a recurring occasion rolls into its next year), let the user pick which people the plan is for from a checklist of existing people, instead of editing each person's For Holiday field separately.
11. Secret Santa / White Elephant / Angel Tree Gift Exchanges (Target: Future)
There's no relationship option today for a one-off gift-exchange contact who isn't family or a close friend, and no way to flag a Gift Closet item as belonging to a group exchange rather than a specific person. Also covers Angel Tree (Salvation Army, Prison Fellowship, etc.) — a widely-used charity program where you pick an anonymous tag listing a child or person's age, sizes, and wish items.
Description: Two small, separate additions:
1. Add Coworker to RELATIONSHIP_TYPES (src/constants.js) as a non-family relationship — it already pairs naturally with the existing For Holiday field (see 5g) to scope a coworker to one event (e.g. "Christmas 2026") without needing the full occasion-roster rework.
2. In the Gift Closet (unassigned "just-in-case" gifts, done in 2.1.0), add a checkbox/tag marking an item as a White Elephant / Dirty Santa gift — a gift meant for a group swap pool, not a specific recipient.
3. Secret Santa traditionally runs on a profile of the assigned person's hobbies/interests, not a link-based wishlist (though some groups do use an Amazon-style wishlist link now) — the person already has a free-text Item Preferences field (shirt/pants/shoe sizes + notes, see person.itemPreferences), so make sure that field is easy to fill in and surfaced clearly for a Secret Santa recipient, not just the URL wishlist fields, since a coworker added just for one exchange may have nothing but hobby notes to go on.
4. Angel Tree is the same "anonymous, one-time, sizes-and-wishes-only" shape as a Secret Santa coworker — a person entry with just an age, sizes (already have shirt/pants/shoe size fields), and a short wish note, no last name or family needed. Likely wants its own relationship option (e.g. Angel Tree / Charity) rather than being forced under Coworker or Friend, and probably benefits from an easy way to archive/remove them after the season since they're not an ongoing contact.
5. Angel Tree tags are usually anonymized on purpose (first name only, or just a family label + the child's age, no real last name) to protect the child's identity — but addPerson currently requires both First Name AND Last Name (App.jsx, "Please enter both First Name and Last Name"). That validation would need to bend for this relationship type: either make Last Name optional when it's set, or accept something like a program/group label ("Angel Tree 2026") standing in for a last name.
12. Multi-select recipients as a checkbox list, not a native multi-select (Target: v2.2.0)
Description: Replace it with a checkbox list (or a custom chip-style multi-select), same data underneath (recipientIds). Show the selected count the way it already does today ("Selected (2): Alice Smith, Bob Smith").
13. Barcode/QR scanner for quick-add
Description: Scan a product barcode while shopping in-store to quickly add it as a gift, using a UPC lookup API for the name/price where available. Camera access the app doesn't currently use for this purpose (only for gift photos today).
14. Suggested budget for a new person
Description: When adding a new person, suggest a starting budget based on what's typically spent on that relationship type (and maybe age — kids vs. adults), using the user's own past spending by relationship as the source, not a hardcoded guess.
15. Import a Wishlist item as a trackable gift
Description: A checkbox next to each Wishlist item + an "Import Selected" action that creates a real gift (pre-filled with the Wishlist item's name and URL) so it enters the normal cost/status/purchase tracking flow, rather than retyping it from scratch in Add Gift.
16. User-configurable reminder time
Description: Let the user set their own preferred time(s) for occasion reminders and delivery reminders (could be one shared time, or separate times for each) instead of the fixed 9am/6pm.
17. Custom currency support
Description: Let the user pick their currency (symbol + placement, e.g. $123 vs. 123€) and have it apply everywhere a dollar amount is entered or displayed — budgets, gift costs, the privacy blur, group-gift ledgers, etc.
18. CSV import (not just export)
Description: A CSV import flow (upload/pick a .csv, map columns to gift fields, create people on the fly if a recipient name doesn't match an existing person) that complements the existing export.
19. Sort toggle (Alphabetical vs. Relationship) on people-picker lists
Description: Let the user switch these lists between Alphabetical and By Relationship, and when this is built, the picker itself should say which sort is active (not just rely on the order being self-evident). Lets users customize the order relationship groups appear in (e.g. spouse before or after kids) — this is about choosing the sort mode itself (name vs. relationship), a different axis, and applies to picker lists specifically rather than the main People section.
20. Custom confirmation modals instead of native confirm() dialogs
Description: Build one reusable custom confirmation modal component (matching the app's existing modal style) and swap all 10 call sites over to it. Scope is isolated — only those 10 confirm/cancel interactions need re-testing afterward, not the surrounding features.
21. Separate App PIN (Target: Future)
Description: App Lock (free in 2.1.0) uses the phone's own fingerprint, face, or PIN, so anyone who knows the phone's PIN can open the app. A separate PIN just for All Wrapped Up would keep out someone who shares the phone. Needs setup, change, and a safe "forgot PIN" path — there are no accounts, so a forgotten PIN must never lock someone out of their data.
22. Discreet App Icon & Name (👑 Pro Feature)
Description: Let the user pick from a short preset list of disguises for the app's home-screen name and icon (for example "Lists", "Notes" or "Planner"), so someone glancing at their phone doesn't see a gift app.
Implementation Concept:
Android only allows preset choices: activity-alias entries in AndroidManifest.xml, switched at runtime. No free-text renaming.
Pair it with a "discreet notifications" option so reminder text doesn't reveal gift details or the app name.
Known limits to design around:
Android Settings and the Play Store still show "All Wrapped Up".
The app usually closes when the identity switches, so warn the user first.
A home-screen shortcut may need re-adding.
Policy: Disguises must be generic and must not imitate another real app, to stay within Google Play policy.
Fits with: the Pro hidden-gift controls (Spoiler Privacy), and the free App Lock and $ blur.
🔭 Product Direction
D1. Couples / families planning together
Likely the most requested feature ("my wife and I both buy for the kids"). On-device-only data protects privacy but makes sharing impossible today. Decide the answer early: shared backup file, merge on import, or "not supported".
D2. First-run guidance
After "I Agree", new users see a $0 budget and empty lists. A short "1. Add a person → 2. Set a budget → 3. Add a gift" card would help first impressions and reviews.
A few small guided pop-ups rather than one big tour:
1. On first open, point new users to Add Person first, since a person has to exist before a gift can be added to them.
2. In the Add Person form, highlight First name / Last name / Family name and Budget specifically — these are the fields that drive family grouping and budget math, and are easy to skip past.
3. The first time someone adds a birthday or anniversary to a person, a small pop-up explains it will now show up under Occasion Hub, then walks them through adding a gift from there.
4. This one can't happen early — it needs an individual budget already set AND a purchased gift logged before there's anything real to show. Once both exist, explain the Budget overview: Spent vs. Total vs. buffer, and that the Family Budget total (when family budgets are used) rolls up into the overall budget.
Each of these would only need to show once per install (dismiss-and-remember, like other one-time notices in the app).
Alternative considered: launch with a pre-filled dummy database (sample people/budget/gift already there) so the budget-explainer step has real numbers to point at immediately, then walk the user through clearing it before they add their own data. Leaning toward contextual pop-ups instead — a dummy-data reset adds its own cleanup risk, and people tend to click through a big upfront tutorial without reading it, then ask "wait, how do you do that?" later anyway, so showing each tip only when it's actually relevant (and only once) is probably more effective regardless.
D5. Gift ideas not tied to a holiday — just the person
Description: Gift Ideas and Wish Lists are tied to a person, not a specific holiday.
D6. Broader accessibility pass for those who are visually impaired
---
💡 Smart Shopping & Organization Roadmap (Low Priority / User Request Driven)
1. Quick Stats & Visual Charts (Pie/Bar Charts)
Description: Visual pie charts for spending by store/category or bar charts by person.
2. Sales Tax Calculator (Pre-Tax vs. With-Tax Amounts)
Description: Setting for sales tax percentage so users logging Multi-Item Amazon orders can enter pre-tax item costs without calculating individual item tax manually.
3. Location-Based Store Reminders (GPS Geofencing)
Description: Sends a phone alert when driving near Target or Best Buy that you have unpurchased gifts there.
4. Wrapping Supplies Inventory Tracker
Description: Track inventory of wrapping paper rolls, bows, and tape.
5. Gift Return & Exchange Deadline Tracker
Track store return windows (e.g., "30-day return policy ends Jan 25"), attach digital receipt photos, and track refund status for returned items.
6. AI Gift Recommendation Assistant (👑 Pro Feature)
On-device or API-assisted gift suggestions tailored to recipient age, relationship type, interests, and budget.
7. Past Years Gift History & Duplicate Prevention
Historical look-back analytics across previous years (2024, 2025, 2026) to ensure you never accidentally purchase a duplicate or overly similar gift for the same person.
8. Interactive Store Shopping Checklist & Route Planner
Group unpurchased gift ideas by store name (e.g., Target, Amazon, Etsy, Local Boutique) with a mobile-friendly checklist for in-store shopping trips.
9. PDF & Printable Packing / Christmas Morning Summary
Generate clean, formatted PDF packing lists or Christmas morning distribution checklists.
10. Automatic Price Drop & Deal Finder Alerts (👑 Pro Feature)
Monitor saved wishlist URLs and alert the user if a saved gift idea goes on sale or drops in price.