timer-db
v0.1.0-pre2
Published
A library for cubing timer results storage with CouchDB-based synchronization.
Downloads
5
Readme
timer-db
A JavaScript cubing timer database, with:
- An API designed for cubing timers.
- Fast local storage (works offline).
- Simple server sync (using PouchDB).
Basic Usage
Install with npm install timer-db
and use like this:
import { TimerDB } from "timer-db";
async function demo() {
const timerDB = new TimerDB();
const sessions = await timerDB.getSessions();
// Use an existing session, or create a new one.
const s =
sessions[0] ?? (await timerDB.createSession("My 3x3x3 Solves", "3x3x3"));
s.addStatListener(console.log);
s.add({
resultTotalMs: 7080,
unixDate: Date.now(),
});
}
demo();
Sync with Server
timerDB.startSync({
username: "[username]",
password: "[password]",
});
You can use this with any CouchDB-compatible instance. There's a test server available; Contact Lucas Garron for an account!
License
This project is licensed under the GPL license (version 3 or later). This means that this library is free to use, although you must publish any code that uses it (e.g. also put it on GitHub). See the full license for exact details.
We've selected this license in order to encourage the cubing community to work on software in a way so that everyone can contribute and extend each other's work.