---
title: Forja Plugins
url: https://nandomoreira.dev/lab/forja-plugins
collection: lab
tech:
  - TypeScript
  - Vite
  - pnpm
  - Vitest
date: 2026-03-26
---

# Forja Plugins

Registro oficial e monorepo de plugins do Forja: relógio, Pomodoro e tarefas em Markdown, sobre um SDK compartilhado com tipos da API de plugins. Cada plugin declara as permissões que usa, e um script gera o registro que o Forja consulta para instalar.

## Problema

O Forja precisava crescer sem que cada recurso novo entrasse no núcleo do
app. Um sistema de plugins resolve isso só se houver plugins de verdade
exercitando a API, e um jeito de distribuí-los.

## Decisões técnicas

Monorepo com pnpm, um plugin por pasta e um SDK compartilhado, para todos
falarem a mesma API tipada. Cada plugin declara num manifest as permissões
que pede (tema, notificações, leitura e escrita de arquivo), e um script
valida os manifests antes do build. Os estilos usam só as variáveis CSS do
Forja, para o plugin acompanhar o tema do app. O registro é um JSON gerado e
publicado no GitHub Pages, com o link de download de cada versão.

## Resultado

Três plugins publicados, com vinte releases ao todo e testes em Vitest. O
Pomodoro e as tarefas em Markdown aparecem na própria tela do Forja.

## Links

- Repo: https://github.com/nandomoreirame/forja-plugins
