50 Projetos Práticos em Rust para Aprender | Rust Brasil

50 projetos práticos em Rust: CLIs, APIs web, parsers e jogos. Walkthroughs completos em português do zero ao deploy.

Projetos

Projetos Práticos em Rust

Aprenda Rust construindo — 50 projetos com walkthrough completo, do zero ao deploy.

A melhor forma de aprender Rust é construindo projetos reais. Cada walkthrough inclui o código completo, explicações detalhadas de cada decisão de design, tratamento de erros idiomático e sugestões de melhorias para você continuar evoluindo.

Categorias

Ferramentas CLI

10 projetos de linha de comando: grep clone, gerenciador de tarefas, analisador CSV, scanner de portas e mais.

Web & APIs

10 projetos web: API REST CRUD, encurtador de URLs, chat WebSocket, autenticação JWT, GraphQL e mais.

Sistemas & DevOps

10 ferramentas de sistema: agregador de logs, file watcher, monitor de processos, load balancer e mais.

Dados & Parsing

10 projetos de parsing: motor de regex, shell básico, banco key-value, web crawler, compilador e mais.

Fun & Criativo

10 projetos criativos: jogo da velha, Snake, ray tracer, emulador CHIP-8, fractais Mandelbrot e mais.


Todos os Projetos

cli

Clone do grep em Rust

Neste projeto, vamos construir um clone simplificado do famoso comando grep do Unix. O grep é uma das ferramentas mais utilizadas no dia a dia de qualquer …

Leia mais
cli

Gerenciador de Tarefas CLI

Neste projeto, vamos construir um gerenciador de tarefas (to-do list) completo para a linha de comando. Aplicativos de gerenciamento de tarefas são um clássico …

Leia mais
cli

Analisador de CSV em Rust

Arquivos CSV (Comma-Separated Values) estão em toda parte — exportações de planilhas, logs de servidores, dados de sensores, relatórios financeiros. Neste …

Leia mais
cli

Renomeador de Arquivos em Lote

Renomear arquivos em lote é uma tarefa comum que aparece em diversos cenários: organizar fotos por data, padronizar nomes de documentos, adicionar prefixos a …

Leia mais
cli

Gerador de Senhas Seguras

Senhas fracas são uma das maiores vulnerabilidades de segurança no mundo digital. Neste projeto, vamos construir um gerador de senhas robusto que permite …

Leia mais
cli

Conversor Markdown para HTML

Markdown é a linguagem de marcação mais popular para documentação, arquivos README, blogs e anotações. Neste projeto, vamos construir um conversor de Markdown …

Leia mais
cli

Analisador de Uso de Disco

Saber quanto espaço cada diretório ocupa no disco é fundamental para administração de sistemas, limpeza de espaço e diagnóstico de problemas de armazenamento. O …

Leia mais
cli

Scanner de Portas de Rede

Scanners de portas são ferramentas essenciais para administradores de rede e profissionais de segurança. Eles permitem descobrir quais serviços estão rodando em …

Leia mais
cli

Cliente HTTP Completo em Rust

Interagir com APIs HTTP é uma das tarefas mais comuns no desenvolvimento moderno. Ferramentas como curl e httpie são indispensáveis no dia a dia, e construir …

Leia mais
api-rest

API REST CRUD Completa com Axum

Neste projeto vamos construir do zero uma API REST CRUD completa usando o framework Axum. A API vai gerenciar uma coleção de tarefas (to-do items) com operações …

Leia mais
url-shortener

Encurtador de URLs em Rust

Neste projeto vamos construir um serviço encurtador de URLs completo em Rust usando Axum. O serviço vai receber URLs longas, gerar códigos curtos únicos, …

Leia mais
websocket

Chat em Tempo Real com WebSocket

Neste projeto vamos construir um servidor de chat em tempo real usando WebSockets em Rust. Utilizaremos tokio como runtime assíncrono e tokio-tungstenite para a …

Leia mais
blog

Motor de Blog em Rust

Neste projeto vamos construir um motor de blog em Rust que lê arquivos Markdown de um diretório, converte para HTML e serve páginas web completas através do …

Leia mais
jwt

Autenticacao JWT em Rust

Neste projeto vamos construir um sistema completo de autenticacao com JWT (JSON Web Tokens) usando Axum. O sistema vai incluir registro de usuarios, login com …

Leia mais
upload

Servico de Upload de Arquivos

Neste projeto vamos construir um servico de upload e download de arquivos usando Axum. O servico vai aceitar uploads multipart, validar tipos de arquivo …

Leia mais
rate-limiter

Rate Limiter Middleware em Rust

Neste projeto vamos construir um rate limiter (limitador de taxa) como middleware para Axum usando o algoritmo token bucket. O middleware vai limitar …

Leia mais
webhook

Servidor de Webhooks em Rust

Neste projeto vamos construir um servidor de webhooks em Rust que recebe, valida, enfileira e processa eventos webhook. O servidor vai verificar assinaturas …

Leia mais
graphql

API GraphQL em Rust

Neste projeto vamos construir uma API GraphQL completa em Rust usando a crate async-graphql integrada com Axum. A API vai gerenciar um catalogo de livros com …

Leia mais
logs

Agregador de Logs em Rust

Logs sao a principal ferramenta de diagnostico em sistemas de producao. Quando voce tem dezenas de servicos gerando arquivos de log simultaneamente, encontrar a …

Leia mais
file-watcher

Monitor de Alteracoes em Arquivos

Durante o desenvolvimento, recompilar manualmente apos cada alteracao e tedioso e improdutivo. Ferramentas como nodemon, watchexec e cargo-watch resolvem isso …

