npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@aurora.purecore.codes/latest

v1.1.0

Published

Aurora Package Manager - Standalone (no external dependencies)

Readme

Aurora Package Manager

Gerenciador de pacotes para a linguagem Aurora Austral sem dependências externas.

Instalação

npm install -g @aurora.purecore.codes/[email protected]

Nota: Este package não tem dependências externas. Usa apenas o Node.js nativo (fetch, fs, path, os, child_process).

Requisitos

  • Node.js >= 18.0.0 (para suporte nativo a fetch)
  • WSL (opcional, para Windows)

Comandos

aurora init

Inicializa um novo projeto Aurora Austral com estrutura completa:

aurora init

O que faz:

  • ✅ Cria aurora.json com configuração do projeto
  • ✅ Cria estrutura de diretórios (src/, aurora_packages/, .aurora/)
  • Baixa binário do compilador para a plataforma atual
  • Baixa biblioteca padrão
  • ✅ Cria arquivos de exemplo (src/Main.aui, src/Main.aum)
  • ✅ Cria Makefile configurado
  • ✅ Cria .gitignore

Opções:

  • --no-binary: Não baixa binários (usa instalação do sistema)

Exemplo:

mkdir meu-projeto
cd meu-projeto
aurora init

# Compilar e executar
make build
./main

aurora install <package>

Instala um pacote do repositório:

aurora install dpop-token

O que faz:

  • Baixa o pacote do GitHub
  • Compila o pacote
  • Executa testes
  • Salva em cache local

aurora list

Lista pacotes disponíveis:

# Listar pacotes remotos
aurora list

# Listar pacotes em cache local
aurora list --local

aurora find <nome>

Busca pacotes por nome:

aurora find dpop

aurora uninstall <package>

Remove um pacote:

aurora uninstall dpop-token

aurora update [package]

Atualiza pacotes:

# Atualizar todos os pacotes
aurora update

# Atualizar pacote específico
aurora update dpop-token

aurora test <package>

Executa testes de um pacote:

aurora test dpop-token

Estrutura de Projeto

Após aurora init:

meu-projeto/
├── aurora.json              # Configuração do projeto
├── Makefile                 # Build configuration
├── .gitignore              # Git ignore
├── src/
│   ├── Main.aui            # Interface do módulo principal
│   └── Main.aum            # Implementação do módulo principal
├── aurora_packages/        # Pacotes instalados
└── .aurora/
    ├── bin/
    │   └── austral         # Compilador (baixado automaticamente)
    └── stdlib/             # Biblioteca padrão (baixada automaticamente)

aurora.json

Arquivo de configuração do projeto:

{
  "name": "meu-projeto",
  "version": "0.1.0",
  "description": "Aurora Austral project",
  "main": "src/Main.aum",
  "scripts": {
    "build": "make",
    "test": "make test",
    "clean": "make clean"
  },
  "dependencies": {},
  "devDependencies": {},
  "aurora": {
    "compiler": "local",
    "compilerPath": ".aurora/bin/austral",
    "stdlibPath": ".aurora/stdlib"
  }
}

Binários Pré-compilados

O comando aurora init baixa automaticamente binários pré-compilados para:

  • Linux x64 (linux-x64)
  • macOS x64 (darwin-x64)
  • macOS ARM64 (darwin-arm64 - M1/M2)
  • Windows x64 (win32-x64)

Os binários são baixados do GitHub Releases e salvos em:

  • Cache global: ~/.aurora_austral/bin/
  • Projeto local: .aurora/bin/

Workflow Típico

1. Criar Novo Projeto

mkdir meu-app
cd meu-app
aurora init

2. Desenvolver

Edite src/Main.aum:

module body Example.Main is
    function main(): ExitCode is
        printLn("Hello, Aurora!");
        printLn("A language with linear types!");
        return ExitSuccess();
    end;
end module body.

3. Instalar Dependências

aurora install dpop-token
aurora install http-client

4. Compilar e Executar

make build
./main

5. Testar

make test

Sem Binários Pré-compilados

Se preferir usar uma instalação manual do compilador:

# Inicializar sem baixar binários
aurora init --no-binary

# O Makefile usará 'austral' do PATH do sistema
make build

Cache

Os pacotes e binários são salvos em cache:

~/.aurora_austral/
├── packages/          # Pacotes instalados
└── bin/              # Binários do compilador
    ├── austral       # Compilador
    └── stdlib/       # Biblioteca padrão

Desenvolvimento

Compilar Binários para Release

cd @aurora.purecore.codes/[email protected]
./scripts/build-release.sh 0.2.0

Isso cria:

  • releases/austral-<platform>-<arch> - Binário compilado
  • releases/austral-<platform>-<arch>.sha256 - Checksum
  • releases/stdlib-v0.2.0/ - Biblioteca padrão
  • releases/release-info-v0.2.0.txt - Informações do release

Fazer Release no GitHub

# Criar tag
git tag -a v0.2.0 -m "Release v0.2.0"
git push origin v0.2.0

# Criar release com binários
gh release create v0.2.0 \
  releases/austral-linux-x64 \
  releases/austral-darwin-x64 \
  releases/austral-darwin-arm64 \
  releases/austral-win32-x64.exe \
  --title "Aurora Austral v0.2.0" \
  --notes "Compiled binaries for multiple platforms"

Veja BINARY_RELEASE.md para mais detalhes.

Plataformas Suportadas

Compilador

  • Linux x64
  • macOS x64 (Intel)
  • macOS ARM64 (Apple Silicon)
  • Windows x64 (via WSL)

Package Manager

  • Linux
  • macOS
  • Windows (com WSL)

Troubleshooting

Binário não executa

Linux/macOS:

chmod +x .aurora/bin/austral
./.aurora/bin/austral --version

Windows:

  • Certifique-se de que o WSL está instalado
  • O comando make será executado via WSL automaticamente

Erro "AUSTRAL_STDLIB not found"

# Baixar stdlib manualmente
aurora init --no-binary
# Ou definir variável de ambiente
export AUSTRAL_STDLIB=/usr/local/lib/austral/standard/src

Pacote não compila

# Limpar cache e reinstalar
aurora uninstall <package>
rm -rf ~/.aurora_austral/packages/<package>
aurora install <package>

Contribuindo

  1. Fork o repositório
  2. Crie uma branch: git checkout -b feature/nova-feature
  3. Commit: git commit -m 'Adiciona nova feature'
  4. Push: git push origin feature/nova-feature
  5. Abra um Pull Request

Licença

Apache-2.0

Links