Show HN: A free minimalist daily habit tracker

rdht.vercel.app

158 points by pixd 14 days ago

Hello.

I was looking for a simple and clean habit tracker. I went through a few apps but felt they were missing something. I also had some time on my hands, so decided to make my own and share it in case anyone else likes it.

Some of the supported features:

Streaks based, track and beat your longest streaks

Fully useable offline

Freezes (similar to Duolingo's streak freezes)

Visual map for tracking consistency

Pause the app when you need a break or will be away

For anyone curious about the tech stack: - React for frontend - Dexie cloud for storage and syncing - Vercel for hosting

Link: [https://rdht.vercel.app/]

RockRobotRock 13 days ago

Like the design. Personally I think the barrier for a project deserving a domain is pretty low.

"Try for free" is ominous. If you have a paid plan, please have that on the home page. Otherwise, I wouldn't use that wording.

  • tempcommenttt 13 days ago

    That. When a page says “try” and “for free” in connection, I always research the hidden real long time cost before trying. If I can’t find it, I usually leave or Google to find out if the costs have been mentioned somewhere else.

  • pixd 13 days ago

    Thanks for the feedback, I updated the text.

    My intention behind "try for free" was to keep the barrier for trying out the app low. But I didn't realize that it would also imply a hidden price or some premium level

dylanwenzlau 13 days ago

Not sure how much or if this had influence from Guava at all, but I wanted to share the link since we've been around about 3 years and Guava is both free to track and seemingly a superset, except for explicit streak tracking: guavahealth.com

Streak tracking seemed more of a vanity non-health-related aspect so we've left it out so far.

Computing statistical insights based on arbitrary pairings of lifestyle habits is a big feature for many people

  • DavyJone 12 days ago

    > Not sure how much or if this had influence from Guava at all

    I don't see any similarity between the two that would lead me to believe that there is influence. Why do you mention this?

    This seems like a plug to your product more than anything else.

timnetworks 13 days ago

Add a thing for bad habits too, and run the streak inverted. The more times you don't click the better.

  • smcin 4 days ago

    Or else make the bad habit a reward that has to be earned in some formula you specify, e.g. "walk 10,000 steps/500 calories to earn 1 beer/hamburger/donut".

  • tbihl 13 days ago

    Maybe just put 'refrain' in front of bad thing for the time being.

    • thih9 12 days ago

      “Refrain from going to bed late” makes me think of an alternative solution, not going to bed at all.

      Then again, I could reframe the goal and be more specific, e.g.: “go to bed early”.

nerbitz 13 days ago

Unusable on iPhone 13 mini. Couldn’t log in as the OTO entry screen was not visible.

  • pixd 13 days ago

    Thanks for the feedback! I'll have to debug for safari, not sure what the issue is

  • pixd 13 days ago

    ios issues should be fixed now. there was a problem with the zoom in and overflow for safari

  • lawgimenez 13 days ago

    Also on iPhone 12, otp not visible.

coreyburnsdev 13 days ago

Surprised nobody mentioned the two low resolution images on the front page. (my habits and the email input at the bottom).

Curious why you wouldn't just put the actual component there rather than a fuzzy-screen shot of them?

  • pixd 13 days ago

    I guess they get fuzzy on some different devices. When I was making it, picture was like the first thing I thought of so I just went with that. but definitely having the component there sounds way better

binary132 13 days ago

Nice! Something I’ve been noticing lately is that I’ll see something interesting like this, maybe leave a comment or try it out, and tab away and it’s as good as gone, even if I save it to my Telegram saves, or any other list — there’s just so much time-linear content coming in and past my mind that’s very easy to lose again unless something really grabs my attention and energy for a while, and offers something to look forward to tomorrow. Call it ADD or whatever you want, but there is simply too much content / information, even if it’s all useful and good and non-spammy.

Something along the lines of your app could possibly help “de-linearize” (?) things into a daily timeline or mindspace — I think everyone’s become so used to the timeline conditioning that it can be pretty harmful, really. Not sure what to do with all that.

criddell 13 days ago

This is really nicely done. It looks great and is very responsive. I have some things I track that aren’t daily so it doesn’t work for me, but I like that you didn’t build an app with a billion options.

Are you on the free plan for Dexie? How many users do you think you can support with the 100MB limit?

  • pixd 13 days ago

    yes im on the free tier. not really sure how many users can be supported on it. unfortunately the cloud manager doesn't show me how much data is currently being used

    • criddell 12 days ago

      You might want to establish a policy for abandoned lists. If somebody hasn’t used the daily tracker for a month, delete it. I know lots of people like me set up a tracker just to see how it works and realistically, I’m not going to be back again.

jasalt 13 days ago

This was cool, looks quite nice and polished.

I also made a quick activity tracker app recently but went with Django, Bootstrap and HTMX. Used it myself for few weeks but then moved on with other stuff. Can't seem to keep up using such app personally.

Cleaned up the readme just now and added a demo video https://codeberg.org/jasalt/tracker. Should be quick to setup with Sqlite locally. I've had it running on Fly.io (free) and connecting to Postgres on a some toy VPS.

Far from a finished thing but maybe can inspire someone.

ralferoo 12 days ago

I wonder how useful other people find streaks as a motivational tool. I'm interested in this, because I feel like I should add this to my own app because other apps do, so I guess some people must find benefit, but personally dislike them.

I can see they provide a great incentive to not miss a day when you've built up a very long streak - years ago, I'd built up well over 1000 day streak on an app, and sure it did motivate me on some of the days when I used the app for a token amount rather than losing the streak.

But then the inverse was true - when I finally missed a day, not because of laziness, but because I had 24 hours of flights and travelling 13 hours forward in timezones (UK to NZ), and crucially no internet access in the middle airport, I lost my streak progress. That was it, back to 0, through no fault of my own. At that point, I thought "Do I really want to use this app for another 3 years to regain my streak? Every day will be a reminder that I lost that streak unfairly..." and I thought about all the minor niggles I had with the app, and just stopped using it entirely after that.

I think maybe there's a better ground, like maybe a 2 day penalty, a week penalty, maybe a month... I'm not sure what would actually work well for motivation while not unfairly penalising accidents. But people travel, people get sick, people have unavoidable family situations. Routine and habits are good, but not more important than real life.

As a humorous note, the screenshot that prompted me to ask this question looks faked! The "Walk Daily" has 71 checks and a longest streak of 53 and a current streak of 34. If he's had a longest streak and then a break, sure the total check count must be at least 87? There's another picture of it with 503 checks, longest streak 450 and a streak of 432. Again, this seems broken and/or fake. I note that this app also has the concept of "streak freeze" that gets automatically applied - so it looks like it just records it rather than it being a penalty. EDIT: Just read via the github that the streak freeze is based on Duolingo's which seems to have a lot of discussion around it, and which also seems to be doing a bunch of weird things with freezes, but the key point is that you buy or earn them in advance and they get consumed as you miss a day.

  • pixd 12 days ago

    I also think steaks can be a good motivator, but it can be quite demotivating if you accidentally lose a long streak. That was the idea with the freezes, to still have the motivation element but try to cut out any of the annoyances that come with streak. They get automatically used, but as long as you complete at least one day before they run out, the number of freezes reset.

    In terms of your situation when you had to travel, you could also pause the app. That way when you get back, you'd pick up right where you left off without losing anything. I don't think these ideas cover every scenario, so there may still be room for improvement

constantinum 13 days ago

On a side note, The only habit tracker that has worked me is BEEMINDER.

  • binary132 13 days ago

    Beeminder reliably makes me spend money on Beeminder. :)

  • jackstraw14 13 days ago

    Ever made a side bet with yourself to remove the middleman?

davewasthere 13 days ago

Quick bug.

As an unauthed user, add a habit. Then log in. Habit has disappeared. (but can create habits, which then sync just fine to other devices)

I guess I was expecting my unauthed user habit to persist after logging in.

  • edgarvaldes 13 days ago

    I did it before your comment. My habit persists. Firefox on Android if that matters.

kecupochren 13 days ago

You can use 16px font size on mobile so the browser won't zoom in to the text field.

  • pixd 13 days ago

    Thank you! this should be fixed, I didn't realize ios had a zoom in feature like this. There was also an issue with the overflow not working on ios, which is also fixed

BolexNOLA 13 days ago

As someone with ADHD “streak freezes” are a thing I never knew I needed, wow. I’ve tried so many gamified habit things and the anxiety over potentially missed dopamine is just so present no matter how old or “wise” I become.

Excited to try this out

  • pixd 12 days ago

    Thanks! I wanted to have something that could serve as motivation but not detract from the idea of building consistent habits and this does seem to work well

shadowmourne 13 days ago

Had to create an account to say this is a good free app.

What's your plan to keep it up and running? Key concern from non-technical people such as myself is longevity of new apps like this.

  • pixd 13 days ago

    Thank you! The hosting and storage solutions are free forever so they'll stay up. Even if those get shutdown or something (unlikely), the app works fully offline so you'd still be able to use it

    • shadowmourne 13 days ago

      Awesome! As someone who struggle to do deep work, this is very helpful, i've tried many habit trackers already, most of them with paywall, and this one is quite straight to the point with no BS.

      Simple functionalities, add habit, describe, DO, repeat.

      This is a good use of software skills. Excellent job!

willlma 12 days ago

Is the assumption that you do these things once a day? Any way to edit the frequency? I'd like to do things every other day, once a week, once a month, etc.

  • pixd 12 days ago

    Currently yes. The main idea was to have something to build good small habits that you do daily. So no current way to change frequency.

    You could technically do up to every 4 days since you'll still be able to keep your streaks using the freezes

8mobile 12 days ago

Hi, wow I love the notion minimal style design. Where is the data saved? Are there any limitations in use? Congratulations on the habit tracker you created.

  • pixd 12 days ago

    Thank you! The data is always stored locally in your browser using IndexedDB.

    If you login, it'll sync your local data with a remote server. I am currently using the free tier subscription for this syncing. May need to upgrade later on

purple-leafy 13 days ago

Nice. I see the GitHub style tracker alot lately

edgarvaldes 13 days ago

Nice and clean. I would love a collapsed view of the habits. How does the offline mode works? Any monetization plans?

  • pixd 13 days ago

    That's a great idea, thanks.

    The data is stored locally on the browser using IndexedDB so everything works offline. If you login, it'll sync your data with a remote server.

    I haven't really thought about monetization as this primarily started as just a tool for myself. Might have to give it some though but not sure what I would monetize

  • gibolt 13 days ago

    Agreed. Being able to see more than 1.5 tasks on a page would be an improvement.

    It would also be nice to have some indicator (at the top) that all tasks for the day have been completed.

xon94010 13 days ago

Trying to add a check in the past but the calendar shows up but can't select a date. Using chrome.

  • pixd 12 days ago

    The calendar let's you mark days from one the habit was created, instead of any day in the past

getcrunk 13 days ago

Great idea!

Doesn’t work well on mobile safari

  • pixd 13 days ago

    Thanks!

    I'll spend some time debugging on safari and see what the issue is

thomasfromcdnjs 13 days ago

This is perfect, I've been wanting something like this forever.

  • pixd 13 days ago

    That's great to hear. Thanks!

tremarley 13 days ago

Those are features I’ve always been looking for in a tracker

pixd 13 days ago

Edit: issues on ios should be fixed now

indienico 12 days ago

Are you planning to launch an app?

  • pixd 12 days ago

    I haven't really thought about launching an app. Currently you could download the webpage as an app on your home screen. I wonder if a native app would be more useful

FrancoisBosun 13 days ago

I use an iPhone 12 mini. In portrait mode, the site was nearly unusable. I would add a habit, and the keyboard covered up the description field. There was no way for me to scroll the page to get the description field. Fortunately, the iOS keyboard has a next field button which I could click and hello me to entered the habit description.

I too like the clean design and wish you good luck.

  • pixd 13 days ago

    The scroll and zoom issues on ios should now be fixed

apantel 13 days ago

This seems quite broken on iPhone (iPhone 12, iOS 17, Safari browser). Trying to add a task ends up blowing the model up too big and it’s impossible to scroll to or even see the button to add the task.

elflaune 13 days ago

I just want to put out Loop Habit Tracker ( https://github.com/iSoron/uhabits ). Its open source, ad free and has the option to start the day at 3 am. I am very happy with this solution.

  • user_7832 13 days ago

    Loop is an all time classic. Just wish it supported other platforms too.

skkap 13 days ago

Nice work on this habit tracker! Love the clean design and the GitHub-like year widget. It's awesome that it works without registration!

I am also building a habit tracker ( https://mygoodweek.com ). Similar story, none of the existing options were satisfactory~ It tracks habits automatically from Google Calendar events and lets you check habits manually too. It would be cool to get your thoughts!

  • kmarc 13 days ago

    This looks like a product a lot of effort and thought went into, including a consistent graphical design. Congrats!

    The style that was chosen, to me is deeply unsettling. These Well-lit, colourful, rounded, smooth 3D objects remind me of a chaotic, visually complex and triggering while trying-to-be-baby-safe environment, and indeed puts me into thinking the exact opposite of what I'd want to achieve with this product (which is eliminating chaos, and get my adult daily life sorted out).

    Note that this is rather a weird angle and not a criticism of your product. I'm pretty sure it's only me, or at most a handful of people who are triggered into this state of mind. I found it interesting.

    • ziggyzecat 13 days ago

      I didn't even try to dive into why I left the page within 20 seconds.

      > visually complex and triggering while trying-to-be-baby-safe environment resonates perfectly, though.

      On a side note: sorting adult daily lives out needs to embrace and make space for the inner child. I observe it everywhere at the moment: parents, old friends, even in my younger brother and myself. An unhealthy kind of stress, burnout and depression build up if you don't.

      • kmarc 13 days ago

        No science here, but...

        Isn't it munching on ice cream at 10pm, video games, and other indulges are for that? Also at work, I am (thankfully) able to tinker a lot while delivering value, and not under constant pressure to just grind, in a dry, too serious environment.

        I think I do embrace (quite often) the inner child in me, but I definitely separate the "productivity" of my life from that: things that need the diligence, I do take seriously, and maybe this is what gives me this dissonant feeling when I look at this design language in the context of making me more productive.

    • skkap 13 days ago

      That is very interesting feedback, thank you! You might not be alone though, from time to time we get similar feedback, and in fact, we are currently rethinking branding to make it more calm and positive.

  • pixd 13 days ago

    This is really cool. I definitely like the expansive stat tracking. The weekly report is a really nice touch. gives you a chance to reflect on your progress.

    I don't use Google Calendar often, so it took me a while to get the tracking part to work, but it worked flawlessly once I understood about the event naming

  • lobsterthief 13 days ago

    Looks slick, but I’d love to be able to see a demo (or more screenshots) before signing up.

8organicbits 13 days ago

I'm always up late and I'd like to get a last minute habit checked off before I go to bed, but so many tools move to the next day at midnight. I ended up building my own minimal chore tracker[1] because I couldn't find any that aligned to that schedule. I really think everyone has slightly different needs and chore/habit trackers make a great minimal programming+design project.

[1] https://alexsci.com/blog/personal-apps/

  • georgebcrawford 13 days ago

    Hi there, I thoroughly enjoyed reading your blog post - especially the part about single-purpose software. It's a recurring tension in my digital/physical existence.

yunusefendi52 13 days ago

Looks good. How do you "done" past days? Sometimes I don't actually miss the habit but not have the time to open screen.

I also created similar habit tracker app for mobile https://play.google.com/store/apps/details?id=com.yedev.habi... The unique thing is that I use google drive to sync habits

  • pixd 13 days ago

    I like the design, very clean.

    For the past days, if you click the 3 dots next to the checkbox, there's an option to add checks for previous days using the calendar

superultra 13 days ago

This is really cool.

I don’t think I have diagnosable ADHD, but I have noticed that gamification features like “streaks” often cause more problems in building habits than helping them. My daughter, who is diagnosed with severe ADHD, eventually had to “give up” some of the streak based apps like Duolingo because they are, imho, preying on our desire to complete “streaks” only to increase in-app activity for their own platform.

I’ve been really loving Llamalife - https://llamalife.co - they don’t do habits but they organize a lot of the schema around people who get overwhelmed easily.

  • thih9 13 days ago

    After reading this comment I installed llamalife and immediately abandoned it when it asked me to sign up and accept T&Cs as the first thing after opening. There was no support for sign in with apple either.

    I love that the app from this HN submission is usable without creating an account.

  • pixd 13 days ago

    Oh interesting, that's why I added the "freeze" feature to help avoid feeling "required" to go on the app every day. But maybe it requires some more customization to account for wider cases

codazoda 13 days ago

I've been working on a minimalist daily habit tracker that I designed for counting calories as part of my own weight loss journey. It's called Quick Calories. The PWA is free, it doesn't require an account, has no advertising, and works offline.

Link: [https://calories.joeldare.com]

podviaznikov 13 days ago

love the UI.

I made habit tracker visualizer based on Apple Reminders

https://public.me/anton/daily

  • teitoklien 13 days ago

    you need to focus on how you'll stop eating pastries man, I'll hope you succeed soon, based on that tracker list

    Good luck !

    Regards,

    Pastry Hater

    • podviaznikov 13 days ago

      thank you:) not so easy with pastries