/habitgrid

A habit tracker inspired by github's contribution graph

Primary LanguageBlade

Habit Grid

A habit tracker inspired by github's contributions graph.

This is a work in progress, we are building it on stream:

🎥 Tune in on Twitch

UP NEXT

  • Fix user scoping on dashboard
  • Fix bug where habits are double marked

Future Feature Ideas

  • Accent color setting in user profile to change brand colors
  • Support multiple stacked toast messages if you smash on a button
  • Add notes a given track
  • Add support for tracking specific units when completing
  • Put recent dates on the day grid first at mobile size
  • Add "mini grid" of recent month/weeks on habit index view
  • Habit leaderboards
  • Group habit tracking (like a team goal tracker)
  • Public habit pages / toggle visibility
  • Challenge friends to a habit battle

Done

  • Fix registration redirect bug
  • Decide on a name -- Habit Grid it is -- habitgrid.com
  • Support tracking units when a habit completed
  • Design logo & landing page
  • Finish hero text contrast / gradient
  • Finish footer layout and styling
  • Make landing page mobile friendly
  • Launch it!
  • Flash messages / toast notification components with Alpine JS
  • Build profile component
  • Build remove photo feature
  • Make the photo circle a component of its own so they both update when it changes
  • Add change password feature
  • Fixed create form bug
  • Paginate habits index page with livewire
  • Upgrade to Livewire 2.x and Laravel 8.x
  • Fix performance issue (it was debugbar + tooltip component having many views 😅)
  • Explore replacing some events with $wire / entangle
  • Convert habit controller to livewire components
  • Build habit create form
  • Build tooltip when hovering over a given day on the grid
  • Fix bug in grid display to sort by start of week (startOfWeek() in carbon?)
  • Add a way to track a habit for a certain day
  • Show grid filled in for days with a habit tracked
  • Differentiate colors based on how many habits were done
  • Build the "legend"
  • Fix responsiveness of day grid
  • Write some tests for day grid component
  • Navigate between days easily (prev/next buttons)
  • Habit edit form
  • Optionally scope day grid to a single habit for details page
  • Make "stream" badge dynamic (or try)
  • Improve current streak relation so we don't need first
  • Fix current streak query (date calculation is off)
  • Adjust streak query to only look for days prior to today
  • Add streak to livewire component? Nested components? 🤔
  • At mobile size, put toggle buttons in a popup, also make dots bigger?
  • Make stat tiles dynamic / decide what to do with them
  • Refactor how the day grid handles the habit ID
  • Refactor how the selected / week days work within week-view
  • Add loading state when changing days
  • Finish hooking up tracking data to week tiles
  • Combine dashboard and habits index and make create form toggleable
  • Build navbar + responsive version
  • Make proper dashboard page with stat tiles
  • Upgrade TailwindCSS to 1.7 🚀
  • Fix modal margin bug at mobile size
  • Fix "tracked in past week" to get total habits, not tracks
  • Fix tooltip alignment
    • Add additional info about which habits are tracked
  • User authentication
    • Build a way to log out
    • Build a login form
    • Add validation to register and login forms
    • Add a confirmation dialog to log out button with alpine
  • Finish scoping of user system
  • Add account credentials not found error to login component + link to register
  • Fix tests