norcal
v3.1.2 calendar replication
norcal
p2p command-line calendar
usage
norcal {PATTERN}
Show events in month calendar format.
By default, shows the current month,
or you can specify a PATTERN:
-3 Show the previous, current, and next month.
YYYY Show all the events in the year YYYY.
YYYY-MM Show all the events in the year/month YYYY-MM.
MNAME Show all the events for a month name MNAME in current year.
MNAME YYYY Show all the events for a month name MNAME in year YYYY.
norcal add TIMESTR {-t TITLE}
Add an event by its TIMESTR with a TITLE.
norcal rm ID
Delete an event by its ID.
norcal query {--gt GT --lt LT}
List events from GT to LT.
api
var norcal = require('norcal')
var cal = norcal(opts)
Create a new norcal instance cal
from:
opts.log
- hyperlog instance to useopts.db
- leveldb instance to use
cal.add(time, opts, cb)
Add an event given by a free-form string time
which is parsed by
parse-messy-schedule. Optionally:
opts.created
- parse relative to this timeopts.value
- a value to store alongside the time
cb(err, node, id)
fires with the underlying hyperlog node
and the generated
key/value id
.
cal.remove(id, cb)
Remove an event by its id
.
var stream = cal.query(opts, cb)
Produce a readable objectMode stream of events in the range given in opts
:
opts.gt
- date instance or stringopts.lt
- date instance or string
Each document in the object stream:
doc.time
- a Date instance for the eventdoc.value
- extra properties like a titledoc.created
- when this record was created / relative todoc.key
- the id in the underlying key/value store
You can collect all of the documents with cb(err, docs)
.
install
To get the command-line tool:
npm install -g norcal
To get the library:
npm install norcal
license
BSD