Leia mais
processos

Monitor de Processos do Sistema

Entender quais processos estao consumindo recursos no sistema e uma habilidade essencial para qualquer desenvolvedor ou administrador de sistemas. Ferramentas …

Leia mais
backup

Ferramenta de Backup Incremental

Backups sao a ultima linha de defesa contra perda de dados. Um backup incremental inteligente copia apenas os arquivos que realmente mudaram, economizando tempo …

Leia mais
dns

Resolver DNS em Rust

O DNS (Domain Name System) e o servico que traduz nomes legíveis como www.exemplo.com em enderecos IP como 93.184.216.34. Embora usemos DNS o tempo todo, poucos …

Leia mais
load-balancer

Load Balancer TCP em Rust

Um load balancer e uma peca fundamental em arquiteturas de producao, distribuindo o trafego entre multiplos servidores para garantir alta disponibilidade e …

Leia mais
docker

Monitor de Containers Docker

Docker se tornou a ferramenta padrao para empacotar e executar aplicacoes. Monitorar os containers em execucao – seus recursos, status e logs – e …

Leia mais
metricas

Coletor de Metricas com Prometheus

Observabilidade e um dos pilares de sistemas modernos em producao. O Prometheus se consolidou como o padrao de fato para coleta de metricas, e entender como seu …

Leia mais
configuracao

Gerenciador de Configuracoes em Rust

Toda aplicacao de software precisa de configuracao: enderecos de servidores, credenciais, parametros de execucao, limites e opcoes. Gerenciar configuracoes de …

Leia mais
regex

Motor de Regex Simples em Rust

Expressões regulares são uma das ferramentas mais poderosas da computação. Neste projeto, vamos construir um motor de regex do zero — sem usar a crate regex — …

Leia mais
parser

Calculadora com Parser em Rust

Construir uma calculadora pode parecer simples, mas quando adicionamos variáveis, funções matemáticas e precedência de operadores, o projeto se torna um …

Leia mais
shell

Shell Básico em Rust

Um shell é uma das ferramentas mais fundamentais de um sistema operacional. Neste projeto, vamos construir um shell básico funcional em Rust que interpreta …

Leia mais
compilador

Compilador Brainfuck em Rust

Brainfuck é uma linguagem de programação esotérica com apenas 8 instruções, o que a torna perfeita para aprender os fundamentos de construção de compiladores. …

Leia mais
database

Banco de Dados Key-Value em Rust

Bancos de dados key-value são a base de sistemas como Redis, LevelDB e RocksDB. Neste projeto, vamos construir um banco de dados key-value persistente do zero …

Leia mais
web-crawler

Web Crawler em Rust

Um web crawler e um dos programas mais fascinantes que existem: ele navega pela internet automaticamente, seguindo links de pagina em pagina. Neste projeto, …

Leia mais
template

Motor de Templates em Rust

Motores de templates estao por tras de praticamente toda aplicacao web: eles transformam dados dinamicos em HTML, e-mails, documentos e mais. Neste projeto, …

Leia mais
cli

Ferramenta de Diff em Rust

Comparar arquivos e identificar diferencas e uma operacao fundamental no desenvolvimento de software. O comando diff do Unix e a base de sistemas de controle de …

Leia mais
parser

Parser de Arquivos INI em Rust

O formato INI e um dos formatos de configuracao mais antigos e difundidos na computacao. Usado pelo Windows, PHP, MySQL, Git e inumeros outros programas, ele se …

Leia mais
compressao

Compressor de Arquivos LZ77 em Rust

Neste projeto vamos construir um compressor e descompressor de arquivos implementando o algoritmo LZ77 do zero em Rust. O LZ77 (Lempel-Ziv 1977) é um dos …

Leia mais
jogo

Jogo da Velha no Terminal em Rust

Neste projeto vamos construir um Jogo da Velha completo no terminal usando Rust puro, sem dependências externas. O jogo terá um tabuleiro colorido renderizado …

Leia mais
jogo

Jogo Snake no Terminal em Rust

Neste projeto vamos construir o clássico jogo Snake (cobrinha) diretamente no terminal usando Rust e a crate crossterm para manipulação de terminal. A cobra se …

Leia mais
imagem

Gerador de Arte ASCII em Rust

Neste projeto vamos construir um gerador de arte ASCII que converte qualquer imagem (PNG, JPEG, etc.) em uma representação textual usando caracteres ASCII. O …

Leia mais
simulacao

Jogo da Vida de Conway em Rust

Neste projeto vamos construir o Jogo da Vida de Conway – um dos autômatos celulares mais famosos da computação – com visualização em tempo real no …

Leia mais
raytracer

Ray Tracer Basico em Rust

Neste projeto vamos construir um ray tracer (traçador de raios) do zero em Rust. Ray tracing é uma técnica de renderização que simula o caminho da luz para …

Leia mais
emulador

Emulador CHIP-8 em Rust

Neste projeto vamos construir um emulador CHIP-8 completo em Rust. O CHIP-8 é uma linguagem interpretada criada nos anos 1970 para facilitar o desenvolvimento …

Leia mais
audio

Player de Musica CLI em Rust

Neste projeto vamos construir um player de musica para o terminal em Rust usando a crate rodio para reproduzao de audio. O player tera uma interface interativa …

Leia mais
qrcode

Gerador de QR Code em Rust

Neste projeto vamos construir um gerador de QR Code completo em Rust. QR Codes (Quick Response Codes) são códigos de barras bidimensionais capazes de armazenar …

Leia mais