Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

freshbooks-cli-timetrap

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

freshbooks-cli-timetrap

Integrates the freshbooks-cli tools with timetrap time tracking

  • 0.1.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
36
increased by260%
Maintainers
1
Weekly downloads
 
Created
Source

freshbooks-cli-timetrap

Build Status

Integrates the freshbooks-cli tools with timetrap time tracking

Overview

freshbooks-cli is a command-line interface to the FreshBooks API.

timetrap is a simple command line timetracker written in Ruby that can export JSON-formatted time entry data.

freshbooks-cli-timetrap implements the timetrap subcommand for freshbooks-cli.

Simply pipe your timetrap data to this subcommand to adapt your timesheet entries for use within freshbooks.

Before you use this tool you need to map some timetrap sheets to the associated freshbooks projects and tasks.

# Install timetrap
$ gem install timetrap

# Switch to a new sheet (creating it unless it exists)
$ t sheet myproject

# Record some entries
$ t in "doing one thing"; t out
$ t in "doing another"; t out

# On your FreshBooks account, create a new Project and Task, and note
# the ID of each.

# Map your new timesheet to your new freshbooks project/task.
$ freshbooks config -k timetrap:sheets:myproject:project_id -v <your project id>
$ freshbooks config -k timetrap:sheets:myproject:task_id -v <your task id>

All done!

Usage

--lines, -l - Convert timetrap entries to JSON-formatted invoice lines

--data JSON - Time entry data for --create

--help, -h - Display this message

See http://developers.freshbooks.com/docs/invoices/#invoice.lines.add for more information.

Examples

# Converting timetrap entries into invoice line items
$ timetrap display -s saturday -e friday -f json | freshbooks timetrap --lines
[
  {
    "name":"Some task",
    "description":"Did some work",
    "unit_cost":"150",
    "quantity":"3.2",
    "type":"Item"
  },
  {
    "name":"Some task",
    "description":"Did some other work",
    "unit_cost":"150",
    "quantity":"0.0",
    "type":"Item"
  },
  {
    "name":"Some task",
    "description":"Did some different work",
    "unit_cost":"150",
    "quantity":"0.5",
    "type":"Item"
  }
]

Contributing

The test suite is implemented with nodeunit and nixt.

To rebuild & run the tests

$ git clone https://github.com/logankoester/freshbooks-cli-timetrap.git
$ cd freshbooks-cli-timetrap
$ npm install
$ grunt test

You can use grunt watch to automatically rebuild and run the test suite when files are changed.

Use npm link from the project directory to tell freshbooks-cli to use your modified freshbooks-cli-timetrap during development.

To contribute back, fork the repo and open a pull request with your changes.

License

Copyright (c) 2014 Logan Koester Licensed under the MIT license.

Keywords

FAQs

Package last updated on 07 May 2014

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc