Skip to main content

Geração de arquivos ANX (Alias) em Python

Project description

AliasAnx

Biblioteca para gerar arquivos ANX (Alias) em Python.

Instalação

pip install AliasAnx

Uso rápido

from aliasanx import Pyanx

px = Pyanx()

px.add_node(entity_type='Person', label='Alice', ring_color=255, description='Pessoa exemplo')
px.add_node(entity_type='Person', label='Bob')
px.add_edge('Alice', 'Bob', label='knows', color=0, style='Solid')

px.create('exemplo.anx')

Atributos de Node

Os atributos de node na biblioteca AliasAnx são propriedades que definem as características de cada entidade (nó) no grafo. Cada node é representado por um dicionário com os seguintes atributos:

Atributos Principais:

  1. entity_type (str)

    • Define o tipo da entidade (ex: 'Person', 'Organization', 'Location')
    • Usado para categorizar e agrupar entidades similares
    • Valor padrão: 'Anon'
  2. label (str)

    • Nome ou identificador único da entidade
    • Serve como ID do node no grafo
    • Exemplo: 'Alice', 'Bob', 'Empresa XYZ'
  3. ring_color (int, opcional)

    • Cor do anel/borda ao redor do ícone da entidade
    • Representado como um valor inteiro (código de cor)
    • Se não especificado, o node não terá anel colorido
  4. description (str)

    • Descrição textual da entidade
    • Fornece informações adicionais sobre o node
    • Valor padrão: string vazia

Exemplo de Uso:

from aliasanx import Pyanx

px = Pyanx()

# Node com todos os atributos
px.add_node(
    entity_type='Person',
    label='João Silva',
    ring_color=255,  # Cor vermelha
    description='Desenvolvedor Python'
)

# Node simples
px.add_node(
    entity_type='Company',
    label='TechCorp'
)

Como os Atributos são Usados:

  • Visualização: O entity_type define o ícone, ring_color define a borda
  • Identificação: O label serve como identificador único
  • Contexto: description e atributos de data fornecem informações contextuais

Esses atributos permitem criar grafos ricos em informações, onde cada entidade pode ter características visuais e descritivas que facilitam a análise e compreensão das relações entre os elementos.

Atributos de Edge

Os atributos de edge na biblioteca AliasAnx são propriedades que definem as características de cada conexão (aresta) entre entidades no grafo. Cada edge é representado por uma tupla contendo o nó de origem, o nó de destino e um dicionário com os seguintes atributos:

Atributos Principais:

  1. label (str)

    • Rótulo ou nome da conexão entre as entidades
    • Descreve o tipo de relação entre os nós
    • Exemplo: 'knows', 'works_for', 'located_in'
  2. color (int)

    • Cor da linha que representa a conexão
    • Representado como um valor inteiro (código de cor)
    • Valor padrão: 0 (preto)
  3. style (str)

    • Estilo visual da linha de conexão
    • Opções: 'Solid', 'Dashed', 'Dotted'
    • Valor padrão: 'Solid'
  4. description (str)

    • Descrição textual da conexão
    • Fornece informações adicionais sobre a relação
    • Valor padrão: string vazia

Exemplo de Uso:

from aliasanx import Pyanx

px = Pyanx()

# Adicionar nós primeiro
px.add_node(entity_type='Person', label='Maria')
px.add_node(entity_type='Company', label='TechCorp')

# Edge com todos os atributos
px.add_edge(
    source='Maria',
    sink='TechCorp',
    label='works_for',
    color=255,  # Cor vermelha
    style='Solid',
    description='Desenvolvedora sênior'
)

# Edge simples
px.add_edge('Alice', 'Bob', label='knows')

Como os Atributos são Usados:

  • Visualização: O color e style definem a aparência da linha de conexão
  • Identificação: O label descreve o tipo de relação entre as entidades
  • Contexto: description e atributos de data fornecem informações contextuais sobre a relação

Esses atributos permitem criar grafos com relações ricas em informações, onde cada conexão pode ter características visuais e descritivas que facilitam a análise e compreensão das relações entre as entidades.

Publicação

Para publicar uma nova versão da biblioteca no PyPI:

Pré-requisitos

  1. Ter uma conta no PyPI e TestPyPI
  2. Gerar API tokens em ambas as plataformas
  3. Configurar o arquivo .pypirc com suas credenciais

Processo de Publicação

  1. Atualizar a versão no pyproject.toml

  2. Executar o script de publicação:

    python publish.py
    
  3. Ou usar comandos manuais:

    # Limpar builds anteriores
    rm -rf build/ dist/ src/AliasAnx.egg-info/
    
    # Construir o pacote
    python -m build
    
    # Verificar o pacote
    python -m twine check dist/*
    
    # Upload para TestPyPI (recomendado primeiro)
    python -m twine upload --repository testpypi dist/*
    
    # Upload para PyPI oficial
    python -m twine upload dist/*
    

Configuração do .pypirc

Edite o arquivo .pypirc e substitua os tokens pelos seus:

[distutils]
index-servers =
    pypi
    testpypi

[pypi]
repository = https://upload.pypi.org/legacy/
username = __token__
password = pypi-YOUR_API_TOKEN_HERE

[testpypi]
repository = https://test.pypi.org/legacy/
username = __token__
password = pypi-YOUR_TEST_API_TOKEN_HERE

Licença

Apache-2.0

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

aliasanx-0.1.2.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

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

aliasanx-0.1.2-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

Details for the file aliasanx-0.1.2.tar.gz.

File metadata

  • Download URL: aliasanx-0.1.2.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for aliasanx-0.1.2.tar.gz
Algorithm Hash digest
SHA256 2ae8d232e96e661ab7c1c41c39511338db796243ebb32816b3dc2a8490a46916
MD5 61852d9c4604e591935b61bb2434ac50
BLAKE2b-256 c85a16f8af1c1721bf1e770ca40ce4658c4e527fa09825e6c8d1b1971fe39e38

See more details on using hashes here.

File details

Details for the file aliasanx-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: aliasanx-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 8.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for aliasanx-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 990eb07a69308cb2feeec0c2be395942407b765eb94d98406644f285552c0bab
MD5 3d9fecd281263c8de64c1de0bc316153
BLAKE2b-256 ac858ba546600935e12bd4655defe8881bc8a2300a4e929cca1c7bf1f9a124dc

See more details on using hashes here.

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