What's next for LifeLens
Inspiration
We noticed that most habit trackers are passive — they store data but never tell you why your week went well or badly. We wanted to build a tool that quantifies the relationship between sleep, focus, hydration, and output into one honest number.
What it does
LifeLens is a personal analytics dashboard. You log 6 daily habits, it calculates a Productivity Score (0–100) and builds interactive charts — a polar habit radar, an annotated weekly heatmap, an animated timeline, and a peaks chart — plus generates a rule-based recommendation report and a downloadable week-over-week text summary.
How we built it
Entirely in Python. Streamlit handles the UI and reactive page routing. SQLite3 persists entries locally. Pandas handles all data wrangling and aggregation. Plotly constructs the interactive charts with frame-based animations and manual cell annotations. A custom CSS injection system drives the Light Neo-Brutalism design theme.
Challenges we ran into
Streamlit's HTML rendering model means raw
wrappers don't contain Python widgets — we had to switch to st.container(key=...) and use CSS key-class selectors to apply brutalist styling natively. Getting Plotly heatmap annotations to display metric units (liters, hours, minutes) per-cell required manually building annotation dict arrays.Accomplishments that we're proud of
The Productivity Score algorithm — a weighted, normalized formula with bonuses and penalties that produces a genuinely meaningful daily index. The full pipeline from daily log → SQLite → Pandas → Plotly → styled dashboard is built entirely without any external APIs or cloud services.
What we learned
How much Streamlit's component lifecycle matters for CSS targeting. How to build frame-based animations in Plotly using cumulative DataFrame slices. That SQLite's dynamic typing handles REAL float columns seamlessly for unit conversions.
What's next for LifeLens
Streak tracking with milestone badges, mood correlation heatmaps using Pearson coefficients, a goal-setting system where users define personal habit targets and the score engine adapts accordingly and an android application so people can use it directly through their phones.
Log in or sign up for Devpost to join the conversation.