All projects

04 / FULLSTACK APPLICATIONS

TeamHabit

Habit tracking with goals, teams, and challenges. A fullstack project with authentication, a database, and a multilingual interface.

Visit live site
● ● ●teamhabit.online↗
Public interface of TeamHabit
PUBLIC INTERFACE
Public login page with illustrative progress figures. No signed-in account is shown.

The objective

Connect personal habits to goals and teamwork. The implementation covers habit logging, progress, challenges, and rewards, with Supabase as the backend.

My contribution

  • Developed the idea and defined habit tracking and user experience features.
  • Worked on design decisions, testing, troubleshooting, and improvements over several iterations.

How I worked

I used Codex and other AI tools extensively for code implementation. My work focused on developing the idea, defining functionality, making design choices, testing, troubleshooting, and improving the product over several iterations. The technical overview describes the implementation; it does not imply that I wrote all the code independently.

Technical challenges & approach

Access to personal and team data

Supabase Auth identifies the user. Database setup includes tables, access policies, and functions that check team membership, among other conditions. Separate TypeScript modules handle habits, goals, teams, and challenges. Security also depends on applying the correct SQL setup to the hosted database.

Progress rules and edge cases

Streak calculations use local calendar dates. Vitest tests cover empty history, duplicate dates, and interrupted streaks. The repository also includes tests for authentication state, usernames, and XP. These help assess the rules but do not replace integration tests of the hosted service.

A multilingual user experience

next-intl and separate translation files support six languages. The login page has visible field labels and provides the public entry point. Authenticated features were reviewed in code, not exercised with a real user account during this review.

Learning focus

The project connects a simple interface action to user identity, ownership, database operations, and progress calculations. It makes the distinction between client checks and database access controls particularly important.

Project scope

The public login page was checked. Authenticated workflows, hosted database setup, and production access control were not verified end to end. Progress figures in the screenshot are login-page illustrations, not documented user results.

NEXT PROJECT

Cybersecurity Home Lab