Skip to content
 
 

Repository files navigation

Ascent 🚀

Turn your self-improvement into a measurable, gamified adventure.

Ascent is a web application that helps you visualize your personal growth. It transforms habits, learning, and personal goals into a game, allowing you to track your progress, build consistent streaks, and earn XP for your efforts.


🎯 Features: Level Up Your Life

Ascent is built around a core loop of setting, tracking, and completing goals.

  • ✨ Gamified XP System: Every goal you create can be assigned an XP (Experience Point) value. Completing the goal banks that XP, contributing to your overall level. Watch your "level" rise as you stick to your commitments.

  • 🏆 Goal & Habit Tracking: Create detailed goals with deadlines, categories (e.g., "Fitness," "Learning," "Productivity"), and descriptions. You can also set up recurring daily or weekly habits.

  • 🔥 Streak tracking: Consistency is key. Ascent helps you track your daily activity: view your current streak, a monthly calendar of active days, longest streak and active-day stats per month, with rewards unlocked for consistency.

  • 🛒 Gold & shop: Earn gold by leveling up and (in the future) completing challenges. Gold is displayed in the player bar and links to the shop (currently under construction) for future rewards.

  • 🔒 Secure & private: Built with NextAuth.js and a serverless backend, your data is your own. Sign in quickly with social providers (e.g. Google or GitHub) and trust that your goals and progress are stored securely.


🛠️ Tech Stack & Architecture

This project is built with a modern, full-stack, serverless architecture.

Category Technology Purpose
Frontend Next.js 14 (App Router) SSR, SSG, API Routes
React / TypeScript UI & Type Safety
TailwindCSS Utility-First Styling
UI/UX ShadCN UI Accessible, Reusable Components
Framer Motion Animations & Transitions
Backend Next.js API Routes Serverless Backend Logic
Authentication NextAuth.js Authentication & Session Management
Database PostgreSQL Relational Database
ORM Prisma Type-safe Database Access
State Zustand Minimalist State Management
Validation Zod Schema Validation
Infra & Hosting Vercel Frontend Hosting & CI/CD

🏛️ Architecture

This project uses a modern full-stack architecture:

  1. Frontend (Vercel): The Next.js application is hosted on Vercel.
  2. Authentication (Vercel): NextAuth.js runs on Vercel, managing user sessions.
  3. Backend (Vercel): Secure Next.js API Routes act as the backend. They check the user's session, validate input with Zod, and use Prisma to communicate with PostgreSQL.
  4. Database: PostgreSQL acts as the persistent data layer, accessed via Prisma ORM.

About

SaaS de tracking d'habitudes et objectifs

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages