ui update and some backend functionality adding in accordance with research on adhd and ux design
This commit is contained in:
@@ -39,6 +39,9 @@ CREATE TABLE IF NOT EXISTS routines (
|
||||
name VARCHAR(255) NOT NULL,
|
||||
description TEXT,
|
||||
icon VARCHAR(100),
|
||||
location VARCHAR(255),
|
||||
environment_prompts JSON DEFAULT '[]',
|
||||
habit_stack_after VARCHAR(255),
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
@@ -122,6 +125,49 @@ CREATE TABLE IF NOT EXISTS routine_streaks (
|
||||
last_completed_date DATE
|
||||
);
|
||||
|
||||
-- ── Rewards ───────────────────────────────────────────────
|
||||
|
||||
CREATE TABLE IF NOT EXISTS reward_pool (
|
||||
id UUID PRIMARY KEY,
|
||||
category VARCHAR(50) NOT NULL,
|
||||
content TEXT NOT NULL,
|
||||
emoji VARCHAR(10),
|
||||
rarity VARCHAR(20) DEFAULT 'common'
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS user_rewards (
|
||||
id UUID PRIMARY KEY,
|
||||
user_uuid UUID REFERENCES users(id) ON DELETE CASCADE,
|
||||
reward_id UUID REFERENCES reward_pool(id) ON DELETE CASCADE,
|
||||
earned_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
context VARCHAR(50)
|
||||
);
|
||||
|
||||
-- ── User Preferences ──────────────────────────────────────
|
||||
|
||||
CREATE TABLE IF NOT EXISTS user_preferences (
|
||||
id UUID PRIMARY KEY,
|
||||
user_uuid UUID REFERENCES users(id) ON DELETE CASCADE UNIQUE,
|
||||
sound_enabled BOOLEAN DEFAULT FALSE,
|
||||
haptic_enabled BOOLEAN DEFAULT TRUE,
|
||||
show_launch_screen BOOLEAN DEFAULT TRUE,
|
||||
celebration_style VARCHAR(50) DEFAULT 'standard',
|
||||
timezone_offset INTEGER DEFAULT 0,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- ── Step Results (per-step tracking within sessions) ───────
|
||||
|
||||
CREATE TABLE IF NOT EXISTS routine_step_results (
|
||||
id UUID PRIMARY KEY,
|
||||
session_id UUID REFERENCES routine_sessions(id) ON DELETE CASCADE,
|
||||
step_id UUID REFERENCES routine_steps(id) ON DELETE CASCADE,
|
||||
step_index INTEGER NOT NULL,
|
||||
result VARCHAR(20) NOT NULL,
|
||||
duration_seconds INTEGER,
|
||||
completed_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- ── Medications ─────────────────────────────────────────────
|
||||
|
||||
CREATE TABLE IF NOT EXISTS medications (
|
||||
|
||||
63
config/seed_rewards.sql
Normal file
63
config/seed_rewards.sql
Normal file
@@ -0,0 +1,63 @@
|
||||
-- Seed data for reward_pool
|
||||
-- Categories: affirmation, fact, milestone, visual
|
||||
-- Rarities: common (70%), uncommon (25%), rare (5%)
|
||||
|
||||
-- ── Affirmations (common) ──────────────────────────────────
|
||||
|
||||
INSERT INTO reward_pool (id, category, content, emoji, rarity) VALUES
|
||||
('a0000001-0000-0000-0000-000000000001', 'affirmation', 'You''re someone who follows through.', '💪', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000002', 'affirmation', 'Consistency looks good on you.', '✨', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000003', 'affirmation', 'Your future self is grateful right now.', '🌱', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000004', 'affirmation', 'That took real effort. You showed up anyway.', '🔥', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000005', 'affirmation', 'Small steps, big change. You''re proving it.', '👣', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000006', 'affirmation', 'You don''t need motivation — you just proved discipline works.', '🎯', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000007', 'affirmation', 'This is what building a life looks like.', '🏗️', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000008', 'affirmation', 'You chose to start. That''s the hardest part.', '🚀', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000009', 'affirmation', 'Progress isn''t always visible. But it''s happening.', '🌊', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000010', 'affirmation', 'You''re writing a new story about yourself.', '📖', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000011', 'affirmation', 'Every time you finish, it gets a little easier.', '📈', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000012', 'affirmation', 'You''re not trying to be perfect. You''re choosing to be consistent.', '💎', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000013', 'affirmation', 'Done is better than perfect. And you got it done.', '✅', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000014', 'affirmation', 'You''re investing in yourself. Best investment there is.', '💰', 'common'),
|
||||
('a0000001-0000-0000-0000-000000000015', 'affirmation', 'That routine? It''s becoming part of who you are.', '🧬', 'common')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ── Fun Facts (common) ─────────────────────────────────────
|
||||
|
||||
INSERT INTO reward_pool (id, category, content, emoji, rarity) VALUES
|
||||
('a0000002-0000-0000-0000-000000000001', 'fact', 'Research shows it takes about 66 days to form a habit. You''re on your way.', '🧪', 'common'),
|
||||
('a0000002-0000-0000-0000-000000000002', 'fact', 'Completing routines releases dopamine — your brain literally rewarded itself just now.', '🧠', 'common'),
|
||||
('a0000002-0000-0000-0000-000000000003', 'fact', 'People who write down their intentions are 42% more likely to achieve them.', '📝', 'common'),
|
||||
('a0000002-0000-0000-0000-000000000004', 'fact', 'Habit stacking works because your brain loves connecting new behaviors to existing ones.', '🔗', 'common'),
|
||||
('a0000002-0000-0000-0000-000000000005', 'fact', 'The "two-minute rule" says: if it takes less than 2 minutes, just do it.', '⏱️', 'common'),
|
||||
('a0000002-0000-0000-0000-000000000006', 'fact', 'Your environment shapes your behavior more than willpower does.', '🏠', 'common'),
|
||||
('a0000002-0000-0000-0000-000000000007', 'fact', 'Identity-based habits stick better: you''re not doing a routine — you''re becoming someone who does.', '🪞', 'common'),
|
||||
('a0000002-0000-0000-0000-000000000008', 'fact', 'Morning routines reduce decision fatigue for the rest of the day.', '☀️', 'common'),
|
||||
('a0000002-0000-0000-0000-000000000009', 'fact', 'Tracking your habits makes you 2-3x more likely to stick with them.', '📊', 'common'),
|
||||
('a0000002-0000-0000-0000-000000000010', 'fact', 'The hardest part of any habit is showing up. You just did that.', '🚪', 'common')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ── Milestones (uncommon) ──────────────────────────────────
|
||||
|
||||
INSERT INTO reward_pool (id, category, content, emoji, rarity) VALUES
|
||||
('a0000003-0000-0000-0000-000000000001', 'milestone', 'First routine of the day — the hardest one is done.', '🌅', 'uncommon'),
|
||||
('a0000003-0000-0000-0000-000000000002', 'milestone', 'You''ve completed every step. Not everyone can say that.', '🏆', 'uncommon'),
|
||||
('a0000003-0000-0000-0000-000000000003', 'milestone', 'Your consistency is building something you can''t see yet.', '🌟', 'uncommon'),
|
||||
('a0000003-0000-0000-0000-000000000004', 'milestone', 'Most people quit by now. You didn''t.', '⚡', 'uncommon'),
|
||||
('a0000003-0000-0000-0000-000000000005', 'milestone', 'You''re outpacing yesterday. That''s all that matters.', '🏃', 'uncommon'),
|
||||
('a0000003-0000-0000-0000-000000000006', 'milestone', 'This routine is becoming automatic. That''s the goal.', '⚙️', 'uncommon'),
|
||||
('a0000003-0000-0000-0000-000000000007', 'milestone', 'Showing up repeatedly takes courage. Respect.', '🫡', 'uncommon'),
|
||||
('a0000003-0000-0000-0000-000000000008', 'milestone', 'You''re building trust with yourself, one routine at a time.', '🤝', 'uncommon'),
|
||||
('a0000003-0000-0000-0000-000000000009', 'milestone', 'Another day, another win. Stack ''em up.', '🧱', 'uncommon'),
|
||||
('a0000003-0000-0000-0000-000000000010', 'milestone', 'You showed up when it would''ve been easy not to. That''s character.', '💫', 'uncommon')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ── Visual (rare) ──────────────────────────────────────────
|
||||
|
||||
INSERT INTO reward_pool (id, category, content, emoji, rarity) VALUES
|
||||
('a0000004-0000-0000-0000-000000000001', 'visual', 'Rare reward! You unlocked the sparkle celebration.', '🎆', 'rare'),
|
||||
('a0000004-0000-0000-0000-000000000002', 'visual', 'Rare reward! You unlocked the rainbow celebration.', '🌈', 'rare'),
|
||||
('a0000004-0000-0000-0000-000000000003', 'visual', 'Rare reward! You unlocked the fireworks celebration.', '🎇', 'rare'),
|
||||
('a0000004-0000-0000-0000-000000000004', 'visual', 'Rare reward! You unlocked the cosmic celebration.', '🌌', 'rare'),
|
||||
('a0000004-0000-0000-0000-000000000005', 'visual', 'Rare reward! You unlocked the golden celebration.', '👑', 'rare')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
310
config/seed_templates.sql
Normal file
310
config/seed_templates.sql
Normal file
@@ -0,0 +1,310 @@
|
||||
-- Seed templates for Synculous
|
||||
-- Designed for ADHD: two-minute-rule entry points, 4-7 steps max,
|
||||
-- zero-shame language, concrete instructions, realistic durations.
|
||||
-- Run with: psql -U user -d database -f config/seed_templates.sql
|
||||
|
||||
-- Clean slate (idempotent re-seed)
|
||||
DELETE FROM routine_template_steps;
|
||||
DELETE FROM routine_templates;
|
||||
|
||||
|
||||
-- ================================================================
|
||||
-- 1. Morning Launch
|
||||
-- ================================================================
|
||||
-- The hardest transition of the day. First step is literally just
|
||||
-- sitting up — two-minute rule. Each step cues the next physically.
|
||||
|
||||
INSERT INTO routine_templates (id, name, description, icon, created_by_admin) VALUES
|
||||
('a1b2c3d4-0001-0001-0001-000000000001',
|
||||
'Morning Launch',
|
||||
'Get from bed to ready. Starts small — just sit up.',
|
||||
'☀️', true);
|
||||
|
||||
INSERT INTO routine_template_steps (id, template_id, name, instructions, step_type, duration_minutes, position) VALUES
|
||||
('b2c3d4e5-0001-0001-0001-000000000001', 'a1b2c3d4-0001-0001-0001-000000000001',
|
||||
'Sit up', 'Just sit up in bed. Feet on the floor. That counts.', 'generic', 1, 1),
|
||||
('b2c3d4e5-0001-0001-0002-000000000001', 'a1b2c3d4-0001-0001-0001-000000000001',
|
||||
'Water', 'Drink a glass of water. Your brain needs it.', 'generic', 1, 2),
|
||||
('b2c3d4e5-0001-0001-0003-000000000001', 'a1b2c3d4-0001-0001-0001-000000000001',
|
||||
'Face + teeth', 'Splash water on your face. Brush your teeth.', 'generic', 3, 3),
|
||||
('b2c3d4e5-0001-0001-0004-000000000001', 'a1b2c3d4-0001-0001-0001-000000000001',
|
||||
'Get dressed', 'Real clothes on your body. Doesn''t have to be fancy.', 'generic', 3, 4),
|
||||
('b2c3d4e5-0001-0001-0005-000000000001', 'a1b2c3d4-0001-0001-0001-000000000001',
|
||||
'Eat something', 'Even a handful of crackers. Anything with food in it.', 'generic', 5, 5);
|
||||
|
||||
|
||||
-- ================================================================
|
||||
-- 2. Leaving the House
|
||||
-- ================================================================
|
||||
-- The "where are my keys" routine. Externalizes the checklist
|
||||
-- so working memory doesn't have to hold it.
|
||||
|
||||
INSERT INTO routine_templates (id, name, description, icon, created_by_admin) VALUES
|
||||
('a1b2c3d4-0002-0001-0001-000000000002',
|
||||
'Leaving the House',
|
||||
'Everything you need before you walk out the door.',
|
||||
'🚪', true);
|
||||
|
||||
INSERT INTO routine_template_steps (id, template_id, name, instructions, step_type, duration_minutes, position) VALUES
|
||||
('b2c3d4e5-0002-0001-0001-000000000002', 'a1b2c3d4-0002-0001-0001-000000000002',
|
||||
'Phone + wallet + keys', 'Check your pockets or bag. All three there?', 'generic', 1, 1),
|
||||
('b2c3d4e5-0002-0001-0002-000000000002', 'a1b2c3d4-0002-0001-0001-000000000002',
|
||||
'Check the weather', 'Quick glance. Do you need a jacket or umbrella?', 'generic', 1, 2),
|
||||
('b2c3d4e5-0002-0001-0003-000000000002', 'a1b2c3d4-0002-0001-0001-000000000002',
|
||||
'Grab what you need', 'Bag, lunch, water bottle, charger — whatever applies.', 'generic', 2, 3),
|
||||
('b2c3d4e5-0002-0001-0004-000000000002', 'a1b2c3d4-0002-0001-0001-000000000002',
|
||||
'Quick scan', 'Stove off? Lights? Windows? Pets fed?', 'generic', 1, 4),
|
||||
('b2c3d4e5-0002-0001-0005-000000000002', 'a1b2c3d4-0002-0001-0001-000000000002',
|
||||
'Lock up and go', 'You''re ready. Lock the door behind you.', 'generic', 1, 5);
|
||||
|
||||
|
||||
-- ================================================================
|
||||
-- 3. Focus Sprint
|
||||
-- ================================================================
|
||||
-- ADHD-adapted pomodoro. Starts with environment setup (Barkley:
|
||||
-- "at point of performance"). Work block is shorter than classic
|
||||
-- pomodoro because ADHD sustained attention is shorter.
|
||||
|
||||
INSERT INTO routine_templates (id, name, description, icon, created_by_admin) VALUES
|
||||
('a1b2c3d4-0003-0001-0001-000000000003',
|
||||
'Focus Sprint',
|
||||
'One focused work block. Set up your space first.',
|
||||
'🎯', true);
|
||||
|
||||
INSERT INTO routine_template_steps (id, template_id, name, instructions, step_type, duration_minutes, position) VALUES
|
||||
('b2c3d4e5-0003-0001-0001-000000000003', 'a1b2c3d4-0003-0001-0001-000000000003',
|
||||
'Pick one task', 'Just one. Write it down or say it out loud.', 'generic', 1, 1),
|
||||
('b2c3d4e5-0003-0001-0002-000000000003', 'a1b2c3d4-0003-0001-0001-000000000003',
|
||||
'Set up your space', 'Close extra tabs. Silence phone. Clear your desk.', 'generic', 2, 2),
|
||||
('b2c3d4e5-0003-0001-0003-000000000003', 'a1b2c3d4-0003-0001-0001-000000000003',
|
||||
'Work', 'Just the one task. If you get pulled away, come back.', 'timer', 20, 3),
|
||||
('b2c3d4e5-0003-0001-0004-000000000003', 'a1b2c3d4-0003-0001-0001-000000000003',
|
||||
'Break', 'Stand up. Stretch. Water. Look at something far away.', 'timer', 5, 4);
|
||||
|
||||
|
||||
-- ================================================================
|
||||
-- 4. Wind Down
|
||||
-- ================================================================
|
||||
-- Sleep prep. Designed around the actual problem: screens are
|
||||
-- stimulating, the brain won't stop, and the bed isn't "sleepy"
|
||||
-- enough without a transition.
|
||||
|
||||
INSERT INTO routine_templates (id, name, description, icon, created_by_admin) VALUES
|
||||
('a1b2c3d4-0004-0001-0001-000000000004',
|
||||
'Wind Down',
|
||||
'Transition from awake-brain to sleep-brain.',
|
||||
'🌙', true);
|
||||
|
||||
INSERT INTO routine_template_steps (id, template_id, name, instructions, step_type, duration_minutes, position) VALUES
|
||||
('b2c3d4e5-0004-0001-0001-000000000004', 'a1b2c3d4-0004-0001-0001-000000000004',
|
||||
'Screens away', 'Plug your phone in across the room. TV off.', 'generic', 1, 1),
|
||||
('b2c3d4e5-0004-0001-0002-000000000004', 'a1b2c3d4-0004-0001-0001-000000000004',
|
||||
'Dim the lights', 'Overhead off. Lamp or nightlight only.', 'generic', 1, 2),
|
||||
('b2c3d4e5-0004-0001-0003-000000000004', 'a1b2c3d4-0004-0001-0001-000000000004',
|
||||
'Teeth + face', 'Brush teeth, wash face. Quick is fine.', 'generic', 3, 3),
|
||||
('b2c3d4e5-0004-0001-0004-000000000004', 'a1b2c3d4-0004-0001-0001-000000000004',
|
||||
'Get in bed', 'Pajamas on, blankets up. You''re horizontal now.', 'generic', 2, 4),
|
||||
('b2c3d4e5-0004-0001-0005-000000000004', 'a1b2c3d4-0004-0001-0001-000000000004',
|
||||
'Quiet time', 'Read, listen to something calm, or just breathe.', 'timer', 10, 5);
|
||||
|
||||
|
||||
-- ================================================================
|
||||
-- 5. Quick Tidy
|
||||
-- ================================================================
|
||||
-- Not a full cleaning session. Designed to be completable even on
|
||||
-- a bad executive function day. Each step is one area, one action.
|
||||
|
||||
INSERT INTO routine_templates (id, name, description, icon, created_by_admin) VALUES
|
||||
('a1b2c3d4-0005-0001-0001-000000000005',
|
||||
'Quick Tidy',
|
||||
'A fast sweep through the house. Not deep cleaning — just enough.',
|
||||
'✨', true);
|
||||
|
||||
INSERT INTO routine_template_steps (id, template_id, name, instructions, step_type, duration_minutes, position) VALUES
|
||||
('b2c3d4e5-0005-0001-0001-000000000005', 'a1b2c3d4-0005-0001-0001-000000000005',
|
||||
'Trash round', 'Grab a bag. Walk through every room. Toss what''s trash.', 'timer', 3, 1),
|
||||
('b2c3d4e5-0005-0001-0002-000000000005', 'a1b2c3d4-0005-0001-0001-000000000005',
|
||||
'Dishes', 'Everything into the dishwasher or sink. Wipe the counter.', 'timer', 5, 2),
|
||||
('b2c3d4e5-0005-0001-0003-000000000005', 'a1b2c3d4-0005-0001-0001-000000000005',
|
||||
'Put things back', 'Anything out of place goes back where it lives.', 'timer', 5, 3),
|
||||
('b2c3d4e5-0005-0001-0004-000000000005', 'a1b2c3d4-0005-0001-0001-000000000005',
|
||||
'Surfaces', 'Quick wipe on kitchen counter, bathroom sink, one table.', 'timer', 3, 4);
|
||||
|
||||
|
||||
-- ================================================================
|
||||
-- 6. Body Reset
|
||||
-- ================================================================
|
||||
-- For when basic hygiene feels hard. No judgment. Every step is
|
||||
-- the minimum viable version — just enough to feel a little better.
|
||||
|
||||
INSERT INTO routine_templates (id, name, description, icon, created_by_admin) VALUES
|
||||
('a1b2c3d4-0006-0001-0001-000000000006',
|
||||
'Body Reset',
|
||||
'Basic care for your body. Even partial counts.',
|
||||
'🚿', true);
|
||||
|
||||
INSERT INTO routine_template_steps (id, template_id, name, instructions, step_type, duration_minutes, position) VALUES
|
||||
('b2c3d4e5-0006-0001-0001-000000000006', 'a1b2c3d4-0006-0001-0001-000000000006',
|
||||
'Shower or washcloth', 'Full shower or a warm washcloth on face, pits, bits. Both work.', 'generic', 5, 1),
|
||||
('b2c3d4e5-0006-0001-0002-000000000006', 'a1b2c3d4-0006-0001-0001-000000000006',
|
||||
'Teeth', 'Brush for as long as you can. Even 30 seconds matters.', 'generic', 2, 2),
|
||||
('b2c3d4e5-0006-0001-0003-000000000006', 'a1b2c3d4-0006-0001-0001-000000000006',
|
||||
'Deodorant', 'Apply it. Future you says thanks.', 'generic', 1, 3),
|
||||
('b2c3d4e5-0006-0001-0004-000000000006', 'a1b2c3d4-0006-0001-0001-000000000006',
|
||||
'Clean clothes', 'Swap into something fresh. Doesn''t need to match.', 'generic', 2, 4),
|
||||
('b2c3d4e5-0006-0001-0005-000000000006', 'a1b2c3d4-0006-0001-0001-000000000006',
|
||||
'Water + snack', 'Drink something. Eat something. Your body is running on empty.', 'generic', 2, 5);
|
||||
|
||||
|
||||
-- ================================================================
|
||||
-- 7. Unstuck
|
||||
-- ================================================================
|
||||
-- For when you're paralyzed and can't start anything. Pure
|
||||
-- two-minute-rule: the smallest possible actions to build momentum.
|
||||
|
||||
INSERT INTO routine_templates (id, name, description, icon, created_by_admin) VALUES
|
||||
('a1b2c3d4-0007-0001-0001-000000000007',
|
||||
'Unstuck',
|
||||
'Can''t start anything? Start here. Tiny steps, real momentum.',
|
||||
'🔓', true);
|
||||
|
||||
INSERT INTO routine_template_steps (id, template_id, name, instructions, step_type, duration_minutes, position) VALUES
|
||||
('b2c3d4e5-0007-0001-0001-000000000007', 'a1b2c3d4-0007-0001-0001-000000000007',
|
||||
'Stand up', 'That''s it. Just stand. You can sit back down after.', 'generic', 1, 1),
|
||||
('b2c3d4e5-0007-0001-0002-000000000007', 'a1b2c3d4-0007-0001-0001-000000000007',
|
||||
'Move to a different spot', 'Walk to another room. Change your scenery.', 'generic', 1, 2),
|
||||
('b2c3d4e5-0007-0001-0003-000000000007', 'a1b2c3d4-0007-0001-0001-000000000007',
|
||||
'Drink water', 'Fill a glass. Drink it slowly.', 'generic', 1, 3),
|
||||
('b2c3d4e5-0007-0001-0004-000000000007', 'a1b2c3d4-0007-0001-0001-000000000007',
|
||||
'Name one thing', 'Say out loud: "The next thing I will do is ___."', 'generic', 1, 4),
|
||||
('b2c3d4e5-0007-0001-0005-000000000007', 'a1b2c3d4-0007-0001-0001-000000000007',
|
||||
'Do two minutes of it', 'Set a timer. Just two minutes. Stop after if you want.', 'timer', 2, 5);
|
||||
|
||||
|
||||
-- ================================================================
|
||||
-- 8. Evening Reset
|
||||
-- ================================================================
|
||||
-- End-of-day prep so tomorrow morning isn't harder than it needs
|
||||
-- to be. Externalizes "things to remember" before sleep.
|
||||
|
||||
INSERT INTO routine_templates (id, name, description, icon, created_by_admin) VALUES
|
||||
('a1b2c3d4-0008-0001-0001-000000000008',
|
||||
'Evening Reset',
|
||||
'Set tomorrow up to be a little easier.',
|
||||
'🌆', true);
|
||||
|
||||
INSERT INTO routine_template_steps (id, template_id, name, instructions, step_type, duration_minutes, position) VALUES
|
||||
('b2c3d4e5-0008-0001-0001-000000000008', 'a1b2c3d4-0008-0001-0001-000000000008',
|
||||
'Quick kitchen pass', 'Dishes in the sink. Wipe the counter. Done.', 'timer', 5, 1),
|
||||
('b2c3d4e5-0008-0001-0002-000000000008', 'a1b2c3d4-0008-0001-0001-000000000008',
|
||||
'Lay out tomorrow', 'Pick clothes for tomorrow. Put them where you''ll see them.', 'generic', 3, 2),
|
||||
('b2c3d4e5-0008-0001-0003-000000000008', 'a1b2c3d4-0008-0001-0001-000000000008',
|
||||
'Bag check', 'Pack your bag for tomorrow. Keys, wallet, whatever you need.', 'generic', 2, 3),
|
||||
('b2c3d4e5-0008-0001-0004-000000000008', 'a1b2c3d4-0008-0001-0001-000000000008',
|
||||
'Brain dump', 'Write down anything still in your head. Paper, phone, whatever. Get it out.', 'generic', 3, 4),
|
||||
('b2c3d4e5-0008-0001-0005-000000000008', 'a1b2c3d4-0008-0001-0001-000000000008',
|
||||
'Charge devices', 'Phone, headphones, laptop — plug them in now.', 'generic', 1, 5);
|
||||
|
||||
|
||||
-- ================================================================
|
||||
-- 9. Move Your Body
|
||||
-- ================================================================
|
||||
-- Not "exercise." Movement. The entry point is putting shoes on,
|
||||
-- not "work out for 30 minutes." Anything beyond standing counts.
|
||||
|
||||
INSERT INTO routine_templates (id, name, description, icon, created_by_admin) VALUES
|
||||
('a1b2c3d4-0009-0001-0001-000000000009',
|
||||
'Move Your Body',
|
||||
'Not a workout plan. Just movement. Any amount counts.',
|
||||
'🏃', true);
|
||||
|
||||
INSERT INTO routine_template_steps (id, template_id, name, instructions, step_type, duration_minutes, position) VALUES
|
||||
('b2c3d4e5-0009-0001-0001-000000000009', 'a1b2c3d4-0009-0001-0001-000000000009',
|
||||
'Shoes on', 'Put on shoes you can move in. This is the commitment step.', 'generic', 1, 1),
|
||||
('b2c3d4e5-0009-0001-0002-000000000009', 'a1b2c3d4-0009-0001-0001-000000000009',
|
||||
'Step outside', 'Open the door. Stand outside for a second. Feel the air.', 'generic', 1, 2),
|
||||
('b2c3d4e5-0009-0001-0003-000000000009', 'a1b2c3d4-0009-0001-0001-000000000009',
|
||||
'Move for 10 minutes', 'Walk, jog, dance, stretch — whatever your body wants.', 'timer', 10, 3),
|
||||
('b2c3d4e5-0009-0001-0004-000000000009', 'a1b2c3d4-0009-0001-0001-000000000009',
|
||||
'Cool down', 'Slow walk or gentle stretching. Let your heart rate settle.', 'timer', 3, 4),
|
||||
('b2c3d4e5-0009-0001-0005-000000000009', 'a1b2c3d4-0009-0001-0001-000000000009',
|
||||
'Water', 'Drink a full glass. You earned it.', 'generic', 1, 5);
|
||||
|
||||
|
||||
-- ================================================================
|
||||
-- 10. Sunday Reset
|
||||
-- ================================================================
|
||||
-- Weekly prep. Slightly longer, but broken into small concrete
|
||||
-- chunks. Prevents the "where did the week go" spiral.
|
||||
|
||||
INSERT INTO routine_templates (id, name, description, icon, created_by_admin) VALUES
|
||||
('a1b2c3d4-0010-0001-0001-000000000010',
|
||||
'Sunday Reset',
|
||||
'Set up the week ahead so Monday doesn''t ambush you.',
|
||||
'📋', true);
|
||||
|
||||
INSERT INTO routine_template_steps (id, template_id, name, instructions, step_type, duration_minutes, position) VALUES
|
||||
('b2c3d4e5-0010-0001-0001-000000000010', 'a1b2c3d4-0010-0001-0001-000000000010',
|
||||
'Check the calendar', 'Open your calendar. What''s happening this week? Anything you need to prepare for?', 'generic', 3, 1),
|
||||
('b2c3d4e5-0010-0001-0002-000000000010', 'a1b2c3d4-0010-0001-0001-000000000010',
|
||||
'Laundry', 'Start a load. You can fold it later — just get it in the machine.', 'generic', 3, 2),
|
||||
('b2c3d4e5-0010-0001-0003-000000000010', 'a1b2c3d4-0010-0001-0001-000000000010',
|
||||
'Restock check', 'Meds, groceries, toiletries — anything running low?', 'generic', 3, 3),
|
||||
('b2c3d4e5-0010-0001-0004-000000000010', 'a1b2c3d4-0010-0001-0001-000000000010',
|
||||
'Tidy living space', 'Flat surfaces first. Then floor. Good enough is good enough.', 'timer', 10, 4),
|
||||
('b2c3d4e5-0010-0001-0005-000000000010', 'a1b2c3d4-0010-0001-0001-000000000010',
|
||||
'Plan meals', 'Even "Monday: leftovers, Tuesday: pasta" counts. Don''t overthink it.', 'generic', 5, 5),
|
||||
('b2c3d4e5-0010-0001-0006-000000000010', 'a1b2c3d4-0010-0001-0001-000000000010',
|
||||
'Rest', 'Done. The week is a little more ready for you now.', 'generic', 1, 6);
|
||||
|
||||
|
||||
-- ================================================================
|
||||
-- 11. Cooking a Meal
|
||||
-- ================================================================
|
||||
-- Not "meal prep for the week." One meal. Broken down so the
|
||||
-- activation energy is low and the sequence is externalized.
|
||||
|
||||
INSERT INTO routine_templates (id, name, description, icon, created_by_admin) VALUES
|
||||
('a1b2c3d4-0011-0001-0001-000000000011',
|
||||
'Cook a Meal',
|
||||
'One meal, start to finish. Just follow the steps.',
|
||||
'🍳', true);
|
||||
|
||||
INSERT INTO routine_template_steps (id, template_id, name, instructions, step_type, duration_minutes, position) VALUES
|
||||
('b2c3d4e5-0011-0001-0001-000000000011', 'a1b2c3d4-0011-0001-0001-000000000011',
|
||||
'Pick something to make', 'Choose one thing. Keep it simple. Eggs, pasta, a sandwich — anything.', 'generic', 1, 1),
|
||||
('b2c3d4e5-0011-0001-0002-000000000011', 'a1b2c3d4-0011-0001-0001-000000000011',
|
||||
'Get ingredients out', 'Pull everything onto the counter before you start.', 'generic', 2, 2),
|
||||
('b2c3d4e5-0011-0001-0003-000000000011', 'a1b2c3d4-0011-0001-0001-000000000011',
|
||||
'Prep', 'Chop, measure, open cans — get everything ready to cook.', 'generic', 5, 3),
|
||||
('b2c3d4e5-0011-0001-0004-000000000011', 'a1b2c3d4-0011-0001-0001-000000000011',
|
||||
'Cook', 'Heat it, combine it, let it do its thing.', 'timer', 15, 4),
|
||||
('b2c3d4e5-0011-0001-0005-000000000011', 'a1b2c3d4-0011-0001-0001-000000000011',
|
||||
'Eat', 'Sit down. Eat the food. You made this.', 'generic', 10, 5),
|
||||
('b2c3d4e5-0011-0001-0006-000000000011', 'a1b2c3d4-0011-0001-0001-000000000011',
|
||||
'Rinse dishes', 'Just rinse and stack. Full cleaning can wait.', 'generic', 2, 6);
|
||||
|
||||
|
||||
-- ================================================================
|
||||
-- 12. Errand Run
|
||||
-- ================================================================
|
||||
-- Externalizes the "I have errands but I keep not doing them"
|
||||
-- problem. Forces the plan into concrete sequential steps.
|
||||
|
||||
INSERT INTO routine_templates (id, name, description, icon, created_by_admin) VALUES
|
||||
('a1b2c3d4-0012-0001-0001-000000000012',
|
||||
'Errand Run',
|
||||
'Get out, do the things, come home. One trip.',
|
||||
'🛒', true);
|
||||
|
||||
INSERT INTO routine_template_steps (id, template_id, name, instructions, step_type, duration_minutes, position) VALUES
|
||||
('b2c3d4e5-0012-0001-0001-000000000012', 'a1b2c3d4-0012-0001-0001-000000000012',
|
||||
'Write the list', 'Every stop, every item. Write it all down right now.', 'generic', 3, 1),
|
||||
('b2c3d4e5-0012-0001-0002-000000000012', 'a1b2c3d4-0012-0001-0001-000000000012',
|
||||
'Plan the route', 'Put the stops in order so you''re not zigzagging.', 'generic', 2, 2),
|
||||
('b2c3d4e5-0012-0001-0003-000000000012', 'a1b2c3d4-0012-0001-0001-000000000012',
|
||||
'Grab essentials', 'Keys, wallet, phone, bags, list. Ready?', 'generic', 2, 3),
|
||||
('b2c3d4e5-0012-0001-0004-000000000012', 'a1b2c3d4-0012-0001-0001-000000000012',
|
||||
'Do the errands', 'Follow the list. Check things off as you go.', 'generic', 30, 4),
|
||||
('b2c3d4e5-0012-0001-0005-000000000012', 'a1b2c3d4-0012-0001-0001-000000000012',
|
||||
'Put things away', 'Groceries away, returns sorted, bags emptied. Then you''re done.', 'generic', 5, 5);
|
||||
Reference in New Issue
Block a user