Skip to content
Scryr

Getting started

Choose the path that fits what you want to try:

  • Cloud: Log in to Scryr, open a sample architecture, and edit it in the hosted app. There is nothing to install.
  • Open source (OSS): Install the standalone CLI, create a small local diagram without a repository, and then bring Scryr into your own codebase.

The open-source CLI embeds the Python manifest SDK, GraphQL server, and interactive diagram, so Homebrew is the only installation step.

Terminal window
brew install scryr-app/tap/scryr

Create an empty folder and enter it:

Terminal window
mkdir scryr-quick-start
cd scryr-quick-start

Save this small example as index.scry:

index.scry
from scryr import Diagram, Info, Manifest
from scryr.types import ProgrammingLanguage, WebFramework
api = Manifest(
manifest_id="services/api",
name="Public API",
connections=[Manifest(name="Postgres")],
info=Info(
description="Business API",
languages=[ProgrammingLanguage.python],
frameworks=[WebFramework.fastapi],
owners="Platform",
),
)
database = Manifest(name="Postgres")
architecture = Diagram(name="System architecture", manifests=[api, database])
Terminal window
scryr serve --watch

By default, serve starts the embedded UI and GraphQL server at 127.0.0.1:8000, formats and validates the source, uploads the artifact, and opens the browser.

Terminal window
cd /path/to/your/repository

Add index.scry at the repository root. You can start by copying the small example above, or give the Scryr prompt to your coding agent to generate a model of the repository for you.

Review the generated file before running it. A .scry file is Python and can execute imported code.

Terminal window
scryr check
scryr serve --watch

--path defaults to index.scry, and --manifest-dir defaults to the current directory.

Terminal window
scryr check --path architecture/platform.scry --manifest-dir .
scryr serve --path services/catalog/index.scry --manifest-dir .

Nested entrypoints are grouped by their parent folder in the diagram selector.