Harvest App allows you to manage and track time efficiently with a clean user interface that integrates seamlessly with Jira. With just one click, start and stop timers for your Jira tasks, ensuring accurate time logging across multiple projects.
- Clone the plugin:
git clone git@github.com:HarryC05/Harvest-App.git
- Navigate to the project directory:
cd Harvest-App
- Install the packages:
yarn
- Start the development server:
yarn start
- Open the site in your browser at
https://localhost:3000
.
- Create a Harvest API token and account ID:
- Generate them here
- Enter the Harvest API Token and Harvest Account ID into the settings view (click the settings button).
- Enable Jira integration (optional):
- Create Jira API key here.
- Go to settings and click Add Profile. Fill in all the fields:
- Profile Name: A nickname for this profile.
- Jira URL: The root URL of your Jira workspace (e.g.
https://{workspace}.atlassian.net/
). - Jira Email: The email associated with your Jira account.
- Jira API Token: Use the token created earlier.
- Repeat these steps for each Jira workspace you want to add.
- Link Jira Projects to Harvest Projects:
- Navigate to the
Harvest Projects
section in settings. - Next to each Harvest project, use the pillbox input to search for and link a Jira project.
- Navigate to the
- Configure Jira Boards:
- Click the
Configure Jira Project
button next to each Harvest project. - Assign timers to columns for all boards associated with the project.
- For example, map "In Progress" to the development timer task in Harvest.
- Click the
To manage your Harvest timers:
- Add your Harvest API Token and Harvest Account ID in the settings view.
- Once configured, you’ll see a list of your Harvest projects on the home view (click the back arrow). Select a project to view its tasks.
- Start or stop timers by clicking on any task.
- To add a note to a timer:
- Hover over a timer and click the note button that appears.
- In the modal, enter your note and click Start Timer.
Enhance functionality by integrating Jira with Harvest
- Create a Jira API token and configure a profile in the settings view, as described in the setup section.
- Link Jira projects to Harvest projects in the settings view.
- Configure each Jira board by assigning column types to timers.
- Access your linked Jira boards from the project view:
- Tabs will display each Jira board for the active sprint.
- Hover over a Jira ticket to reveal a stopwatch button (
⏱
). Clicking it starts a timer in Harvest, formatted as{Ticket ID}: {Ticket Title}
. - Drag and drop tickets to other columns
To get started contributing:
- Create a new branch:
git checkout -b feature/#{issue number}/your-feature-name
- Commit your changes (using conventional commits format):
git commit -m 'feat: Add some feature'
- Push to the branch:
git push origin feature/your-feature-name
- Open a pull request.