Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/glatek/rutabaga
JSON Schema-backed CRUD operations in Service Workers with IndexedDB.
https://github.com/glatek/rutabaga
crud indexeddb json-schema service-worker
Last synced: 6 days ago
JSON representation
JSON Schema-backed CRUD operations in Service Workers with IndexedDB.
- Host: GitHub
- URL: https://github.com/glatek/rutabaga
- Owner: Glatek
- Created: 2024-01-09T19:15:28.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-01-18T20:45:20.000Z (10 months ago)
- Last Synced: 2024-10-10T11:21:42.166Z (27 days ago)
- Topics: crud, indexeddb, json-schema, service-worker
- Language: JavaScript
- Homepage:
- Size: 249 KB
- Stars: 0
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# @glatek/rutabaga
[![Biome](https://github.com/Glatek/rutabaga/actions/workflows/biome.yml/badge.svg)](https://github.com/Glatek/rutabaga/actions/workflows/biome.yml)
[![Vitest](https://github.com/Glatek/rutabaga/actions/workflows/vitest.yml/badge.svg)](https://github.com/Glatek/rutabaga/actions/workflows/vitest.yml)![Rutabaga Logo](https://i.imgur.com/0eOAq3T.png)
JSON Schema-backed CRUD operations in Service Workers with IndexedDB.
## Description
That short intro is a mouth full. This project takes JSON Schema definitions and:
- Creates API routes for CRUD
- Generates HTML forms
- Stores the data in IndexedDB via Dexie.JS```mermaid
sequenceDiagram
participant A as App
participant S as ServiceWorker
participant D as IndexedDB
critical CREATE | POST /api/:table
A->>S: Request
S->>D: read
D-->>S: read success
S-->>A: Response
end
critical READ | GET /api/:table
A->>S: Request
S->>D: write
D-->>S: write success
S-->>A: Response
end
critical UPDATE | PUT /api/:table
A->>S: Request
S->>D: update
D-->>S: update success
S-->>A: Response
end
critical DELETE | DELETE /api/:table
A->>S: Request
S->>D: delete
D-->>S: delete success
S-->>A: Response
end
```## Usage
Coming soon...