A professional timesheet and weekly report generator that processes Keka timesheet JSON data and creates beautiful PDF reports with AI-powered executive summaries.
- Keka Integration: Parse Keka timesheet JSON arrays into organized daily entries
- Date Range Selection: Custom start and end date selection for flexible reporting periods
- Smart Data Processing: Automatically groups tasks by date and combines them into daily summaries
- Editable Reports: Full editing capabilities for summaries, locations, and hours
- AI Executive Summaries: Automated executive summary generation using OpenAI GPT-4o-mini
- Manual Summary Editing: Edit and customize executive summaries with inline editing
- Professional PDF Export: Generate client-ready PDF timesheets with company branding
- Multi-week Support: Handle data spanning multiple weeks with week navigation
- Leave Day Tracking: Automatic detection and handling of weekends and leave days
- Node.js (v20 or higher)
- npm
# Clone the repository
git clone <repository-url>
cd weekly-report/weekly-report-app
# Install dependencies
npm install
# Set up environment variables (optional - for AI features)
cp .env.example .env
# Add your OpenAI API key to .env# Start development server
npm run dev
# Build for production
npm run build
# Preview production build
npm run previewFor AI-powered executive summaries, add your OpenAI API key to the .env file:
VITE_OPENAI_API_KEY=your_openai_api_key_hereNote: Without an API key, the app will use a mock implementation for executive summaries.
- Go to https://think41.keka.com/#/me/timesheet/all-timesheets
- Open browser developer tools (F12) and go to Network tab
- Select the timesheet period you want to export
- Look for the API call:
api/mytimesheet/timeentriesdetails?employeeTimesheetId={employee_id} - Copy the response JSON data under the "data" field
- Note: For multiple weeks, you'll need to collate data from multiple API calls under a single "data" array before pasting
- Import Data: Paste your Keka timesheet JSON data in the left panel
- Set Details: Enter client name, employee name, and select date range
- Review & Edit: The app automatically generates daily entries that you can edit
- Executive Summary: AI generates a professional summary (editable)
- Export PDF: Generate a professional PDF timesheet
Use the included sample-keka-data.json file to test the application features.
- Smart Data Processing: Parses Keka JSON arrays, groups tasks by date, and combines multiple tasks into coherent daily summaries
- AI Executive Summaries: Auto-generates professional summaries focusing on work types using OpenAI GPT-4o-mini (with manual editing and regeneration)
- Flexible Location Management: Editable dropdown options (Client Office, WFH, Office, On Leave) with smart defaults and leave day detection
- Professional PDF Export: Client-ready formatting with company branding, comprehensive timesheet layout, and executive summary inclusion
- Multi-week Support: Handles data spanning multiple weeks with automatic weekend and leave day detection
- Frontend: React 19, TypeScript, Vite
- Styling: Tailwind CSS
- PDF Generation: jsPDF
- Date Handling: date-fns
- AI Integration: OpenAI API (GPT-4o-mini)
- Build Tool: Vite with TypeScript
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly with sample data
- Submit a pull request
This project is proprietary software developed for internal use.