ASTOS — Abstract Syntax Tree Observer Service
Observe a estrutura viva do seu código em 3D imersivo. Zero CDN. Puro WebGL Sci-Fi.
O ASTOS escaneia qualquer repositório poliglota, mapeia módulos,
importações/#includes/use 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 RGBdisponí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
astos/parser.py— varre**/*.{py,c,h,cpp,dart,rs,js,jsx,ts,tsx,java,go,cs,kt,...}(Python via AST preciso; demais linguagens via extratores regex sem dependências):import/#include/mod+use/require/using, resolve dependências locais e calcula o grau de cada módulo.astos/generator.py— injeta o grafo +three.min.js+OrbitControls.js(vendorizados emastos/vendor/) em um HTML único, sem nenhum fetch externo.astos/cli.py— gerencia.astos/, cache incremental em.astos/graph.jsone 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.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| astos-0.2.1.tar.gz | 177.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| astos-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 355.5 kB
Release files / astos-0.2.1.tar.gz
| Download URL | astos-0.2.1.tar.gz |
|---|---|
| Size | 177.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
282bbf92be8229229367b49c0a55ec6bc98992e1ea692defdce97d0ce81990c6
|
|
BLAKE2b-256 checksum How to use checksums |
41a8300873ef351f5348989b076c018e126c8dcb4d6d02587f97c8d366d3eead
|
| 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.2.1-py3-none-any.whl
| Download URL | astos-0.2.1-py3-none-any.whl |
|---|---|
| Size | 177.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
79368e30928b30038586c00b0ebb86394fd089a081e2cb45e64b345ede6fd07a
|
|
BLAKE2b-256 checksum How to use checksums |
6cf3b1183b867391e264a2a22941d5f33a1ea68546c15464e8490ac54466057a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.12
|