An artifact is a document with format: "artifact": instead of a Word file or a PDF, Doconda delivers a web page that
stores data. What it stores persists between visits.
It is created, listed, tracked and billed like any other document. It is private to your project: you decide who gets
the link (for example, inside your product, in an iframe).
Create one
With a sentence, and Doconda writes the page:
Or with your content in Markdown, and Doconda turns it into the page (keeping your text):
It costs like any created document, by its quality level.
How it’s made: first a short design plan (what it’s for, sections, colours and fonts, interaction) that checks what the
page can do: store in doconda.db and use Tailwind, Chart.js, d3 or dayjs, nothing else (no external APIs, email,
payments or sign-in; if you ask for them, it proposes how to solve it inside the page). Then it writes a single HTML
with everything inside (pictures too), looks at it on desktop and phone and fixes what looks wrong: once at fast and
standard, twice at best. The artifact.planned event carries the plan.
All three modes work: direct, stream and background. The style, in your own words,
describes how the page looks. An artifact takes no sources.
Where it stores its data
You pick one of two modes with artifact.storage:
The page is the same in both modes: it uses doconda.db and Doconda decides where to store.
The link
When it is ready, outputs includes an html whose url is the page. That link expires in 1 hour; ask for another one
with the duration you need (up to 7 days):
Each artifact is served on its own subdomain, isolated from your website, from Doconda and from other artifacts
(allow-same-origin refers to that subdomain, which is its own).
Anyone with the link can see the page (and, in shared, save data to it) until it expires. Give it only to those who should use it.
Save data from the page
Doconda adds window.doconda.db to the page. It stores JSON by collection and key:
- Collection and key names: letters, numbers,
_, - or . (up to 64).
- Each record, up to 16 KB of JSON; each artifact, up to 5,000 records.
- Per artifact and minute: up to 1,200 reads and 120 writes. Above that,
429 rate_limited.
- The page opens isolated: it has no cookies or
localStorage, and it cannot read anything from your website or Doconda.
To save, use doconda.db.
Read the data from your program
Projects that don’t store content
If the project has storage turned off (or the request has store: false), an artifact can only be
local, and Doconda doesn’t host it: it is delivered as an artifact.html file for you to upload to your website (we
delete it after 15 minutes). Its data stays in each visitor’s browser.
Region
An artifact lives in its project’s region, like any other document: its page and its data never leave it.