Next Steps
You have created resources, recorded a process run, and queried the result. The rest of the documentation is organized by what you are trying to do.
Pick your next move
| If you want to… | Go to |
|---|---|
| Model your own experiment’s resources | Create a Resource Template |
| Model a multi-step workflow | Create a Process Template |
| Find and filter your records | Query Resources |
| Trace a result back to its inputs | Trace Provenance |
| Share a database with colleagues | Set Up a RECAP Server |
| Understand why RECAP is designed this way | Explanation |
| Look up an exact signature | API Reference |
| Look up a term you have seen but not understood | Glossary |
How the documentation is organized
The four sections answer different kinds of question, so it is worth knowing which one you are in.
Getting Started (this section) teaches through a worked example. Read it in order, once.
How-To Guides are task recipes for people who already know the concepts. Each answers one “how do I…?” question and assumes you do not want a tutorial.
Explanation covers why RECAP works the way it does: the data model, the query and loading model, authentication and authorization, and the REST architecture. Read it when a design decision seems surprising and you want the reasoning.
Reference Guides and the generated API Reference are lookup material: the glossary, server configuration fields, CLI flags, and exact signatures. Nobody reads these front to back.
Going remote
The code you wrote in this tutorial works unchanged against a shared server. Only the client construction changes:
# Local
client = RecapClient.from_sqlite("experiment.db")
# Remote
client = RecapClient.from_url("https://recap.example.org", api_key="...")Everything after that line, namespaces, builders, and queries, behaves the same. See Set Up a RECAP Server to run one, or Authenticate a Remote Client to connect to one that already exists.