@studiowebux/petitedb@1.4.0Built and signed on GitHub ActionsBuilt and signed on GitHub Actions
Built and signed on GitHub Actions
latest
studiowebux/petitedbIn-memory with persistance local JSON database
This package works with DenoIt is unknown whether this package works with Cloudflare Workers, Node.js, Bun, Browsers




JSR Score
100%
Published
3 months ago (1.4.0)
About
- Manage data in memory
- Store and load data securely to/from a JSON file
- Core operations:
- Create, update, upsert, delete records
- Read, Read all and find specific records
- Snapshot and Clear data
- Retrieve the raw data using GetData
- Option to automatically add a
_id
per record - Option to manually save the data to disk
- Retrieve configurable amount of random records
- Option to watch local DB File and reload content automatically when its content is modified
- Ideal for test and offline applications
Installation and Usage
- Install deno: https://deno.com
deno add @studiowebux/petitedb
Example:
import { PetiteDB } from "@studiowebux/petitedb"; const db = new PetiteDB("database.json"); // Collection name: Category // Record id: shoes db.create("category", "shoes", { name: "Shoe" }); db.upsert("category", "shoes", { name: "shoes" }); db.update("category", "shoes", { name: "Shoes" }); db.read("category", "shoes"); db.find("category", { name: "Shoes" }); db.delete("category", "shoes");
const db1 = new PetiteDB("autoid.json"); db1.upsert("movies", "movie1", { title: "test 1" }); db1.upsert("movies", "movie2", { title: "test 2" }); db1.upsert("movies", "movie3", { title: "test 3" }); console.log(db1.readAll("movies"));
Releases and Github Actions
git tag -a X.Y.Z -m "Version X.Y.Z" git push origin tags/X.Y.Z
Contributing
- Fork the project
- Create a Feature Branch
- Commit your changes
- Push your changes
- Create a PR
Working with your local branch
Branch Checkout:
git checkout -b <feature|fix|release|chore|hotfix>/prefix-name
Your branch name must starts with [feature|fix|release|chore|hotfix] and use a / before the name; Use hyphens as separator; The prefix correspond to your Kanban tool id (e.g. abc-123)
Keep your branch synced:
git fetch origin git rebase origin/master
Commit your changes:
git add . git commit -m "<feat|ci|test|docs|build|chore|style|refactor|perf|BREAKING CHANGE>: commit message"
Follow this convention commitlint for your commit message structure
Push your changes:
git push origin <feature|fix|release|chore|hotfix>/prefix-name
Examples:
git checkout -b release/v1.15.5 git checkout -b feature/abc-123-something-awesome git checkout -b hotfix/abc-432-something-bad-to-fix
git commit -m "docs: added awesome documentation" git commit -m "feat: added new feature" git commit -m "test: added tests"
License
Distributed under the MIT License. See LICENSE for more information.
Contact
- Tommy Gingras @ tommy@studiowebux.com | Studio Webux
|
|
Webux Lab
|

Built and signed on
View transparency logGitHub Actions
Add Package
deno add jsr:@studiowebux/petitedb
Import symbol
import * as petitedb from "@studiowebux/petitedb";
---- OR ----
Import directly with a jsr specifier
import * as petitedb from "jsr:@studiowebux/petitedb";
Add Package
npx jsr add @studiowebux/petitedb
Import symbol
import * as petitedb from "@studiowebux/petitedb";
Add Package
yarn dlx jsr add @studiowebux/petitedb
Import symbol
import * as petitedb from "@studiowebux/petitedb";
Add Package
pnpm dlx jsr add @studiowebux/petitedb
Import symbol
import * as petitedb from "@studiowebux/petitedb";
Add Package
bunx jsr add @studiowebux/petitedb
Import symbol
import * as petitedb from "@studiowebux/petitedb";