1.0.1 • Published 4 years ago

bustle v1.0.1

Weekly downloads
-
License
ISC
Repository
-
Last release
4 years ago

bustle

Copyright 2020 - Sleepless Inc. - All Rights Reserved

The Bustle™ time tracker API

Bustle is a web-based time tracking tool. Features include:

  • Multiple users (no limit)
  • Multiple clients per user (no limit)
  • Multiple projects per client (no limit)
  • To-the-minute time-tracking
  • Customizable UI
  • Configurable Auto-clockout
  • Administration UI with reports

This module implements a Javascript, browser based interface to the Bustle™ service.

Usage

Installing with NPM is easiest:

npm install bustle

cd doc_root
ln -s ../node_modules/bustle/bustle.js

your.html

Incorporate into your HTML pages:

<script src=bustle.js></script>
<script>

	bus = Bustle.create();

	bus.config({
		session: { ttl: 3600 },
		server: { port: 12345 [, host: "yourhost.com"] },
	});

	bus.ui.fetch("bustle-ui-default.html");
	bus.ui.embed("#container");

	bus.session.login( uid, sid, okay, fail );

	... 

	bus.clients.create( { name: "EWRS" }, okay, fail );
	bus.projects.create( { name: "My Project, client_id: 123 }, okay, fail );
	bus.projects.destroy( { project_id: 345 }, okay, fail );
	bus.entries.create( { ts: 153324523 project_id: 345 }, okay, fail )
	bus.entries.fetch( { ts_from: 153342533, ts_to: 1533534221 }, okay, fail );
	bus.entries.store( entry, okay, fail );

	bus.session.logout( okay );

</script>

your.js

Special licensing allows onsite deployment of the server portion of Bustle™, which allows for custom user authentication

bus = require("./bustle-server.js");

bus.alt_login = function( user, pass, okay, fail ) {
	// check uid and pass against your db
};