Timesheet is a modern, type-safe employee management and timesheet tracking application built with Laravel, Inertia.js, and React. This SaaS application provides comprehensive time tracking, employee management, and reporting capabilities for businesses of all sizes.
- Type-Safe Architecture: Built with PHP 8.4+ and TypeScript for maximum reliability
- Actions-Oriented Design: Clean, testable business logic with single-action classes
- 100% Test Coverage: Comprehensive test suite using Pest
- Modern UI: Built with React, Tailwind CSS v4, and shadcn/ui components
- Real-Time Updates: Live notifications and updates using Laravel Echo
- API-First: RESTful API for mobile apps and third-party integrations
Requires PHP 8.4+, Node.js 18+, and Composer.
Clone and set up the Timesheet application:
git clone <repository-url> timesheet
cd timesheet
# Setup the project
composer setup
# Start the development server
composer devThe application will be available at http://localhost:8000.
The application uses SQLite by default for development. For production, configure your preferred database in the .env file:
# Copy and configure environment variables
cp .env.example .env
# Run migrations and seed sample data
php artisan migrate --seedRun the test suite to ensure everything is configured correctly:
composer testYou should see 100% test coverage and all quality checks passing.
composer dev- Starts Laravel serve, queue worker, log monitoring, and Vite dev server concurrentlyphp artisan serve- Laravel development server onlypnpm run dev- Vite development server for frontend assets
php artisan migrate- Run database migrationsphp artisan migrate --seed- Run migrations and seed sample dataphp artisan migrate:refresh --seed- Reset database with fresh data
composer test- Run complete test suite with 100% coverage requirementcomposer lint- Format code with Rector, Pint, and Prettierpnpm run lint- Lint JavaScript/TypeScript codepnpm run format- Format all code files
composer install --no-dev --optimize-autoloader- Install production dependenciespnpm run build- Build optimized frontend assetsphp artisan config:cache- Cache configuration for production
- Backend: Laravel 12 with PHP 8.4+
- Frontend: React 19 with TypeScript
- Styling: Tailwind CSS v4 with shadcn/ui components
- Database: SQLite (development) / PostgreSQL, MySQL (production)
- Testing: Pest with 100% coverage requirement
- Code Quality: PHPStan, Rector, ESLint, Prettier
- Bundling: Vite with Laravel Wayfinder
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Run tests (
composer test) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License.