Uma biblioteca de componentes web construída sobre custom elements nativos e independente de framework (ranui), e uma biblioteca de utilitários TypeScript preparada para tree-shaking (ranuts), com as ferramentas e a documentação bilíngue (inglês e chinês) que as acompanham.
Funcionalidades • Pacotes • Início rápido • Documentação • Como contribuir
English | 中文 | 日本語 | Español | Português | 한국어 | Deutsch | فارسی
- 🎨 Bibliotecas de UI: componentes web
- 🛠️ Bibliotecas de utilitários: utilitários em TypeScript
- 🤖 Aprendizado de máquina: ferramentas básicas de ML e experimentos
- 📱 Aplicações web: aplicação de chat IM (protótipo)
- 🔧 Ferramentas de desenvolvimento: ferramentas de build e de depuração
- 🌐 Web3: experimentos com contratos inteligentes
- 🎯 Ferramentas visuais: experimentos de visualização de dados
Este monorepo reúne vários pacotes experimentais:
| Pacote | Versão | Downloads | Descrição |
|---|---|---|---|
| ranui | biblioteca de componentes web | ||
| ranuts | biblioteca de utilitários |
| Pacote | Descrição |
|---|---|
| im | Protótipo de aplicação de chat |
| visual | Experimentos de visualização de dados |
| ranite | Experimentos com ferramentas de build |
| debug | Utilitários de depuração |
| image-process | Experimentos de processamento de imagem |
| cpro | Aprendizado e experimentos em C/C++ |
| rust | Aprendizado e experimentos em Rust |
Quais deles a CI de fato verifica está declarado em packages/manifest.json, e esse arquivo é executável em vez de descritivo: bin/run-checks.mjs roda cada verificação nos pacotes que a declaram, então um pacote listado ali como verificado realmente é, e o que não é diz o porquê. pnpm run verify:packages falha quando surge em packages/ um diretório ausente do manifesto — nenhum pacote novo entra sem que alguém decida se ele é verificado.
# Clonar o repositório
git clone https://github.com/chaxus/ran.git
cd ran
# Instalar as dependências
pnpm install
# Compilar todos os pacotes
pnpm build# Instalar o ranui (componentes web)
npm install ranui
# Instalar os utilitários
npm install ranuts# Subir o servidor de desenvolvimento
pnpm dev
# Rodar os testes
pnpm test
# Compilar um pacote específico
pnpm --filter ranui build- 📖 Blog e artigos: pré-visualização de documentos web
- 🎨 Documentação do RanUI: guia da biblioteca de UI
- 🛠️ Documentação do RanUTS: guia da biblioteca de utilitários
- 📝 Documentação do projeto: docs
O repositório traz um marketplace de plugins do Claude Code para que assistentes de IA leiam e usem as bibliotecas sem vasculhar o código-fonte. Adicione o marketplace e depois instale a biblioteca que você usa:
/plugin marketplace add chaxus/ran
/plugin install ranui@ran # ranui — componentes web
/plugin install ranuts@ran # ranuts — utilitáriosCada skill cobre o import map, um inventário, exemplos de uso e as convenções, e aponta para a referência da API que vai junto com o pacote. Os detalhes estão na seção de cada biblioteca: ranui e ranuts.
Este é um projeto de exploração técnica e aprendizado em fase inicial. A maior parte dos pacotes está em fase alfa ou é experimental.
Pontos principais:
- 🚧 Desenvolvimento inicial: a maior parte das funcionalidades ainda está sendo feita
- 🧪 Experimental: as APIs podem mudar com frequência
- 📚 Foco no aprendizado: serve sobretudo para aprender e experimentar
Toda contribuição é bem-vinda, seja de quem está aprendendo ou de quem já programa. Veja como ajudar:
- Faça um fork do repositório
- Crie um branch para a sua funcionalidade (
git checkout -b feature/amazing-feature) - Faça o commit das suas mudanças (
git commit -m 'Add amazing feature') - Envie o branch (
git push origin feature/amazing-feature) - Abra um pull request
- Siga o estilo de código existente
- Acrescente testes às funcionalidades novas sempre que der
- Atualize a documentação quando for preciso
- Tenha paciência com o que ainda é experimental
Acredito na capacidade do código aberto de acelerar o aprendizado e a inovação. Ao longo do meu caminho como desenvolvedor, fui influenciado por incontáveis projetos abertos. Ao publicar este código experimental, espero:
- Compartilhar o que aprendi com a comunidade
- Permitir que outras pessoas aprendam com este código e experimentem
- Estimular a colaboração e a troca de conhecimento
- Criar um espaço para continuar aprendendo e melhorando
Este projeto é licenciado sob a licença MIT — veja os detalhes no arquivo LICENSE.
Feito com ❤️ pela comunidade Ran
Se o projeto te ajuda a aprender, deixe uma ⭐️