A macOS desktop application for tracking time on Jira issues through an intuitive drag-and-drop calendar interface.
- 📅 Calendar View - Visual monthly/weekly calendar for time tracking
- 🎯 Issue Management - View your assigned Jira issues grouped by epics
- 🖱️ Drag & Drop - Intuitive interface to assign work to dates
- ⏱️ Time Logging - Quick time entry with automatic sync to Jira
- 🌙 Dark Mode - Native macOS dark mode support
- 🔒 Secure - Encrypted credential storage
- Node.js 18+
- npm or yarn
- Jira Cloud account with API token
# Install dependencies
npm install-
Generate a Jira API token:
- Go to https://id.atlassian.com/manage-profile/security/api-tokens
- Click "Create API token"
- Save the token securely
-
Launch the app and enter your credentials:
- Jira domain (e.g.,
your-company.atlassian.net) - Email address
- API token
- Jira domain (e.g.,
# Run in development mode
npm run electron:devThis will start Vite dev server and launch the Electron app with hot reload.
# Build for production
npm run electron:buildThe built app will be in the release/ directory.
timesheet/
├── src/
│ ├── main/ # Electron main process
│ │ ├── index.ts # Main entry point
│ │ └── preload.ts # Preload script
│ │
│ ├── renderer/ # React frontend
│ │ ├── main.tsx # React entry point
│ │ ├── App.tsx # Root component
│ │ └── index.css # Global styles
│ │
│ └── types/ # TypeScript types
│ ├── jira.types.ts
│ └── app.types.ts
│
├── package.json
├── tsconfig.json
├── vite.config.ts
└── electron-builder.json
- Electron - Desktop app framework
- React - UI library
- TypeScript - Type safety
- Vite - Build tool
- Tailwind CSS - Styling
- React DnD - Drag and drop
- Zustand - State management
- Axios - HTTP client
- electron-store - Data persistence
MIT
For issues and questions, please open an issue on the repository.