Skip to content

DevTrack πŸš€ - A modern, comprehensive project management and development tracking application built with Next.js, designed specifically for developers and development teams.

Notifications You must be signed in to change notification settings

md-zeon/devtrack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

49 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

DevTrack πŸš€

A modern, comprehensive project management and development tracking application built with Next.js, designed specifically for developers and development teams.

Live Link

DevTrack

DevTrack Banner

✨ Features

πŸ” Authentication & Security

  • Multi-Provider Authentication: Google, GitHub, and email/password login
  • Secure Session Management: JWT-based authentication with NextAuth.js
  • Protected Routes: Dashboard and API routes secured with authentication middleware
  • User Profile Management: Comprehensive profile system with real-time updates

πŸ“Š Project Management

  • Full CRUD Operations: Create, read, update, and delete projects
  • Project Status Tracking: Planning, Active, On-Hold, Completed statuses
  • Priority Management: Low, Medium, High, Urgent priority levels
  • Date Management: Start dates, end dates, and deadline tracking
  • Progress Monitoring: Visual progress bars and completion tracking

βœ… Task Management

  • Advanced Task System: Create, assign, and track tasks across projects
  • Status Workflow: Todo β†’ In Progress β†’ Review β†’ Completed
  • Task Completion: One-click toggle with optimistic updates
  • Due Date Tracking: Set and monitor task deadlines
  • Project Association: Link tasks to specific projects

πŸ“… Smart Calendar

  • Real-Time Event Generation: Automatically creates events from project deadlines and task due dates
  • Event Types: Project deadlines, task deadlines, project starts, overdue items
  • Today's Schedule: Quick view of today's important items
  • Upcoming Events: 7-day preview of approaching deadlines
  • Visual Indicators: Color-coded event types with priority indicators

πŸ‘€ User Dashboard

  • Overview Page: Real-time statistics and recent activity
  • Profile Management: Editable user profiles with live statistics
  • Recent Activity: Track completed projects and tasks
  • Performance Metrics: Success rates, time tracking, completion statistics

🎨 Modern UI/UX

  • Responsive Design: Works perfectly on desktop, tablet, and mobile
  • Dark Mode Support: Beautiful light and dark themes
  • Loading States: Smooth loading indicators and skeleton screens
  • Optimistic Updates: Instant UI feedback for better user experience
  • Toast Notifications: User-friendly success and error messages

πŸ”§ Technical Features

  • Real-Time Data: TanStack Query for efficient data fetching and caching
  • Optimistic Updates: Immediate UI responses with server synchronization
  • Error Handling: Comprehensive error boundaries and fallbacks
  • Form Validation: Client-side and server-side validation
  • Search & Filtering: Advanced filtering options for projects and tasks

πŸ› οΈ Tech Stack

Frontend

Backend

  • API: Next.js API Routes (serverless functions)
  • Database: MongoDB with MongoDB Atlas
  • Authentication: NextAuth.js with MongoDB adapter
  • Session Management: JWT tokens with secure HTTP-only cookies

Development & Deployment

  • Development Server: Next.js with Turbopack
  • Linting: ESLint with Next.js configuration
  • Package Manager: npm
  • Environment: Node.js 18+

πŸš€ Getting Started

Prerequisites

  • Node.js 18.0 or later
  • npm 8.0 or later
  • MongoDB database (local or MongoDB Atlas)

Installation

  1. Clone the repository

    git clone https://github.com/md-zeon/devtrack.git
    cd devtrack
  2. Install dependencies

    npm install
  3. Set up environment variables

    Create a .env.local file in the root directory:

    # Database
    MONGODB_URI=your_mongodb_connection_string
    DB_NAME=devTrackDB
    
    # NextAuth Configuration
    NEXTAUTH_SECRET=your-super-secret-jwt-secret-key
    NEXTAUTH_URL=http://localhost:3000
    
    # OAuth Providers (Optional)
    GOOGLE_CLIENT_ID=your_google_client_id
    GOOGLE_CLIENT_SECRET=your_google_client_secret
    GITHUB_ID=your_github_client_id
    GITHUB_SECRET=your_github_client_secret
  4. Start the development server

    npm run dev
  5. Open your browser

    Navigate to http://localhost:3000

Build for Production

npm run build
npm start

πŸ“ Project Structure

