Skip to main content

Scan repositories for scp.yaml files and build architecture graphs

Project description

SCP Constructor

Build architecture graphs from scp.yaml files. Scan local directories or GitHub organizations, validate manifests, sync to Neo4j, and export to JSON or Mermaid diagrams.

Installation

uv sync

Usage

Validate SCP Files

uv run scp validate ./examples

Scan Local Directory

# Scan and export to Mermaid
uv run scp scan ./path/to/repos --export mermaid

# Scan and export to JSON
uv run scp scan ./path/to/repos --export json -o graph.json

Scan GitHub Organization

export GITHUB_TOKEN=ghp_xxx
uv run scp scan-github myorg --export mermaid

Sync to Neo4j

export NEO4J_URI=bolt://localhost:7687
export NEO4J_USER=neo4j
export NEO4J_PASSWORD=password

uv run scp scan ./repos

Commands

Command Description
scp validate <path> Validate SCP files
scp scan <path> Scan local directory
scp scan-github <org> Scan GitHub org
scp version Show version

Export Formats

  • JSON: Graph with nodes/edges arrays
  • Mermaid: Flowchart diagram with tier styling

Environment Variables

Variable Description
GITHUB_TOKEN GitHub PAT for org scanning
NEO4J_URI Neo4j connection URI
NEO4J_USER Neo4j username
NEO4J_PASSWORD Neo4j password

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scp_constructor-0.1.0.tar.gz (29.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scp_constructor-0.1.0-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file scp_constructor-0.1.0.tar.gz.

File metadata

  • Download URL: scp_constructor-0.1.0.tar.gz
  • Upload date:
  • Size: 29.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for scp_constructor-0.1.0.tar.gz
Algorithm Hash digest
SHA256 52e1f0a0be8a7f7691ad63a8ad7ab8a77a1a2e2a814dd1ca6fbc8928072341ae
MD5 11e9fb9f3bcfc21f14cac1b2658025c7
BLAKE2b-256 3459c8d3b30bc091005f5324a1a2d09b1283d7e294da4f4d34ed163196285b37

See more details on using hashes here.

Provenance

The following attestation bundles were made for scp_constructor-0.1.0.tar.gz:

Publisher: ci.yml on krackenservices/scp-integrations

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scp_constructor-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for scp_constructor-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bccc48975aee7ab4e124eb343a0e3a0a818860c4da64c2d62bfe4e0f374f27fb
MD5 a5ee805156bf6c4d14123beeee7b5c42
BLAKE2b-256 5b59a0022645fa01e42da0bfa8f992016bf4c0ed96bc45dcb921fe46cc1d4024

See more details on using hashes here.

Provenance

The following attestation bundles were made for scp_constructor-0.1.0-py3-none-any.whl:

Publisher: ci.yml on krackenservices/scp-integrations

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page