Editor web extensível que se transforma em uma IDE pela instalação de plugins.
Sem plugins, o tinyIde deve permanecer um editor de texto básico: abre workspaces, navega por arquivos, edita e salva texto e gerencia extensões. Linguagens, terminal, controle de versão, execução, depuração, bancos de dados, agentes e integrações pertencem a plugins independentes.
O repositório contém o núcleo da plataforma e sua documentação. Os plugins usados durante o desenvolvimento são repositórios independentes montados em plugins/ como submódulos Git; eles não podem ser importados pelo core nem receber APIs privadas.
python -m pip install -r requirements-docs.txt
python -m mkdocs serveO núcleo atual contém:
- shell web de IDE;
- command registry;
- event bus;
- capability registry;
- plugin manager;
- validação e persistência de manifestos externos;
- abertura de diretórios pela File System Access API do navegador.
O objetivo arquitetural e a validação da implementação atual estão documentados em Core mínimo e validação das premissas.
O build desktop é direcionado a distribuições Debian/Ubuntu em arquitetura amd64. O node-pty, usado pelo plugin Terminal, possui código nativo e exige uma toolchain de compilação instalada.
Ambiente validado:
- Node.js 24;
- npm 11;
- Linux
amd64baseado em Debian.
Instale os pré-requisitos do sistema:
sudo apt update
sudo apt install -y build-essential python3 gitClone o repositório incluindo os plugins mantidos como submódulos:
git clone --recurse-submodules <URL_DO_REPOSITORIO>
cd tinyIdePara um checkout já existente, inicialize ou atualize os submódulos:
git submodule update --init --recursiveInstale as dependências do repositório principal:
npm ciAs dependências próprias do plugin Terminal são instaladas automaticamente por npm run build:plugins.
npm run devO Vite abre o navegador automaticamente. A aplicação fica disponível em:
http://localhost:5173
Caso o sistema operacional não abra a janela, acesse esse endereço manualmente. Não abra apps/web/index.html diretamente por file://; a aplicação depende do servidor Vite.
O comando deve ser executado na raiz do repositório, onde está o package.json principal.
Build apenas da aplicação web:
npm run build:webSaída:
apps/web/dist/
Build dos plugins que possuem frontend compilado:
npm run build:pluginsEsse comando prepara as dependências do Terminal e compila os plugins Git e Terminal.
Build completo dos recursos usados pelo Electron, sem gerar o pacote Debian:
npm run build:desktopPara executar o host Electron diretamente durante o desenvolvimento:
npm run build:desktop
npm run start:desktopO projeto gera somente pacote .deb para Linux amd64:
npm run build:debO comando executa, nesta ordem:
- build da aplicação web;
- instalação das dependências próprias do Terminal;
- build dos plugins Git e Terminal;
- recompilação dos módulos nativos para o ABI do Electron;
- geração do pacote Debian pelo
electron-builder.
O artefato é criado em:
release/tinyide_<versão>_amd64.deb
Exemplo para a versão atual:
release/tinyide_0.1.0_amd64.deb
Inspecione os metadados e o conteúdo antes de instalar:
dpkg-deb --info release/tinyide_*_amd64.deb
dpkg-deb --contents release/tinyide_*_amd64.debInstalação local:
sudo apt install ./release/tinyide_*_amd64.debReinstalação da mesma versão:
sudo apt install --reinstall ./release/tinyide_*_amd64.debRemoção do pacote:
sudo apt remove tinyideO pacote instala a aplicação em /opt/tinyIde e disponibiliza o comando tinyide em /usr/bin.
Para remover apenas saídas geradas pelo repositório principal e reconstruir:
rm -rf apps/web/dist release
npm ci
git submodule update --init --recursive
npm run build:debNão remova manualmente os diretórios plugins/git e plugins/terminal; eles são submódulos Git.
npm run checkEsse comando executa typecheck, testes, testes de desempenho, cobertura e builds configurados nos workspaces.