Skip to content

Kashish995/veridyn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

176 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

VERIDYN β€” AI Behavioral Productivity Intelligence Platform

"Veri" (truth) + "Dynamic" (adaptability) β€” know yourself, improve consistently.

Live Demo Node.js React MongoDB


What is VERIDYN?

VERIDYN is a full-stack AI productivity platform that goes beyond simple task tracking. It analyzes your behavioral patterns over time β€” discipline score, performance tier, volatility, risk score, and streaks β€” to give you actionable intelligence about how you actually work, not just what you planned to do.

Built as a flagship personal project targeting software engineering internships.


Live Demo

πŸ”— veridyn-five.vercel.app

Create an account and start logging study sessions β€” the heatmap and streak system update in real time.


Features

🧠 AI Coaching Layer

  • AI Productivity Coach β€” Groq-powered (LLaMA 3.1 70B) chat coach with your live data as context
  • Risk Predictor β€” predicts discipline drops before they happen using streak, volatility, and trend analysis
  • Study Pattern Analyzer β€” detects your best and worst productivity hours automatically
  • AI Recommendations β€” personalized suggestions based on behavioral history

πŸ“Š Behavioral Analytics

  • Discipline Score β€” completion rate Γ— 100, updated daily
  • Performance Tiers β€” Elite (85%+), Gold (70–84%), Silver (50–69%), Bronze (<50%)
  • Volatility Score β€” standard deviation of your discipline scores (Stable / Moderate / High)
  • Risk Score β€” composite score from streak gaps, declining trend, and missed goals
  • Weekly Performance β€” this week vs last week comparison with trend direction

⏱ Study Timer + Heatmap

  • Built-in start/pause/stop study timer
  • Sessions auto-save to your daily log
  • GitHub-style Productivity Heatmap β€” squares color up based on goal completion rate
  • Streak system β€” consecutive days of hitting your daily study goal
  • πŸͺ™ Streak coin celebration β€” animated popup when you hit your daily goal

βœ… Task Management

  • Create tasks with title, description, date, start/end time, priority
  • Mark complete, delete, filter by status
  • Auto-detects missed tasks based on current time
  • Real-time completion progress bar

πŸ‘€ Profile System

  • Slide-out profile panel with 6 sub-views
  • Edit display name and role
  • Change password with validation
  • Preferences β€” set daily study goal (drives heatmap + streaks), timezone, theme
  • Help Center, What's New changelog, Keyboard Shortcuts

πŸ“± Fully Responsive

  • Desktop: fixed sidebar navigation
  • Mobile: bottom tab bar with glass blur effect
  • iOS safe area support

Tech Stack

Layer Technology
Frontend React 18, React Router, Chart.js, Vite
Backend Node.js, Express.js
Database MongoDB Atlas, Mongoose
AI Provider Groq (LLaMA 3.1 70B) β€” Anthropic fallback
Auth JWT (JSON Web Tokens)
Deployment Vercel (frontend) + Render (backend)
Styling Custom CSS β€” Obsidian Intelligence dark theme

Project Structure

veridyn/
β”œβ”€β”€ frontend/
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”‚   β”œβ”€β”€ Navbar.jsx              # Sidebar + mobile bottom bar
β”‚   β”‚   β”‚   β”œβ”€β”€ ProfilePanel.jsx        # Right-side slide panel
β”‚   β”‚   β”‚   β”œβ”€β”€ StudyTimer.jsx          # Start/stop study timer
β”‚   β”‚   β”‚   β”œβ”€β”€ StreakCelebration.jsx   # Coin popup animation
β”‚   β”‚   β”‚   └── ProductivityCalendar.jsx # GitHub-style heatmap
β”‚   β”‚   β”œβ”€β”€ pages/
β”‚   β”‚   β”‚   β”œβ”€β”€ Dashboard.jsx           # Performance overview
β”‚   β”‚   β”‚   β”œβ”€β”€ Tasks.jsx               # Task manager
β”‚   β”‚   β”‚   └── Insights.jsx            # AI analytics hub
β”‚   β”‚   β”œβ”€β”€ hooks/
β”‚   β”‚   β”‚   └── useDashboardData.js     # All dashboard API calls
β”‚   β”‚   └── styles/                     # Per-page CSS modules
β”‚
β”œβ”€β”€ backend/
β”‚   β”œβ”€β”€ models/
β”‚   β”‚   β”œβ”€β”€ User.js
β”‚   β”‚   β”œβ”€β”€ Task.js
β”‚   β”‚   β”œβ”€β”€ StudyLog.js                 # Timer sessions + chapter logs
β”‚   β”‚   └── Subject.js
β”‚   β”œβ”€β”€ routes/
β”‚   β”‚   β”œβ”€β”€ auth.routes.js
β”‚   β”‚   β”œβ”€β”€ task.routes.js
β”‚   β”‚   β”œβ”€β”€ studyLog.routes.js          # Timer session endpoints
β”‚   β”‚   β”œβ”€β”€ stats.routes.js             # 8 analytics endpoints
β”‚   β”‚   β”œβ”€β”€ user.routes.js
β”‚   β”‚   └── ai.routes.js
β”‚   β”œβ”€β”€ middleware/
β”‚   β”‚   β”œβ”€β”€ auth.middleware.js
β”‚   β”‚   └── rateLimiter.js
β”‚   └── server.js

