Framework

Database

Atlas is built around a simple idea: if data is hard to read, slow to query, and constantly needs translation between protocol logic and app UI, only the biggest teams will bother building. So Atlas treats the network as something apps can actually query.

The Starting Assumption

Apps should not need three translation layers just to show one profile

A lot of decentralized systems make builders do the same exhausting dance: fetch protocol data, rebuild custom indexes, reshape it into an app database, then reshape it again for the interface. The protocol may be decentralized, but the complexity still pushes power toward the few teams with enough money and time to tame it.

Atlas starts from a different assumption: data access must be fast and efficient. The less we need to transform data between the protocol layer and the user interface layer, the better.

That matters politically as much as technically. If useful apps are easier to build, more people can build them. Lowering that barrier helps decentralize power in practice, not just in branding.

Protocol data
Custom indexer
App database
UI model
Atlas Goal Keep protocol data much closer to what apps actually need
What Atlas Avoids

Not a slow blockchain, not a bag of scattered blobs

For rich application data, Atlas avoids two common extremes. A classic blockchain is great when the whole system depends on one shared ordered log, but it is a painful foundation for everyday app queries. A pure DHT spreads data around the network, but fast filtering, linking, and workflow handling become much harder.

Atlas instead behaves like a database sharded by types. Registries specialize in the kinds of data they understand and serve well. That gets much of the same benefit that microservices bring to large companies: focused storage, focused indexing, and focused features, without giving up shared interoperability.

  • Not one giant chain. Atlas does not force all rich data into a single globally serialized history.
  • Not a fully scattered DHT either. Atlas wants structured data to stay discoverable, queryable, and practical to serve fast.
  • Instead, registries specialize by type. They can become very good at serving a narrower area of the network.
  • The result feels closer to microservices. Same shared protocol outside, specialized data services inside.
How Atlas Organizes Data

Every piece of data moves through a stack that stays understandable: one envelope for transport and verification, shared types for meaning, strict validators for eligibility, handling modes for storage behavior, and documented workflows for state changes.

Every record starts with an envelope

Envelope

Atlas uses a constant outer format called an Envelope. That gives the network one reliable shape for verifiability and transport, no matter what the content actually means.

A registry or app can first validate the envelope itself, then move on to interpreting the content inside it. Verification stays predictable even when the meaning differs between a profile, a credential, a catalog, an attachment, or some domain-specific record.

The result is simpler tooling. You do not reinvent transport logic every time you define a new kind of data.

Constant format Verify once

Apps and registries learn one outer shape.

Transport Move anywhere

The same container can travel through different registries.

Interpretation Meaning comes later

The envelope stays stable while inner semantics vary by type.

Meaning is layered, not guessed

Types + Validators

Atlas uses schema.org types for the broad semantic skeleton. That gives the network a shared starting point for what a document is supposed to represent.

Then Atlas narrows that meaning with JSON schema validators and additionalType identifiers. Those stricter rules tell a registry or process exactly what fields it expects and whether an envelope is eligible to be accepted.

The same layer can also describe how the record should behave over time, for example latestOnly, latestWithHistory, appendOnly, workflow, or attachment. That means a registry does not have to guess whether it should replace, accumulate, sequence, or simply store the envelope.

1 Envelope

Verifiable container

2 schema.org type

Broad meaning

3 JSON schema

Strict eligibility rules

4 additionalType

Handling behavior

latestOnly
latestWithHistory
appendOnly
workflow
attachment

Registries specialize by type instead of all doing everything

Type Sharding

Atlas does not require every registry to become equally good at every possible kind of data. A registry can specialize around the types it wants to store, query, and serve efficiently.

That lets operators build targeted indexes and targeted product features. One registry may focus on identity-related data, another on domain credentials, another on some workflow-heavy niche. This is one reason Atlas can feel more like a practical database network than a universal blob store.

It is similar to how large engineering teams use microservices: shared contracts at the edges, specialized behavior inside each service.

Registry A Identity views

Profiles, proofs, balances, recognized competence.

Registry B Credentials

Strict validators and high-fidelity checks for one domain.

Registry C Custom workflows

State-heavy processes with rules tailored to that area.

Workflows turn stored documents into explicit processes

Documented Workflows

Some envelopes are not just records. They are steps inside a process. Atlas handles that by documenting workflows: what envelopes need to exist, what conditions must be met, and what can move a process into its next state.

That makes the behavior inspectable. Instead of hiding all the logic in a private backend, Atlas can describe the expected transitions in a way operators and builders can follow.

Once the workflow is documented, registries know what they are allowed to process, and app builders know what they should expect to happen next.

Envelope arrives Typed and validated
Conditions checked Rules and dependencies examined
State transition Accepted only when requirements match
Next envelope The process continues in a visible way

Operators can choose the engine, then optimize for fast reads

Compatible Storage

Atlas does not hard-code one database engine into the protocol. A registry can use any implementation it wants as long as the API layer stays compatible with the required envelope structure and filters.

In Atlas's main app implementation, each node runs PostgreSQL. That is a practical implementation choice, not a rule the whole network is forced to copy.

PostgreSQL works especially well here because Atlas can combine fast GIN indexes on JSON structures with classic relational features. That helps registries link related envelopes, build materialized views, and answer useful questions quickly.

In practice, those materialized views can represent how a registry currently sees an identity: whether it appears to be a verified human, what competences it recognizes, what balance it sees, and for registries, how much data fidelity they currently appear to have based on what they have synced from the network.

Linking Connect related envelopes

Useful when multiple records stored in one registry reference each other.

Materialized views Summarize identity state

Identity verification, competence, balances, and registry fidelity.

User experience Answer simple questions fast

Builders can read practical state without rebuilding everything themselves.

Guides, registries, and shelters each solve a different problem

Routing + Redundancy

Guides are specialized registries used for network routing. They store DataCatalog envelopes and verify a registry's totalBurn across freshness windows together with its declared supported data types.

Shelters are different. They are primarily the user's own local disk space, supporting all data types and acting as a personal inbox and outbox. Remote shelters can provide redundancy for availability when the user is offline. Guides do not index shelters.

Between those roles sit the ordinary registries that specialize in storing and serving chosen kinds of data. These are typically run by app builders who need specific data types for their application features — they prefer operating within shared infrastructure rather than proprietary silos, gaining access to the network's data in exchange for neutral sharing.

None of these infrastructure roles are verified humans, so they do not receive FairShares income and do not act in the human trust allocation role. Still, like any identity, they can be targets of trust signals, and a registry's reputation can also be inferred from its public operators declared (and proven) in its DataCatalog.

Guide Routing layer

Indexes registry catalogs, supported types, freshness, and burn-based signals.

Registry Specialized data service

Stores and serves selected types with domain-focused features.

Shelter Redundant peer support

Broad type support for inbox and outbox resilience.

What This Adds Up To

A database model built for real apps, not just protocol purity

1
Less translation

Atlas tries to keep protocol data closer to what apps actually need to render and query.

2
Meaning stays explicit

Envelope, type, validator, and handling mode each do a clear job.

3
Specialization stays possible

Registries can focus on the domains they serve best instead of pretending to optimize everything.

4
Storage stays flexible

The network fixes the contract, not the database brand. PostgreSQL is the main implementation today, not a protocol law.

5
Reads stay practical

Indexed JSON, links, and materialized views let users and builders ask useful questions without rebuilding the network locally.

Protocols belong to everyone

Atlas is open source. Read the docs, run a node, build an app, or just spread the word. The internet deserves better infrastructure.