Security News
Weekly Downloads Now Available in npm Package Search Results
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.
flat-file-db
Advanced tools
Fast in-process flat file database for Node.js that supports JSON and caches all data in memory. All data is persisted to an open file using a append-only algorithm ensuring compact file sizes and strong consistency.
npm install flat-file-db
Pass a database file to use to the flat-file-db constructor and wait for the database to open. When it is open all data has been loaded into memory.
var flatfile = require('flat-file-db');
var db = flatfile('/tmp/my.db');
db.on('open', function() {
db.put('hello', {world:1}); // store some data
console.log(db.get('hello')) // prints {world:1}
db.put('hey', {world:2}, function() {
// 'hey' is now fully persisted
});
});
If you don't want to wait for it to open use flatfile.sync
var db = flatfile.sync('/tmp/my.db');
console.log(db.get('hello')); // prints {world:1}
If you issue multiple writes the last one will always win
for (var i = 0; i < 10; i++) {
db.put('test', {count:i}, ...);
}
console.log(db.get('test')); // {count:9} which also the persisted value of 'test'
db = flatfile(path, opts)
Create a new db instance. Per default fsync is called on all puts. To disable this set opts.fsync = false
db = flatfile.sync(path, opts)
Same as above except you do not need to wait for the open event
db.put(key, val, [cb])
Insert or update new key
db.del(key, [cb])
Delete a key
db.get(key) -> doc
Get the value of a key
db.has(key) -> bool
True if db has key
db.keys() -> list
Get all keys as an array
db.clear([cb])
Clears the database of all values
db.close()
Close the database
db.on('open')
Fired when the db is open and ready for use.
db.on('close')
Fired when the db is fully closed
db.on('drain')
All puts and deletes are flushed to disk
MIT
FAQs
Fast in-process flat file database that caches all data in memory
The npm package flat-file-db receives a total of 98 weekly downloads. As such, flat-file-db popularity was classified as not popular.
We found that flat-file-db demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
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.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.
Security News
A Stanford study reveals 9.5% of engineers contribute almost nothing, costing tech $90B annually, with remote work fueling the rise of "ghost engineers."
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.