devtrack/
β”œβ”€β”€ public/                 # Static assets
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/               # Next.js App Router pages
β”‚   β”‚   β”œβ”€β”€ api/           # API routes
β”‚   β”‚   β”‚   β”œβ”€β”€ auth/      # Authentication endpoints
β”‚   β”‚   β”‚   β”œβ”€β”€ projects/  # Project CRUD operations
β”‚   β”‚   β”‚   β”œβ”€β”€ tasks/     # Task CRUD operations
β”‚   β”‚   β”‚   └── user/      # User profile endpoints
β”‚   β”‚   β”œβ”€β”€ dashboard/     # Protected dashboard pages
β”‚   β”‚   β”‚   β”œβ”€β”€ projects/  # Project management
β”‚   β”‚   β”‚   β”œβ”€β”€ tasks/     # Task management
β”‚   β”‚   β”‚   β”œβ”€β”€ calendar/  # Calendar view
β”‚   β”‚   β”‚   β”œβ”€β”€ analytics/ # Analytics (coming soon)
β”‚   β”‚   β”‚   └── profile/   # User profile
β”‚   β”‚   β”œβ”€β”€ login/         # Authentication pages
β”‚   β”‚   β”œβ”€β”€ signup/        
β”‚   β”‚   └── layout.js      # Root layout with providers
β”‚   β”œβ”€β”€ components/        # Reusable components
β”‚   β”‚   β”œβ”€β”€ ui/            # shadcn/ui components
β”‚   β”‚   β”œβ”€β”€ dashboard/     # Dashboard-specific components
β”‚   β”‚   └── modals/        # Modal components
β”‚   β”œβ”€β”€ hooks/             # Custom React hooks
β”‚   β”‚   β”œβ”€β”€ useProjects.js # Project data management
β”‚   β”‚   β”œβ”€β”€ useTasks.js    # Task data management
β”‚   β”‚   └── useProfile.js  # User profile management
β”‚   β”œβ”€β”€ lib/               # Utility libraries
β”‚   β”‚   β”œβ”€β”€ auth.js        # NextAuth configuration
β”‚   β”‚   β”œβ”€β”€ utils.js       # Utility functions
β”‚   └── styles/            # Global styles
β”œβ”€β”€ .env.local             # Environment variables
β”œβ”€β”€ components.json        # shadcn/ui configuration
β”œβ”€β”€ tailwind.config.js     # TailwindCSS configuration
β”œβ”€β”€ next.config.js         # Next.js configuration
└── package.json           # Dependencies and scripts

πŸ”§ Available Scripts

npm run dev        # Start development server with Turbopack
npm run build      # Build for production
npm run start      # Start production server
npm run lint       # Run ESLint

🌟 Key Features Walkthrough

1. Authentication Flow

  • Visit the landing page and click "Sign In"
  • Choose from Google, GitHub, or email/password authentication
  • Access the protected dashboard upon successful login

2. Project Management

  • Create new projects with detailed information
  • Set priorities, deadlines, and track progress
  • Edit projects using intuitive modal interfaces
  • Filter and search through your projects

3. Task Management

  • Create tasks and assign them to projects
  • Track task progress through different status stages
  • Toggle task completion with instant feedback
  • Filter tasks by status and visibility preferences

4. Calendar Integration

  • View all project deadlines and task due dates
  • See today's schedule at a glance
  • Track upcoming events for the next week
  • Visual indicators for different event types

5. Profile Management

  • Edit personal information and social links
  • View real-time statistics and achievements
  • Track recent activity and performance metrics

πŸ”œ Upcoming Features (Analytics Page)

The Analytics page is currently under development and will include:

  • πŸ“Š Interactive Charts: Visual representation of productivity data
  • ⏱️ Time Tracking: Detailed time analysis and breakdowns
  • 🎯 Goal Setting: Set and monitor productivity goals
  • πŸ“ˆ Productivity Insights: Advanced analytics and recommendations
  • πŸ“… Reports: Weekly and monthly performance reports
  • πŸ” Custom Filters: Filter analytics by date ranges and projects
  • πŸ“„ Export Functionality: Download reports in various formats

🀝 Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

πŸ“ž Support

If you have any questions or need help, please:

  1. Check the Issues page
  2. Create a new issue with detailed information
  3. Join our community discussions

Made with ❀️ for developers, by developers

DevTrack - Streamline your development workflow and boost productivity

About

DevTrack πŸš€ - A modern, comprehensive project management and development tracking application built with Next.js, designed specifically for developers and development teams.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 2

  •  
  •