TKO
Distribuição de tarefas de programação com Git, desenvolvimento na IDE do aluno e análise contínua do processo de aprendizagem.
O TKO é um ecossistema de ensino de programação centrado em prática, versionamento e evidências de aprendizagem. Ele distribui atividades via Git, permite desenvolvimento na IDE local e acompanha progresso de turmas com dados reais de evolução.
Visão Geral
O TKO resolve o problema de acoplar ensino de programação a ambientes artificiais de navegador. Em vez disso, o aluno trabalha no próprio fluxo profissional: editor, terminal, compilador e controle de versão.
Para o professor, o sistema viabiliza distribuição de tarefas personalizadas e acompanhamento de execução com sinais de desenvolvimento, como tempo de resolução, histórico de versões e progresso por atividade.
Fluxo rápido:
- Professor cria ou publica repositórios de questões.
- Aluno baixa a atividade e desenvolve na própria IDE.
- Aluno executa os testes localmente e itera com feedback imediato.
- Aluno envia para o professor via Git, normalmente por um repositório compartilhado no GitHub.
- Professor acompanha evolução, métricas de aprendizado, tentativas e progresso da turma.
Quick Start
Ubuntu / WSL / Codespaces
curl -fsSL https://raw.githubusercontent.com/senapk/tko/main/install.sh | bash
tko --version
tko --help
Saída esperada:
- O comando
tko --versiondeve mostrar a versão instalada. - O comando
tko --helpdeve listar os comandos principais (task,build,class,source, ...).
Se tko não for encontrado, adicione ~/.local/bin ao PATH e abra um novo terminal:
export PATH="$HOME/.local/bin:$PATH"
Instalações existentes via pipx continuam suportadas:
pipx install tko
Windows
Use o guia recomendado para setup com VS Code, WSL e Ubuntu:
Casos de Uso
- Distribuição de listas e atividades de programação via Git.
- Desenvolvimento local na IDE do aluno, sem dependência de browser.
- Correção automática com testes e iteração rápida.
- Acompanhamento docente com indicadores de progresso e histórico.
Documentação por Perfil
- Conceitos e arquitetura: TKO: conceitos e organização
- Professor da disciplina (distribui conteúdo e coleta repositórios dos alunos via Git/GitHub): Uso pelos professores, Guia para criar repositórios de tarefas
- Aluno da disciplina: Uso do TKO pelos alunos, Fazendo as atividades
- Aluno em estudo autônomo (fora de disciplina): Testando sem estar em uma disciplina, Repositórios de referência
- Instalação e ambiente: Instalação
- Desenvolvedores: Uso pelos desenvolvedores
- Ferramentas auxiliares: Ferramentas
Repositórios de referência:
Instalação
- Guia recomendado: Windows com WSL e Ubuntu
- Ubuntu / WSL: Git, Python e TKO
- GitHub Codespaces
- VS Code no Ubuntu / WSL
- Linguagens - Java, C, C++, Python, TypeScript, Go
- Outros sistemas operacionais
- Windows sem WSL - legado
Uso do TKO pelos alunos
- Testando sem estar em uma disciplina
- Como organizar seus repositórios da disciplina
- Fazendo as atividades
Uso pelos professores
- Conceitos e organização do TKO
- Gestão de repositórios de turma
- Guia para criar repositórios de tarefas
- Marcadores e tipos de atividades
- Criando testes e conversões
- Gamificação e progressão
- Relizando provas com modo auditoria
- Analisando a timeline de execução de uma tarefa
Uso pelos desenvolvedores
Ferramentas
- Filtragem e Rascunhos
- Markdown Preprocessor
- Rebase de links markdown
- Build task: pipeline de mdpp, filter e drafts
- Build index: manter e atualizar índices
Referência e suporte
- Índice da documentação
- Guia de contribuição
- Arquitetura técnica
- FAQ
- Referência rápida da CLI
- Especificação de formatos
- Exemplos end-to-end
- Ciclo de vida de tarefas
- Suporte a linguagens
- Guia de testes e QA
Atualizando o TKO
Para a instalação recomendada, use:
tko self-update
Para instalações existentes via pipx, use:
pipx upgrade tko
Contribuição
Contribuições são bem-vindas via pull request.
Fluxo mínimo para validar mudanças localmente:
uv run pytest -q
Se possível, mantenha mudanças pequenas, com descrição clara do problema e da solução no PR.
Licença
Este projeto está sob a licença MIT. Veja LICENSE.
Release files for tko 12.0.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tko-12.0.8.tar.gz | 256.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tko-12.0.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 589.4 kB
Release files / tko-12.0.8.tar.gz
| Download URL | tko-12.0.8.tar.gz |
|---|---|
| Size | 256.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
dd85d7f5fdb02f8172862a37918d43b9590f7b18f0d976cb77cf5877c077305a
|
|
BLAKE2b-256 checksum How to use checksums |
9cd7f123158178132b834c029f0a617d98b5f5b9c36803a1afc963d849aaaca6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"EndeavourOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / tko-12.0.8-py3-none-any.whl
| Download URL | tko-12.0.8-py3-none-any.whl |
|---|---|
| Size | 332.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
178bcd30344c4111ba97ebdf8a7574d15dd57db39c725da461bb9fd967dc24b4
|
|
BLAKE2b-256 checksum How to use checksums |
defed059ddf797492c485e7822f3aa3e7001f3ba555fa6079aa3397de26a4020
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"EndeavourOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|