Skip to content

mekhami/Sow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 

Repository files navigation

Sow

A Harvest Command Line Application

Sow is a command-line application for use with the Harvest Time Tracking API. It relies on the Python Harvest API by the folks over at Lionheart. It also takes direct inspiration (and possibly some code snippets) from the Reap command line application for Harvest, also written in Python.

Sow is currently based on Python 2.7, but in the future will be ported to 3.4

Installation

``` pip install --user git+https://github.com/mekhami/Sow ``` That's it. (Note: This will eventually be redistributed via PyPi)

Add a Timesheet Entry

There are two ways to add an entry to Harvest. The first, before you make your first entry and are able to save an alias, is: ``` sow add ``` You can specify the date that you wish to add an entry for with -d or --date .

Simple as that, the application will guide you through the few steps required to make your timesheet entry. At the end of this process, it will prompt you to save an alias (more on that later).

Delete a Timesheet Entry

You can either delete all entries for the selected date, or select an entry from a list. ``` sow delete --all --date 2/10/15 ``` or ``` sow delete --date 2/10/15 ``` The former will confirm that you want to delete all the listed entries. The latter, you will select the number next to which entry you wish to delete.

Show your Timesheet Entries

To display an entry for today, type: ``` sow show today ``` For yesterday's entries: ``` sow show yesterday ``` For all of this week's entries: ``` sow show week ``` And finally, to see the entries on a specific date: ``` sow show --date ``` (Dates should be entered in MM/DD/YYYY format.)

Aliases

When you make an entry, you are prompted to save an alias for easily adding future entries. The alias name becomes part of your command line arguments. This saves the Client and Task ID values to a configfile, which the application reads later. ``` sow add ``` For example: ``` sow add myclient 8 'i worked for myclient today!' ```

In Development:

1. ~~Deleting Entries~~ (Done) 2. ~~Submitting Timesheets for Verification~~ (Harvest API not supporting this in the near future.) 3. Using Timers for entries. 4. Administration tasks (managing clients, projects, etc)

Questions? Concerns? Want to Contribute?

Feel free to open an issue for any questions, concerns, ideas, or suggestions. Contribution is as easy as opening a pull request. Make sure you explain your changes and provide documentation in your code.

About

A Harvest Command Line App

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published