Skip to main content

Srcly Server

A FastAPI server for static code analysis using lizard.

Features

  • Static Analysis: Scans the codebase for cyclomatic complexity and LOC (Lines of Code).
  • Caching: Caches analysis results in the user cache directory (see the main README) and reuses them until files change.
  • File Serving: Provides an API to read raw file contents (absolute paths).
  • API Documentation: Auto-generated Swagger UI at /docs.

Setup

This project is managed with uv.

  1. Install dependencies:

    uv sync
    

Running the Server

Start the server with hot-reloading:

uv run uvicorn app.main:app --reload

The API will be available at http://localhost:8000.

API Endpoints

Analysis

  • GET /api/analysis: Get the analysis tree. Scans unless an unchanged cached analysis exists.
  • POST /api/analysis/refresh: Force a new scan and replace the cached analysis.

Files

  • GET /api/files/content?path=/absolute/path/to/file: Get raw file content.

Client Generation

You can generate a client SDK (TypeScript, Python, etc.) using the OpenAPI schema available at http://localhost:8000/openapi.json.

Example using openapi-generator-cli:

npx @openapitools/openapi-generator-cli generate -i http://localhost:8000/openapi.json -g typescript-axios -o ../client/src/api

Metadata

Release files for srcly 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for srcly 1.1.0
File Size Uploaded Provenance
srcly-1.1.0.tar.gz 1.2 MB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for srcly 1.1.0
File Interpreter ABI Platform
srcly-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 2.5 MB

Release files / srcly-1.1.0.tar.gz

Download URL srcly-1.1.0.tar.gz
Size 1.2 MB
Tags Source
SHA-256 checksum
How to use checksums
8cdabca419162ffa6d67584ba752ae0989875e846d93baa321a9499598821da0
BLAKE2b-256 checksum
How to use checksums
afb1c380d6735f5a654e40d5d27365b5fb12d279166497b5e0d09d62d9bce384
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / srcly-1.1.0-py3-none-any.whl

Download URL srcly-1.1.0-py3-none-any.whl
Size 1.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
5f3fd0ebeb22b42f9b7fe09fbb602b313313a023cf51d97ba4daba27c504c0a7
BLAKE2b-256 checksum
How to use checksums
a43a668c7fad0c768566f5fe160badd9d8e89246008db67af2652796eed0f007
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for srcly 1.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page