You answer only for study related or you can also give some life advices ?!
See , I am fat ( not too much but fat ) I am 78 kgs now and I am too lazy I sleep late , I don’t study and my screen time is more ..! I always try to change but I can’t last for 4 days trying to change . Help me what should I do 😔
| Habit | Target |
|---|---|
| Sleep | 30 min earlier than now |
| Walk | 20 min once a day |
| Screen time | Charger outside bedroom at night |
| Study | Open book for 2 min |
| Food | Cut sugary drinks only |
Create a daily habit tracker I can print and use
mkdir -p /tmp/workspace/habit-tracker && ls /tmp/workspace/habit-tracker/
~/habit-tracker/create_tracker.py
from reportlab.lib.pagesizes import A4
from reportlab.lib import colors
from reportlab.lib.units import mm
from reportlab.pdfgen import canvas
from reportlab.lib.colors import HexColor
import calendar
# ── colours ──────────────────────────────────────────────────────────────────
BG = HexColor("#FAFAF7")
HEADER_BG = HexColor("#2D6A4F") # deep green
HEADER_TXT = colors.white
ACCENT = HexColor("#52B788") # mint green
ROW_ALT = HexColor("#F0FAF4") # very light green
ROW_NORM = colors.white
BORDER = HexColor("#B7E4C7")
MUTED = HexColor("#6B7280")
TITLE_TEXT = HexColor("#1B4332")
CHECK_BG = HexColor("#D8F3DC")
W, H = A4 # 595.27 x 841.89 pts
MONTH_NAME = "August 2026"
DAYS_IN_MONTH = 31
HABITS = [
("🌙", "Sleep 30 min Earlier"),
("🚶", "Walk 20 Minutes"),
("📵", "Phone Outside Bedroom"),
("📖", "Open Book 2 Min"),
("🚫🥤", "No Sugary Drinks"),
("💧", "Drink 8 Glasses Water"),
("🙏", "1 Grateful Thought"),
]
def make_tracker(filename):
c = canvas.Canvas(filename, pagesize=A4)
c.setTitle("Daily Habit Tracker – August 2026")
# ── background ────────────────────────────────────────────────────────────
c.setFillColor(BG)
c.rect(0, 0, W, H, stroke=0, fill=1)
# ── top header band ───────────────────────────────────────────────────────
header_h = 62
c.setFillColor(HEADER_BG)
c.rect(0, H - header_h, W, header_h, stroke=0, fill=1)
c.setFillColor(HEADER_TXT)
c.setFont("Helvetica-Bold", 20)
c.drawCentredString(W / 2, H - 36, "Daily Habit Tracker")
c.setFont("Helvetica", 11)
c.drawCentredString(W / 2, H - 52, MONTH_NAME + " • Small steps. Big change.")
# ── motivational strip ────────────────────────────────────────────────────
strip_y = H - header_h - 22
c.setFillColor(ACCENT)
c.rect(0, strip_y, W, 22, stroke=0, fill=1)
c.setFillColor(colors.white)
c.setFont("Helvetica-Oblique", 9)
c.drawCentredString(W / 2, strip_y + 7,
"✓ = Done ✗ = Missed ~ = Partial Never miss TWICE in a row!")
# ── layout constants ──────────────────────────────────────────────────────
LEFT_W = 118 # habit label column width
CELL_W = (W - LEFT_W - 20) / DAYS_IN_MONTH # width per day cell
ROW_H = 28
TABLE_TOP = strip_y - 10
COL_START = 10 + LEFT_W # x start of day columns
# ── day-number header row ─────────────────────────────────────────────────
row_y = TABLE_TOP - ROW_H
c.setFillColor(HEADER_BG)
c.rect(10, row_y, W - 20, ROW_H, stroke=0, fill=1)
# "Habit" label in header
c.setFillColor(HEADER_TXT)
c.setFont("Helvetica-Bold", 9)
c.drawCentredString(10 + LEFT_W / 2, row_y + 9, "Habit")
# Day numbers 1-31
for d in range(1, DAYS_IN_MONTH + 1):
cx = COL_START + (d - 1) * CELL_W + CELL_W / 2
c.setFillColor(HEADER_TXT)
c.setFont("Helvetica-Bold", 7)
c.drawCentredString(cx, row_y + 9, str(d))
# thin vertical separator
c.setStrokeColor(HexColor("#3D8B6A"))
c.setLineWidth(0.3)
c.line(COL_START + (d - 1) * CELL_W, row_y,
COL_START + (d - 1) * CELL_W, row_y + ROW_H)
# ── habit rows ────────────────────────────────────────────────────────────
for i, (icon, label) in enumerate(HABITS):
ry = row_y - (i + 1) * ROW_H
bg = ROW_ALT if i % 2 == 0 else ROW_NORM
# row background
c.setFillColor(bg)
c.rect(10, ry, W - 20, ROW_H, stroke=0, fill=1)
# habit label
c.setFillColor(TITLE_TEXT)
c.setFont("Helvetica-Bold", 8)
c.drawString(15, ry + 10, icon + " " + label)
# checkbox cells
for d in range(1, DAYS_IN_MONTH + 1):
cx = COL_START + (d - 1) * CELL_W
# cell background
c.setFillColor(CHECK_BG)
c.roundRect(cx + 1.5, ry + 3, CELL_W - 3, ROW_H - 6,
2, stroke=0, fill=1)
# cell border
c.setStrokeColor(BORDER)
c.setLineWidth(0.5)
c.roundRect(cx + 1.5, ry + 3, CELL_W - 3, ROW_H - 6,
2, stroke=1, fill=0)
# horizontal row border
c.setStrokeColor(BORDER)
c.setLineWidth(0.4)
c.line(10, ry, W - 10, ry)
# bottom border of last row
last_ry = row_y - len(HABITS) * ROW_H
c.setStrokeColor(BORDER)
c.setLineWidth(0.4)
c.line(10, last_ry, W - 10, last_ry)
# outer table border
table_total_h = ROW_H * (len(HABITS) + 1)
c.setStrokeColor(HexColor("#74C69D"))
c.setLineWidth(1)
c.rect(10, row_y - len(HABITS) * ROW_H, W - 20, table_total_h, stroke=1, fill=0)
# vertical divider between label col and day cols
c.setStrokeColor(HexColor("#74C69D"))
c.setLineWidth(1)
c.line(10 + LEFT_W, row_y - len(HABITS) * ROW_H,
10 + LEFT_W, row_y + ROW_H)
# ── weekly score section ──────────────────────────────────────────────────
score_y = last_ry - 48
c.setFillColor(ACCENT)
c.roundRect(10, score_y, W - 20, 38, 5, stroke=0, fill=1)
c.setFillColor(colors.white)
c.setFont("Helvetica-Bold", 9)
c.drawString(18, score_y + 24, "WEEKLY SCORE (count ✓ per week)")
weeks = ["Wk 1 (1-7)", "Wk 2 (8-14)", "Wk 3 (15-21)", "Wk 4 (22-28)", "Wk 5 (29-31)"]
box_w = (W - 40) / len(weeks)
for wi, wlabel in enumerate(weeks):
bx = 18 + wi * box_w
c.setFillColor(colors.white)
c.roundRect(bx, score_y + 4, box_w - 6, 15, 3, stroke=0, fill=1)
c.setFillColor(TITLE_TEXT)
c.setFont("Helvetica", 7)
c.drawCentredString(bx + (box_w - 6) / 2, score_y + 8, wlabel)
# ── notes section ─────────────────────────────────────────────────────────
notes_y = score_y - 72
c.setFillColor(ROW_ALT)
c.roundRect(10, notes_y, W - 20, 60, 5, stroke=0, fill=1)
c.setStrokeColor(BORDER)
c.setLineWidth(0.7)
c.roundRect(10, notes_y, W - 20, 60, 5, stroke=1, fill=0)
c.setFillColor(TITLE_TEXT)
c.setFont("Helvetica-Bold", 9)
c.drawString(18, notes_y + 47, "📝 Notes / How I felt this month:")
for li in range(3):
ly = notes_y + 30 - li * 14
c.setStrokeColor(BORDER)
c.setLineWidth(0.5)
c.line(18, ly, W - 18, ly)
# ── reminder strip at bottom ──────────────────────────────────────────────
c.setFillColor(HEADER_BG)
c.rect(0, 0, W, 22, stroke=0, fill=1)
c.setFillColor(colors.white)
c.setFont("Helvetica-Oblique", 8)
c.drawCentredString(W / 2, 7,
"You are not lazy — you just need a better system. One day at a time. 💚")
c.save()
print("PDF saved.")
make_tracker("/tmp/workspace/habit-tracker/Habit_Tracker_August_2026.pdf")
cd /tmp/workspace/habit-tracker && python create_tracker.py
Habit Tracker August 2026
PDF Document · PDF