mirror of
https://github.com/DeBrosOfficial/orama.git
synced 2026-08-06 13:49:26 +00:00
- fix(gateway): server-side storage unpin for serverless jobs (bugboard #151). The layer-1 storage gate now accepts the runtime key's exchanged (storage- scoped) JWT on DELETE /v1/storage/unpin — wallet JWT OR api-key-exchanged — so a userless cron/avatar-GC/free-up-space can reclaim its own namespace's pins. A bare API key still fails; unpin stays namespace-ownership-checked and reclaim-only. Upload/get/pin keep the strict wallet-JWT requirement. - fix(storage): unpin is now idempotent (bugboard #140) — a CID already absent from the cluster pinset returns 200 {already_unpinned:true} instead of a 500 wrapping the cluster 404 (matched to the definitive "not part of the pinset" phrase; unrelated 404/"not found" still error). - fix(serverless): stop trusting the client X-Wallet header for invoke identity (bugboard #152) — it let an unauthenticated caller on the public invoke paths impersonate any wallet and defeat in-function admin gates. Identity now comes only from a verified JWT subject or the API-key-derived namespace. - feat(serverless): gateway-enforced `internal` function flag (bugboard #152) — migration 035 is_internal; function.yaml `internal:`; an internal function is invokable only by a system trigger or an admin caller (HTTP, stateless-WS, persistent-WS upgrade, and WASM->WASM paths all gated). Default false, so no existing function changes behavior.
Orama Network
A decentralized infrastructure platform combining distributed SQL, IPFS storage, caching, serverless WASM execution, and privacy relay — all managed through a unified API gateway.
Packages
| Package | Language | Description |
|---|---|---|
| core/ | Go | API gateway, distributed node, CLI, and client SDK |
| sdk/ | TypeScript | @debros/orama — JavaScript/TypeScript SDK (npm) |
| website/ | TypeScript | Marketing website and invest portal |
| vault/ | Zig | Distributed secrets vault (Shamir's Secret Sharing) |
| os/ | Go + Buildroot | OramaOS — hardened minimal Linux for network nodes |
Quick Start
# Build the core network binaries
make core-build
# Run tests
make core-test
# Start website dev server
make website-dev
# Build vault
make vault-build
Documentation
| Document | Description |
|---|---|
| Architecture | System architecture and design patterns |
| Deployment Guide | Deploy apps, databases, and domains |
| Dev & Deploy | Building, deploying to VPS, rolling upgrades |
| Security | Security hardening and threat model |
| Monitoring | Cluster health monitoring |
| Client SDK | Go SDK documentation |
| Serverless | WASM serverless functions |
| Common Problems | Troubleshooting known issues |
Contributing
See CONTRIBUTING.md for setup, development, and PR guidelines.
License
Description
A robust, decentralized peer-to-peer network built in Go, providing distributed SQL database, key-value storage, pub/sub messaging, and resilient peer management. Designed for applications needing reliable, scalable, and secure data sharing without centralized infrastructure.
https://orama.network
Languages
Go
78.9%
TypeScript
12.6%
Zig
3.7%
MDX
3.4%
PLpgSQL
0.7%
Other
0.6%