Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Zero-dependency, simple pseudo-database on Cloudflare R2, inspired by lowdb.
Simple, zero-dependency, object pseudo-database for Cloudflare Workers using R2 buckets, strongly inspired by lowdb 🤗(https://github.com/typicode/lowdb/).
Become a sponsor and have your company logo here 👉 GitHub Sponsors
import lowstorage from 'lowstorage';
// Initialize object and get users collection
const usersCol = await lowstorage(env, 'MY_TESTING_BUCKET').collection('users');
// Add new user
// you can provide _id or it will be generated as crypto.randomUUID(); -> https://developers.cloudflare.com/workers/runtime-apis/web-crypto/
const newUser = await usersCol.insert({
name: 'Kevin',
gender: 'whatever',
posts: [],
});
// Show all users
const allUsers = usersCol.find({});
// Find user by ID and update name
await usersCol.update({ _id: id }, { name: 'Carlos' });
npm install lowstorage
Seamless migration, robust free tier, Nonee gress fees. Dive into the future of data storage with Cloudflare R2 https://developers.cloudflare.com/r2/
- Storage: 10 GB/month
- Class A operations (mutate state): 1,000,000 / month
- Class B operations (read state): 10,000,000 / month
- more details on pricing R2
Check out wrangler.toml from examples
Insctructions with pictures https://github.com/gfodor/p2pcf/blob/master/INSTALL.md#set-up-the-r2-bucket
insert(doc)
find(query)
{_id: id}
).findOne(query)
find
, but it returns only the first matching document.null
if no match is found.update(query, update)
updateOne(query, update)
1
if a document is updated, otherwise 0
.delete(query)
remove()
count(query)
Check out dummy examples Run:
cd examples
npm install
npm run dev
Feel free to dive in! Open an issue or submit PRs.
Standard Readme follows the Contributor Covenant Code of Conduct.
FAQs
Simple, micro-dependency, pseudo-database using Apache Avro serialization on S3-compatible storages, inspired by lowdb.
We found that lowstorage demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 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.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.