UniMarc & Web3
The web3 library for sovereign data
One shared library of public-domain books, for any app. Readers browse and read without an account, keep the books they open on their own device, and never see a wallet. Underneath, every record follows library standards and every file is stored permanently on web3.
- web2experience
- web3infrastructure
Live in the npm package
Read the chain in three calls.
import { DEFAULT_CHAIN_ID }
from '@the_library/network-config';
import { getReadClient }
from '@the_library/public/web3';
const client = getReadClient(DEFAULT_CHAIN_ID);
await client.ready;
await client.bouncerStorage.nbAccounts(); - Read without an account or a wallet
- Network fees covered for members
- Books on Arweave, anchored on Gnosis
- Open Code
- Free for non-commercial use
- No code change allowed
The problem
Digital libraries keep rebuilding the same shelf
Book records are scattered, every reading app invents its own data model, and web3 versions ask readers for wallets. Data Pond gives every app the same library records and permanent storage, with the web2 experience people know.
Every app should not have to invent its own catalogue and blockchain integration.
Readers should not need a wallet or crypto to read a book or keep their notes.
Records should use the identifiers and classifications libraries already use.
The crossroads
Web2 on the surface. Web3 underneath.
People shouldn’t need to learn a blockchain to use one. The framework keeps the gestures they know from web2 and does the web3 work behind them. Here is what happens at worldbibliotech.com, the live library built on it.
The framework
One shared library, already built.
One standard way into web3 for every app — so no team has to write its own blockchain code, and every app reads the same library records.
- 01 STANDARDS
Library standards, built in
Books, authors and subjects use the codes libraries already use: ISBN, ISSN, ISNI, ORCID; Dewey, Library of Congress, UDC and more. Fields map to UNIMARC and MARC 21 (no record converter yet).
- 02 REGISTRY
No hard-coded addresses
Contract addresses and ABIs load from the published registry, with an on-chain fallback. When a storage contract is migrated, the registry points apps to the new one.
- 03 MODELS
One shared data model
Generated models for books, people, subjects, classification systems and posts, with adapters for Vue, React, Solid and Astro, so every app reads the same records the same way.
- 04 YOUR COPY
One collection, your own copy
Everyone starts from the same collection. A reader’s edits change their own copy, not anyone else’s; other readers see them only if they choose to follow that reader.
- 05 SYNC
Local first, then on-chain
Edits are saved on the device first, so the interface never waits for a block. A save then writes them on Gnosis under the reader’s account.
- 06 STORAGE
Permanent, provable storage
Book files live permanently on Arweave. Each collection is anchored on-chain with its SHA-256 fingerprint, so a copy can be checked against it.
Walletless by default: readers never connect a wallet. For developers, the SDK also ships a MetaMask connector.
Live in the public npm package
The framework is already running.
Explore @the_library/public and try its ORM, front-end adapters, persistence pipeline and Web3 book downloader in your own project. See it at work in worldbibliotech.com, serving 2,766 public-domain books in English.
Explore the package on npm- 01 ORM · FRONT END
One data model. Four front ends.
Generated Book, Person, Tag, ClassificationSystem and Post models, with reactive adapters for Vue, React, Solid and Astro. Every value is stored per language, with a defined fallback.
- 02 ACTIONS · STATS
Useful actions are built in.
Records can capture visits, downloads, ratings, shares and activity on parts such as chapters. Lists for visited, downloaded and favourite records are ready to use.
- 03 PERSISTENCE
Edits persist as you work.
Edits and actions enter the patch queue and are saved in IndexedDB, then go on-chain with the reader’s next save. On the next boot, the models and stats are rebuilt from that history.
- 04 BOOKS · ASSETS
Built for large books and images.
Web workers download PDFs from Arweave, unzip them when needed and render pages with MuPDF (WebAssembly). If a gateway fails, the next is tried; browser caches make repeat opens fast.
Once a book or image has been downloaded and cached, the optional service worker can serve it offline across reloads. Apps can request persistent browser storage; available space and eviction remain controlled by the browser. Activity is recorded on the device first; a save puts it on-chain, public under the account’s name (never a real name or email) and counted without user IDs in the weekly statistics.
A taste of the live package
Small calls. Useful building blocks.
Fragments of the public @the_library/public API: book access, engagement and a reactive view. Install it with npm install @the_library/public @the_library/network-config.
-
The cover, a page, the PDF.
import { GetImage, EnsurePageImage, GetPdf } from '@the_library/public/downloader'; const cover = await GetImage(book.previewTxId); const page5 = await EnsurePageImage(pdfTxId, 5); const pdf = await GetPdf(pdfTxId);Each call returns a Response, cached in the browser for next time. Pages are rendered in a Web Worker.
-
Actions live on the model.
import { Book } from '@the_library/public/models/models'; import { Rating } from '@the_library/public/models'; const book = await Book.LoadAsync(bookId); book.visit(); book.rating = Rating.Keep;Actions are queued on the device and go on-chain with the reader’s next save, public under their account. Visits to individual parts stay on the device.
-
Follow download state in Vue.
import { useFileStatus } from '@the_library/public/downloader/vue'; const status = useFileStatus(txId);Vue, React and Solid adapters expose reactive download and rendering progress.
Setup (worker files, models boot), the API reference and type-checked how-to guides: @the_library/public on npm ↗
A public-domain corpus. Your design.
Build a library your way.
The framework gives Open Code developers a foundation for new ways to discover and read public-domain books — 2,766 of them today, in English. Design the library that serves your readers.
- 01 DISCOVER
A library with your point of view.
Shape the public-domain collection around a subject, place, period or community. Choose how people search, browse and read it.
- 02 CREATE
A reading room, archive or learning space.
Build the experience that fits your audience—from a focused catalog to a guided way through books and related materials.
- 03 PLANNED · DISCUSS
Conversations around the books.
Posts and their links to books are already modelled and indexed on-chain. Forums built on them are planned; posting is a write, so it runs through the library’s own services.
Open Code is copyrighted and governed by its licence; it is not open-source software. Apps built on it are non-commercial and read the network; writing is reserved to authorised services.
Questions
What it means for you.
Straight answers about accounts, privacy and offline reading — including what is public and what isn’t on-chain.
Do I need an account to read?
No. Reading, searching and downloading need no account — that is a condition of the licence. An account is only needed to save your own changes and activity on-chain.
Do I need a wallet, or crypto?
No. A member’s wallet is created by the library’s account service from an email address, and the project tops it up with the network fees (gas) it needs. Readers never connect a wallet. (For developers, the SDK also includes a MetaMask connector.)
What does membership cost?
You can join at worldbibliotech.com (currently $2), or a library can create accounts for its readers. Donations are voluntary, and worldbibliotech.com is the only place that takes them.
What happens to my email address?
It is never stored on-chain in clear — only a hash, a fingerprint that can’t be turned back into the address. The hash is used to recover the account, and to confirm its retirement.
Is what I do anonymous?
Pseudonymous, not anonymous. Once saved, your edits, visits, downloads, ratings and shares are public on the chain under your account’s username — never your real name or email. The weekly statistics count them without any user ID. Visits to individual parts of a book stay on your device.
Can I delete my account?
You can retire it, confirmed through a link sent to your email. Retiring unlinks your username and your email’s hash from the account. What you already saved stays on the public chain: blockchain records can’t be erased.
Does it work offline?
Books and pages you have opened are kept in your browser, and open without a connection when the app uses the optional offline worker. If space runs short, the least recently used books are removed first — never the open one, or ones you pinned.
How safe is the member wallet?
Its key is kept in the browser’s storage, unencrypted, so it only ever holds the small amount needed for network fees. Nothing of value sits in it, and your email can recover the account.
Where does everything live?
Book files on Arweave, which stores them permanently. Accounts, saves and each collection’s SHA-256 fingerprint on Gnosis. Not everything is on-chain, and we say so: a registry website lists the contract addresses (with an on-chain fallback), an account service creates accounts and sends recovery emails, and Arweave gateways serve the files.
How do rankings resist cheating?
The idea is to count what readers remove, not what they like. A fake like hides in a crowd; faking curation takes many coordinated deletions, and each one is a public record on-chain. The SDK provides that public trail; the ranking itself is computed outside it.
Can I build my own app on it?
Yes, for non-commercial use: install @the_library/public, read the shared collection and present it your way, with the code unmodified. Writing (accounts, saves, posts) goes through the library’s own services; talk to us about write access or commercial use.
Our promise
D.I.C. Licence
How the knowledge served through the framework may be shared. The code has its own licence.
- Decentralized
- Apps read the shared network through its anchors, never a private copy.
- Integral
- Non-commercial: no paywall, no login to read, no ads, no own donations.
- Common
- Content keeps its attribution and licence (based on CC BY-NC-ND 4.0).
The code behind the promise
-
Open Code.
Visible, but copyrighted (© 2026 Antoine LUCAS (“Data Pond”)) under the D-Open Code Sovereign Licence 1.1. Not open source.
-
Free for non-commercial use.
Use and share unmodified releases at no cost. Apps read the network; writing is reserved to authorised services.
-
No code change allowed.
Build steps, testing and your own code around the API are fine. Uncured changes to the code or its addresses carry liquidated damages (§16.4).
+ K Knowledge
D.I.C. + Knowledge = the Ꭰ-SAFE label, certified at dsafe.us.
The mark uses the Cherokee letter Ꭰ (U+13A0) in place of the Latin D.
Who it’s for
One framework, four kinds of partner.
From the D-SAFE network’s own startups to public archives: teams that want web3’s permanence and proof without writing their own blockchain code.
D-SAFE Network
Need one standard framework to build on, instead of each team writing its own blockchain code.
Libraries and catalogues
Need records that use the identifiers and classifications they already use: ISBN, Dewey, Library of Congress, UNIMARC fields.
Open Code partners
Need visible, copyrighted code they can use, copy and distribute for non-commercial use under clear terms, without modifying it.
Public digital archives
Need permanent, verifiable storage connected through one shared data model.
Roadmap
From framework launch to the developer community.
- 2025 Delivered
Focus
- Research
- 2026 Delivered
Focus
- Framework and registry launch
Go to market
- Partner programme
- 2027 Next
Focus
- Developer code sample — December
- MARC certifications
- Developer community
- Grant applications
Go to market
- Partner integrations
- Grant programme applications
The network
The D-SAFE Network
6 startups built on the D-Code Model, each solving a different piece of the same problem: knowledge infrastructure that outlasts any single company. Most of the network’s code is published under the D-Open Code Sovereign Licence.
-
D-SAFE A trust label for educational works dsafe.us dsafe.us -
World Biblio Tech A public library for every community, built from a few words worldbibliotech.org worldbibliotech.org -
Nest Egg Commons Fund a library once. Keep it open for good. worldbibliotech.com worldbibliotech.com -
Data Pond The web3 library for sovereign data datapond.earth datapond.earth -
A-I-Classify AI classification for library books pondenterprise.com pondenterprise.com
-
AddicTech Give readers a reason to return worldbibliotech.net worldbibliotech.net
Become a partner
Connect your web app to the ecosystem.
Use the Open Code framework, free for non-commercial use, to bring a permanent public library to your users with the experience of web2. Tell us about your app — what it does, who uses it, and what you’d like to read.
data@datapond.earth datapond.earth
What partnering means
- 01 Non-commercial and read-only Your app reads the shared network. Accounts, saves and donations go through the library’s own services; write access needs written authorisation.
- 02 Use the framework unmodified The code remains copyrighted. No edits, forks or redirection to other ledgers or databases; your own code around its public API is fine.
- 03 Keep public data open No paywall, no login to read, no ads and no donations of your own in front of the ecosystem’s public data.
- 04 Serve D-SAFE content Content your app serves through the framework meets the D-SAFE label standards.