Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
informa-db.js
Advanced tools
Now with browser support
The concept is to interact with JSON files based databases by using javascript proxies.
npm i --save informa-db.js
Here's a code example on how to use it:
const { Db, DbUtils } = require('informa-db.js');
const players = new Db('players.json');
if (!players[process.env.PLAYER]) players[process.env.PLAYER] = {
inventory: Array(20),
equipment: Array(5),
hp: 20,
xp: 0,
};
const wordDocument = new Db('calculations.json', { saveOnChange: false, exportThis: true });
// Won't work if you destructure
wordDocument.value.aaa = 123456;
wordDocument.value.bbb = wordDocument.value.aaa ** 2;
wordDocument.value.aaa >>= 2;
wordDocument.value.aaa <<= 3;
wordDocument.value.bbb >>= Math.floor(30 * Math.random());
console.log(wordDocument.value);
wordDocument.update();
wordDocument.value.aaa <<= 3;
wordDocument.value.bbb >>= Math.floor(30 * Math.random());
console.log(wordDocument.value);
All of the following also applies to the browser version
new Db( path<String>, settings<Object> )
settings.soc<Boolean>
(Or settings.saveOnChange<Boolean>
)Whether to save once the value changes Has to be used with enableThis
settings.enableThis<Boolean>
Whether to return the entire class or only the value.
settings.path<String>
Path to file. Will throw an error if none provided or if type is incorrect
settings.defaultValue<Any>
Default string to write on file if it doesn't exist.
Defaults to {}
settings.saveSpace<Any>
Wether not to indent on file save
Defaults to false
--
The following applies only if settings.enableThis
was set to true
this.update()
Saves this.value
to the file named settings.path
this.value
Content of the batabase
this.readOnlyValue
this.value
without the listeners
DbUtils
DbUtils.setAllTo( DB<Db>, setTo<Object/Array> )
"Resets" or sets the entire DB to a setTo
Thanks goes to these wonderful people (emoji key):
informathemusic 💻 | Haouari haithem 💻 |
This project follows the all-contributors specification. Contributions of any kind welcome!
FAQs
DataBases made easier
We found that informa-db.js demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers 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.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.