A modern web application for tracking time spent on different projects and managing payroll periods. Built with Next.js, TypeScript, and Tailwind CSS.
- 🕒 Time tracking for multiple projects
- 📅 Payroll period management
- 📊 Project data visualization
- 🌓 Dark/Light mode support
- 🎨 Modern UI with shadcn/ui and Radix UI components
- 📱 Responsive design
- Framework: Next.js 15.2.1
- Language: TypeScript
- Styling: Tailwind CSS
- UI Components: shadcn/ui (built on Radix UI)
- State Management: React Context
- Date Handling: date-fns
- Notifications: react-toastify
- Icons: lucide-react
- Node.js (v18 or higher)
- npm or yarn
-
Clone the repository:
git clone https://github.com/ronaldolipata/time-tracker.git cd time-tracker
-
Install dependencies:
npm install # or yarn install
-
Open http://localhost:3000 in your browser.
Start the development server:
npm run dev
# or
yarn dev
npm run dev
- Start the development server with Turbopacknpm run build
- Build the application for productionnpm run start
- Start the production servernpm run lint
- Run ESLint for code linting
time-tracker/
├── app/ # Next.js app directory
│ ├── components/ # App-specific components
│ ├── periods/ # Payroll periods pages
│ ├── projects/ # Projects pages
│ └── layout.tsx # Root layout
├── components/ # Shared components
├── context/ # React Context providers
├── helpers/ # Helper functions
├── hooks/ # Custom React hooks
├── lib/ # Library code
├── utils/ # Utility functions
└── enums/ # TypeScript enums
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.