๐ Student Task Tracker
A beautiful, modern, and fully responsive task management application built with Svelte. Stay organized, focused, and on top of your assignments with this sleek productivity tool.

โจ Features
๐ฏ Core Functionality
- โ
Add Tasks - Create new tasks with smart validation
- โ
Toggle Completion - Click to mark tasks as complete/incomplete
- โ
Delete Tasks - Remove unwanted tasks instantly
- โ
Persistent Storage - Tasks automatically save to localStorage
- โ
Duplicate Prevention - Smart validation prevents duplicate tasks
๐จ Modern Design
- ๐ Beautiful Gradients - Stunning purple-blue gradient backgrounds
- โจ Glassmorphism - Modern glass-like effects with backdrop blur
- ๐ญ Dark/Light Theme - Seamless theme switching with smooth transitions
- ๐ฑ Fully Responsive - Perfect on desktop, tablet, and mobile
- ๐ฌ Smooth Animations - Scale, slide, and fade transitions throughout
๐ Advanced Features
- ๐ Progress Tracking - Visual progress bar showing completion percentage
- ๐ Statistics Dashboard - Total, completed, and pending task counters
- ๐ Toast Notifications - Success, error, warning, and info messages
- ๐งน Bulk Actions - Clear all completed tasks at once
- โจ๏ธ Keyboard Navigation - Full keyboard accessibility support
๐ Live Demo
Experience the app live: Student Task Tracker Demo
๐ ๏ธ Tech Stack
- Frontend Framework: Svelte 5 - The magical disappearing UI framework
- Build Tool: Vite - Lightning-fast build tool
- Styling: Pure CSS with CSS Variables - No external CSS frameworks
- Icons: Unicode Emoji - Lightweight and accessible
- Storage: Browser localStorage - Client-side persistence
- Deployment: GitHub Pages - Free and easy hosting
๐ฆ Installation
Prerequisites
- Node.js (version 16 or higher)
- npm or yarn package manager
Quick Start
Clone the repository
git clone https://github.com/your-username/student-task-tracker.git
cd student-task-tracker
Install dependencies
npm install
Start the development server
npm run dev
Open your browser
Navigate to http://localhost:5173 (or the port shown in your terminal)
Build for Production
# Create production build
npm run build
# Preview production build
npm run preview
๐ฎ Usage
Adding Tasks
- Type your task in the input field
- Press Enter or click the "โ Add Task" button
- Your task will appear in the list with a smooth animation
Managing Tasks
- Complete a task: Click anywhere on the task item
- Delete a task: Click the trash icon (๐๏ธ) on the right
- View progress: Check the progress bar and statistics at the top
Theme Switching
- Click the moon/sun icon in the top-right corner
- Seamlessly switch between light and dark themes
Keyboard Shortcuts
- Enter: Add a new task (when input is focused)
- Tab: Navigate through interactive elements
- Space/Enter: Toggle task completion (when task is focused)
๐ Project Structure
student-task-tracker/
โโโ public/
โ โโโ vite.svg
โโโ src/
โ โโโ App.svelte # Main application component
โ โโโ app.css # Global styles and CSS variables
โ โโโ main.js # Application entry point
โ โโโ assets/ # Static assets
โโโ package.json # Dependencies and scripts
โโโ vite.config.js # Vite configuration
โโโ jsconfig.json # JavaScript configuration
โโโ svelte.config.js # Svelte configuration
โโโ README.md # This file
๐จ Design Philosophy
Color Palette
- Primary: Purple-blue gradients (
#667eea to #764ba2)
- Secondary: Pink-purple gradients (
#f093fb to #f5576c)
- Success: Blue-green gradients (
#4facfe to #00f2fe)
- Warning: Orange-yellow gradients (
#fa709a to #fee140)
- Error: Red gradients (
#ff6b6b to #ee5a24)
Typography
- Font Family: Inter (system font stack fallback)
- Weights: 400, 500, 600, 700, 800
- Sizes: Responsive with
clamp() for optimal readability
Animations
- Duration: 200-400ms for smooth interactions
- Easing: CSS
ease for natural motion
- Types: Scale, slide, fade, and transform effects
๐ค Contributing
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create a feature branch
git checkout -b feature/amazing-feature
- Make your changes
- Test thoroughly
npm run build
npm run preview
- Commit your changes
git commit -m 'Add amazing feature'
- Push to the branch
git push origin feature/amazing-feature
- Open a Pull Request
Development Guidelines
- Follow the existing code style
- Add comments for complex logic
- Test on multiple devices and browsers
- Ensure accessibility compliance
- Keep the bundle size optimized
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
- Svelte Team - For creating an amazing framework
- Vite Team - For the incredible build tool
- Inter Font - For the beautiful typography
- Open Source Community - For inspiration and tools
๐ Support
If you find this project helpful, please:
- โญ Star the repository on GitHub
- ๐ Report bugs via GitHub Issues
- ๐ก Suggest features for future improvements
- ๐ข Share with your friends and colleagues
Made with โค๏ธ and Svelte by : Abdullahi Abdiweli Adam
Stay organized, stay productive! ๐