Skip to main content

🧭 notion-workspace-app

Python 3.10+ Django 5+ React 18 Vite 8 Licença MIT

Aplicação local completa para operar o Notion com API Django, SPA React, servidor MCP e launcher TUI.

📖 Sobre🚀 Componentes🎯 Como usar✅ Qualidade


📋 Índice


📖 Sobre o Projeto

O notion-workspace-app reúne quatro interfaces sobre o mesmo núcleo de dados: uma API REST Django, uma SPA React, um servidor MCP para clientes de IA e um launcher TUI que prepara e inicia o ambiente. A aplicação permite gerenciar tarefas em kanban, grade ou lista, explorar o workspace e sincronizar repositórios do GitHub com databases do Notion.

A regra de negócio compartilhada vem da biblioteca notion-starter. Este repositório mantém as bordas Django, React e MCP, além da configuração específica do produto. A porta de entrada recomendada é python start_app.py.

O projeto integra o ecossistema Automações do Notion.


📁 Estrutura do Projeto

notion-workspace-app/
│
├── 📁 server/                   # Backend Django e servidor MCP
│   ├── 📁 api/                  # Views, serializers e rotas REST
│   ├── 📁 config/               # Configuração do projeto Django
│   ├── 📁 integrations/         # Notion local e shims de adaptadores
│   ├── 📁 operations/           # Estado operacional em SQLite
│   ├── 📁 services/             # Shims dos casos de uso compartilhados
│   └── mcp_server.py            # Ferramentas notion.*
│
├── 📁 front/                    # SPA React com Vite
│   ├── 📁 src/components/       # Interface, tarefas e exploração
│   ├── 📁 src/hooks/            # Estado e acesso à API
│   └── package-lock.json        # Resolução reproduzível do frontend
│
├── 📁 tests/                    # Suíte Python automatizada
├── .github/workflows/ci.yml     # Gates Python e frontend
├── start_app.py                 # Menu interativo de entrada
├── requirements.txt             # Dependências Python
├── QUALIDADE.md                 # Contrato de qualidade do módulo
├── README.md                    # Este arquivo
└── LICENSE                      # Licença MIT

Na distribuição 0.3.0, front/ é usado apenas no desenvolvimento: o workflow de release compila a SPA para server/static/frontend/ e o wheel leva esse bundle. Assim, a instalação de usuário não precisa de Node/npm.


🚀 Componentes

Camada Pasta Descrição
Launcher start_app.py TUI que instala dependências, configura e sobe servidor e front
API server/api/ REST Django para tarefas, exploração e opções
Services server/services/ Shims para tarefas, clonagem, ingestão, IA e GitHub
Integrações server/integrations/ Notion local e shims para GitHub/OpenRouter
MCP server/mcp_server.py Servidor que expõe operações notion.* para IAs
Front front/ SPA React com kanban, filtros e exploração do workspace

✨ Funcionalidades

  • visualizar tarefas em kanban, grade e lista;
  • buscar e filtrar tarefas por status, duração e área;
  • criar e editar tarefas pela interface;
  • explorar páginas e databases compartilhados;
  • sincronizar repositórios GitHub com databases do Notion;
  • expor operações para clientes de IA via MCP;
  • iniciar Django e Vite em conjunto pelo launcher interativo.

Exemplo de fluxo: ação na SPA → API Django → serviço compartilhado → API do Notion.


🎯 Como Usar

Instalação distribuída

Para usar o ecossistema completo, instale a fachada única:

pipx install "notion-automacoes[app]"
# ou: uv tool install "notion-automacoes[app]"
notion-automacoes doctor
notion-automacoes app start
notion-automacoes mcp start

O release técnico candidato é 0.3.0; a publicação no PyPI aguarda confirmação de nome/ownership/metadados legais. Consulte o guia do hub para a sequência de release e o smoke em Windows, macOS e Linux.

Início rápido

O fluxo abaixo é o de desenvolvimento pelo checkout:

# Clone o repositório
git clone https://github.com/Felipe-Alcantara/notion-workspace-app.git
cd notion-workspace-app

# Instale as dependências Python de desenvolvimento
python -m pip install -e ".[dev]"

# Crie a configuração local e preencha os valores necessários
cp .env.example .env

# Abra o menu que instala, configura e inicia o produto
python start_app.py

No checkout, o launcher aplica as migrações, sobe Django e Vite e abre o navegador. Pelo menu também é possível instalar dependências, configurar o ambiente e conferir o status dos componentes.

Quando executado a partir do wheel, o mesmo launcher sobe apenas o Django e serve a SPA empacotada; Node/npm não são consultados.


🔐 Configuração e Segurança

Use .env.example como modelo e mantenha o .env apenas na máquina local. Para operar o workspace, configure NOTION_TOKEN e, quando aplicável, NOTION_DATABASE_ID.

Nunca versione tokens, IDs reais ou bancos SQLite. Os testes usam mocks e não dependem de credenciais reais.


✅ Qualidade

Gate Python, executado na raiz:

python -m ruff check .
python -m pytest

Gate da SPA:

cd front
npm run lint
npm run build

A CI executa Python 3.10–3.13 e um job Node 22 com npm ci. Consulte QUALIDADE.md para o critério de pronto e a política de dependências.


📄 Licença

Este projeto está sob a licença MIT — veja LICENSE.


👤 Autor

Felipe Martin


🤝 Contribuições

Contribuições são bem-vindas. Algumas ideias para quem quiser colaborar:

  • ampliar a escrita genérica na aba Explorar;
  • criar novas visualizações e interações no kanban;
  • melhorar o empacotamento do launcher;
  • expandir acessibilidade, testes e documentação.

Leia CONTRIBUTING.md antes de enviar uma mudança.


⭐ Se o app foi útil, considere dar uma estrela no GitHub.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

notion_workspace_app-0.3.0.tar.gz (149.6 kB view details)

Uploaded Source

Built Distribution

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

notion_workspace_app-0.3.0-py3-none-any.whl (165.1 kB view details)

Uploaded Python 3

File details

Details for the file notion_workspace_app-0.3.0.tar.gz.

File metadata

  • Download URL: notion_workspace_app-0.3.0.tar.gz
  • Upload date:
  • Size: 149.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for notion_workspace_app-0.3.0.tar.gz
Algorithm Hash digest
SHA256 47a8e5c16e26d4ff74370008d75ab4fbf575759bb18df454663f3bb40cbf009c
MD5 a74f86db0ca3f097c9bdc517ebcfa697
BLAKE2b-256 134b690e8f0134090e735aa6f36155d14adb523cfc3dfb980647119e7eac7818

See more details on using hashes here.

Provenance

The following attestation bundles were made for notion_workspace_app-0.3.0.tar.gz:

Publisher: release.yml on Felipe-Alcantara/notion-workspace-app

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file notion_workspace_app-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for notion_workspace_app-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f56f8dbf287aef1be42b59cf4d0af255eefee51e23c5b20076b5a060f414a231
MD5 4f796e0bf6fb7c00ff23f5a404a94be0
BLAKE2b-256 7c15a4a20510c0becbb799c36ed1d973e55873f362880d59c8ae5d0557a47ba7

See more details on using hashes here.

Provenance

The following attestation bundles were made for notion_workspace_app-0.3.0-py3-none-any.whl:

Publisher: release.yml on Felipe-Alcantara/notion-workspace-app

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page