Skip to main content

ASTOS — Abstract Syntax Tree Observer Service

PyPI version Python Offline License: MIT

Observe a estrutura viva do seu código em 3D imersivo. Zero CDN. Puro WebGL Sci-Fi.

O ASTOS escaneia qualquer repositório Python via AST, mapeia módulos, importações e dependências diretas, e gera um mapa 3D orbital (Three.js vendorizado, 100% offline) com física de partículas, teia de aranha luminosa, fita RGB animada nos links selecionados, card HUD Sci-Fi por nó e botão de tela cheia.

Instalação

pip install astos

Uso

Dentro de qualquer repositório:

# primeira vez: cria .astos/, analisa, gera e abre no navegador
astos

# força varredura completa do zero
astos -a
astos --all

Isso gera .astos/index.html (arquivo único, offline) e abre automaticamente no navegador padrão. Pressione ESC para sair do fullscreen.

O que você vê

  • Somente 3D imersivo — esferas de neon, órbita contínua, zoom/pan/orbit.
  • Teia de aranha visível de longe — links com feixe luminoso aditivo + opacidade alta.
  • Fita RGB animada — fótons coloridos percorrem as arestas do nó selecionado (toggle global FLUXO RGB disponível no HUD).
  • Card HUD por clique — nome do arquivo/módulo, caminho relativo, importações/dependências diretas e degree centrality.
  • Tema Sci-Fi/Chronos — HUD cyberpunk dark, neon cyan/magenta, painéis foscos, fonte monospace, scanlines + vinheta.

Como funciona

  1. astos/parser.py — varre **/*.py, parseia ast.Import / ast.ImportFrom, resolve dependências locais e calcula o grau de cada módulo.
  2. astos/generator.py — injeta o grafo + three.min.js + OrbitControls.js (vendorizados em astos/vendor/) em um HTML único, sem nenhum fetch externo.
  3. astos/cli.py — gerencia .astos/, cache incremental em .astos/graph.json e abertura automática no navegador.

Estrutura

astos/
  __init__.py
  cli.py          # CLI `astos` / `astos -a` (click)
  parser.py       # AST scan -> {nodes, links}
  generator.py    # HTML 3D Sci-Fi offline (Three.js inline)
  vendor/
    three.min.js        # r128 UMD (offline)
    OrbitControls.js    # UMD compatível com r128 (offline)

Licença

MIT — veja LICENSE.

Metadata

Release files for astos 0.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 astos 0.1.0
File Size Uploaded
astos-0.1.0.tar.gz 173.0 kB Details

Built distribution (wheel)

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

Total release size: 345.9 kB

Release files / astos-0.1.0.tar.gz

Download URL astos-0.1.0.tar.gz
Size 173.0 kB
Tags Source
SHA-256 checksum
How to use checksums
d22e4efdde3366f8d8af67002cc47c046ef94f0e666510232c4455efc40f8e75
BLAKE2b-256 checksum
How to use checksums
079a7d86f3b1a4c108a26435d48a0fcb43bd5c68ea699ac118f7df2a46b8c93f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release files / astos-0.1.0-py3-none-any.whl

Download URL astos-0.1.0-py3-none-any.whl
Size 172.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8e21d570b37b4d65559eda4787b86d7887c9792732ffa1bc7c1922ae1a5f1111
BLAKE2b-256 checksum
How to use checksums
e7a2a5dbc515a3130b329af52248c340c324cbbdea60919e0d5412c0a787df92
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release history Release notifications | RSS feed

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release files

This release

0.1.0 This release

2 release files

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