API Endpoints

Auth

POST   /api/auth/register
POST   /api/auth/login

Tasks

GET    /api/tasks
POST   /api/tasks
PATCH  /api/tasks/:id
DELETE /api/tasks/:id
GET    /api/tasks/next

Study Timer

POST   /api/study-logs/session      # Save a timer session
GET    /api/study-logs/today        # Today's progress
GET    /api/study-logs/heatmap      # Full heatmap data

Analytics (Stats)

GET    /api/stats/dashboard         # Main metrics summary
GET    /api/stats/weekly            # Last 7 days breakdown
GET    /api/stats/weekly-performance # This week vs last week
GET    /api/stats/insights          # Full behavioral analytics
GET    /api/stats/history           # Paginated session history
GET    /api/stats/longest-streak    # Current + all-time streak
GET    /api/stats/monthly-aggregate # Month-by-month totals
GET    /api/stats/calendar?year=    # Heatmap data for a year

User

PUT    /api/users/profile           # Update name + role
PUT    /api/users/change-password   # Change password

Getting Started (Local Setup)

Prerequisites

  • Node.js 18+
  • MongoDB Atlas account (free tier works)
  • Groq API key (free at console.groq.com)

1. Clone the repo

git clone https://github.com/YOUR_USERNAME/veridyn.git
cd veridyn

2. Backend setup

cd backend
npm install

Create .env:

PORT=5000
MONGO_URI=your_mongodb_atlas_connection_string
JWT_SECRET=your_jwt_secret_key
GROQ_API_KEY=your_groq_api_key

Start backend:

npm run dev

3. Frontend setup

cd frontend
npm install

Create .env:

VITE_API_URL=http://localhost:5000

Start frontend:

npm run dev

4. Open in browser

http://localhost:5173

Key Algorithms

Discipline Score

score = (completed_tasks / total_tasks) Γ— 100

Volatility

volatility = std_deviation(discipline_scores_last_30_days)

Risk Score

risk = (missed_days_last_7 / 7) Γ— 100

Streak

streak = consecutive days where completionRate β‰₯ 1.0

Heatmap Color Intensity

completionRate 0.00      β†’ empty (dark)
completionRate 0.01–0.25 β†’ level 1
completionRate 0.25–0.50 β†’ level 2
completionRate 0.50–0.75 β†’ level 3
completionRate 0.75+     β†’ level 4 (full glow)

Screenshots

Dashboard β€” Performance Overview

Tasks β€” Task Manager with priority system

Insights Hub β€” AI behavioral analytics

Mobile β€” Bottom navigation bar

(Add screenshots to /screenshots folder and link here)


What I Learned Building This

  • Created a secure and scalable REST API from the ground up with Express.js and MongoDB.
  • JWT authentication flow with protected routes
  • Real-time data aggregation β€” building analytics from raw logs
  • Integrating LLM APIs (Groq / Anthropic) with user context injection
  • Building a GitHub-style contribution heatmap from date-indexed data
  • Deploying a split frontend/backend architecture (Vercel + Render)
  • Mobile-first responsive design with iOS safe area handling

Roadmap

  • LeetCode API integration β€” pull LC submissions into heatmap
  • PWA support β€” installable on mobile
  • Daily study reminders (push notifications)
  • Light theme
  • Team/friend leaderboard

Author

Kashish 3rd Year B.Tech Computer Science β€” Kalam Institute of Technology

GitHub LinkedIn


License

MIT License β€” feel free to fork and build on this.


Built with obsessive attention to detail. Every pixel, every algorithm, every endpoint β€” intentional.

About

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors