Craft

Main quests and fun experiments. Code, art, and community Happy

My main project now is Lifelong Habit, a habit app for people who want to focus on long-term habit formation and detailed insights. Most of the things I’ve made and played around with circle back to self-development, with some funsies and whimsies here and there. Open to work and collaborations!~ Starfish

Mar 30 – Apr 5Week 22 of 27
Sun, Apr 5
  • fix: TRYING to fix bento validation, added console logslifelong-habit-app16:21
  • refactor: fix bento card validation bug and changed it from inline description to a modallifelong-habit-app14:10
  • refactor: rename profile to settingslifelong-habit-app09:10
  • refactor: remove hardcoded styling in profile tablifelong-habit-app08:38
  • refactor: made GroupedCard inherit styles from profile Styleslifelong-habit-app03:57
  • refactor(profile): unify sub-screen layout, card tier, and styleslifelong-habit-app03:46
Sat, Apr 4
  • refactor: added account-info page for /profile tablifelong-habit-app17:09
  • chore: clean empty fileslifelong-habit-app15:45
  • chore: update supabase migrationlifelong-habit-app15:44
  • refactor: fix layer placement across types, utils, and serviceslifelong-habit-app14:52
  • refactor: clean hooks, lib, and utils directorieslifelong-habit-app13:45
  • chore: put .zsh in git ignore, deleted unused fileslifelong-habit-app13:39
Fri, Apr 3
  • refactor: audit hook directory (renaming, splitting, and moving to utils for pure logic)lifelong-habit-app14:11
  • refactor: remove stale fields and consolidate seed runnerlifelong-habit-app11:17
  • chore: update supabase dependencylifelong-habit-app10:35
  • chore: remove archive fileslifelong-habit-app10:33
  • feat: persist checked_component_ids for Bento habitslifelong-habit-app09:14
  • refactor: added intensity_percent and fixed bugs in bento habit cardlifelong-habit-app00:00
Thu, Apr 2
  • refactor: added map cache for static habit field in useDashboard, added updated_at field (Supabase done)lifelong-habit-app17:08
  • refactor: updated Ladder configuration to allow tracking levels (it was only floor and ceiling without levels in between before)lifelong-habit-app08:44
Wed, Apr 1
  • chore: remove old console.log for cleaner logslifelong-habit-app14:42
  • fix: fixed snowball habit percentage buglifelong-habit-app14:39
  • refactor: added KeyboardAvoidingView function on top of ScrollViewlifelong-habit-app14:36
  • refactor: make HabitCard modularlifelong-habit-app12:03
  • feat" `useLastLoggedValues` query hook. New file: `hooks/queries/useLastLoggedValues.ts` Single Supabase query, returns `Record<habitId, { valueLogged: number | null, runLevel: number | null }>`. Cached under `['last_logged_values', userId]`. Invalidated by `useLogHabit`, `useUnlogHabit`, `useBackdateHabit` on success.lifelong-habit-app11:07
  • fix: invalidate 'all_habit_day_states" query to fix mark incomplete not functioning in habits from previous logslifelong-habit-app10:41
Tue, Mar 31
  • fix: debugged "mark complete" button (it didn't function before, somehow it does, so let's keep the console log for now)lifelong-habit-app13:09
  • chore: updated tailwind config to point to the new directory structurelifelong-habit-app12:38
  • chore: updated comment pathslifelong-habit-app12:12
  • refactor: migrate to feature-domain architecturelifelong-habit-app11:25
  • fix: fixed rolling calendar buglifelong-habit-app08:25
  • refactor: refactor code flagged by eslintlifelong-habit-app07:30
  • refactor: replaced code to align with eslint and constant stylinglifelong-habit-app05:39
  • refactor: added screenTitle, emptyStateTitle, badgeLabel, and rowMeta in textStyles and refactored app\(app) files to align with itlifelong-habit-app05:29
  • chore: moved old documents to archive directorylifelong-habit-app03:19
  • fix: added missing onCreateHabit in interface (it was already destructured in function body but missing from the interface)lifelong-habit-app01:41
Mon, Mar 30
  • refactor: removed delete yesterday featurelifelong-habit-app17:13
  • chore: changed library to inactive-habits to avoid confusionlifelong-habit-app17:02
  • fix: changed StartOfWeek to be grouped row and added more days as optionslifelong-habit-app16:56
  • fix: fixed timestamp bug which returned previous habits empty (sliced the time first and made apple to apple comparison ((YYYY-MM-DD to YYYY-MM-DD))lifelong-habit-app16:12
  • refactor: made profile tab modularlifelong-habit-app16:08
  • refactor: change lineHeight for displayXL font (the 'g' letter was cropped)lifelong-habit-app15:35
  • refactor: made index tab modularlifelong-habit-app13:23
  • refactor: changed from rolling calendar to fixed-week paginationlifelong-habit-app13:23
  • feat: added toggle to set the start day of the weeklifelong-habit-app13:20
  • style: fixed progress tab layoutlifelong-habit-app13:18
  • feat: added progress tab and screenLayout to standardize the formatting among tabslifelong-habit-app12:34
  • style: changed padding gapslifelong-habit-app08:38
  • refacator: moved Viewing label and added margin bottomlifelong-habit-app08:37
  • refactor: moved rolling calendar to the toplifelong-habit-app07:35
  • refactor: modified email templateslifelong-habit-app04:50