Step 1- Create the habit tracker database

1. Create a new database for the habit tracker.

  1. If you would like to try this out, I recommend setting up all of the properties with the same names that I provide so that formulas properly copy and paste into your database. Then if you change the property names after formulas are set up, the formulas will update and you won’t have to go in and edit them. If you change the names as you create the database, you may have to make some corrections to the formulas after you copy and paste them to make sure the property is selected correctly.

2. Set up the following properties. These are the basic properties that everything else is built on.

Screenshot 2024-01-16 at 11.18.00 AM.png

Property type Property name Property details Explanation
Date Date
Formula Is today? formatDate(now(), "DD") == formatDate(prop("Date"), "DD") Used for daily progress calculations. Shows checked box if date is the current day.
Formula Is this week? formatDate(now(), "W") == formatDate(prop("Date"), "W") Used for weekly progress calculations. Shows checked box if date is the current week.
Checkbox Habit 1
Formula Habit 1 complete? and(prop("Is this week?"), prop("Habit 1")) Used for weekly and total progress calculations. Shows checked box if the habit is marked complete and the date is in the current week.
Formula Habit 1 icon if(prop("Habit 1")==true, "●", "○") Shows first icon in formula if box is checked and second if it is not. All icons will be rolled up together for the display with the circles.
Repeat Habit 2, Habit 3, etc. Repeat those 3 steps for as many habits as you want to add. Note that the formulas I give are for only 2 habits. The “Daily total #” property below will need slight edits if you add more habits.
Formula Daily total # toNumber(prop("Habit 1")) + toNumber(prop("Habit 2")) Used for daily progress calculations. Converts checkboxes into number- 1 if checked, 0 if not.

3. Set up the following properties in the habit tracker database. These will be used for the daily tracker and daily progress displays.

Screenshot 2024-01-16 at 11.18.25 AM.png

Property type Property name Property details Explanation
Formula Today’s habits title style("Today's Habits", "u", "b")
Formula Today’s progress title style("Today's Progress", "u","b")
Formula Progress message prop("Daily total #") +

if(prop("Daily total #")==1, " habit completed ", " habits completed ") +

if(prop("Is today?")==true, "(" + (2-prop("Daily total #")) + " remaining)", "(" + (2-prop("Daily total #")) + " incomplete") | Shows number of habits completed that day. On the current day it will show how many are remaining, and on past days the wording will automatically change to “incomplete” instead of “remaining.” | | Formula | Progress bar | style((((substring("——————————", 0, floor((10 * prop("Daily total #")) / 2)) + "●") + substring("——————————", 0, 10 - floor((10 * prop("Daily total #")) / 2))) + " ")) + style(format(floor((100 * prop("Daily total #")) / 2)) + "%") | Shows percentage completed that day. This formula will need to be edited if you add more habits. Currently, there are 3 places where it says “prop("Daily total #")) / 2)).” The 2 needs to be changed to your total number of habits. |

Step 2 - Set up the daily tracker view

1. Wherever you would like to display your daily tracker, add a database gallery view, select the habit tracker database, select “none” under card preview, then show the following properties:

  1. Today’s habits title
  2. Habit 1 (checkbox)
  3. Habit 2, 3, etc.
  4. Today’s progress title
  5. Progress message
  6. Progress bar

Screenshot 2024-01-16 at 11.05.55 AM.png

2. Set a filter with the date property to only show today.

3. Set up a daily recurring template

  1. In the top right of the database, click the arrow next to “New” on the blue button.

  2. Click “+ New template” and the template page will open.

  3. In the date property, select “Today- date when duplicated.”

  4. Set the title to what you’d like. I like to set it to “@Today- date when duplicated”

    Screenshot 2024-01-16 at 11.09.52 AM.png

  5. Click out of the template, and click the arrow next to “New” on the blue button again. You should see your template in the list now.

  6. Click the 3 dots next to the template.

  7. At the top of the pop-up menu, click “Repeat,” then click “Every day,” then click save. Now a new daily tracker page will automatically be created each day.

    Screenshot 2024-01-16 at 11.12.15 AM.png