Pular para o conteúdo
Foto de Arthur Duarte

Arthur Duarte

Backend e arquitetura de sistemas

Projeto sistemas e participo da implementação. Entusiasta de Linux e infraestrutura.

Porto Alegre, Brasil

Sobre

Estudante no Colégio Militar de Porto Alegre, com conclusão em 2027.

Meu foco é backend e arquitetura de sistemas: quero projetar sistemas e também participar da implementação.

Entusiasta de Linux e infraestrutura.

Idiomas

Português
Nativo
Inglês
C1
Alemão
A1, em estudo

Stack

Linguagens

  • Python
  • JavaScript
  • TypeScript
  • SQL
  • Rust

Backend

  • Node.js
  • Fastify
  • Prisma
  • Zod
  • PostgreSQL

Infra

  • Arch
  • CachyOS
  • Fedora
  • Debian
  • Ubuntu Server
  • Docker
  • SSH
  • Oracle Cloud
  • GitHub Actions

Estudando

  • Java
  • React
  • Programação funcional

Projetos

Em andamento

Sistema de bilheteria de eventos

API de venda de ingressos para eventos. Hoje tem o cadastro de usuários; eventos, pedidos e ingressos já estão no modelo de dados.

  • Fastify com validação via Zod, documentação OpenAPI em /docs e senhas com argon2.
  • Modelo de dados em Prisma 8 e PostgreSQL, com usuários em tiers (free, verified, pro), eventos, pedidos e ingressos.
  • Constraints no banco, como sold_tickets <= capacity, protegem a capacidade do evento.
  • TypeScript
  • Fastify
  • PostgreSQL
  • Prisma
  • Zod
  • OpenAPI
  • Docker Compose
Ver código

dev-tool-cli

CLI que configura ambientes de desenvolvimento com um comando, do mesmo jeito em qualquer máquina.

  • Instala as toolchains de Python (uv) e Rust (rustup), cria o projeto e registra as versões em dev.toml. O dev doctor confere o que falta na máquina.
  • Binário único para macOS e Linux, com instalador que verifica o SHA-256.
  • Arquitetura modular (cli, config, core, errors, os, providers) baseada em trait Provider e Registry.
  • Testes usando fakes. Release automatizado via GitHub Actions.
  • Rust
  • GitHub Actions
Ver código
  • multi-llm-cli

    • Python
    • uv

    CLI de terminal para conversar com vários LLMs, feita para facilitar o acesso a modelos gratuitos de diferentes provedores.

    • Suporta OpenRouter, Groq e Google. Histórico multi-turno, markdown no terminal, troca de modelo e provedor durante a conversa e importação de arquivos para o contexto.
    • Tool calling opcional (bash, read_file, write_file) no OpenRouter e no Groq. Cada execução pede confirmação, com padrão em não.
    Ver código
  • Bot de boas-vindas para Discord

    • JavaScript
    • discord.js
    • Docker
    • Oracle Cloud

    Dá boas-vindas automáticas a novos membros e atribui cargo automaticamente. Deploy conteinerizado em VM na Oracle Cloud.

    Ver código
  • Bot de notificação do YouTube para Discord

    • JavaScript
    • discord.js
    • Docker

    Avisa no servidor quando sai vídeo novo no canal do YouTube ou quando uma live começa. Usa o feed RSS, sem API key do Google.

    • O feed RSS só mostra a transmissão depois que ela termina. Por isso o bot também consulta a página /live do canal a cada ciclo.
    • Guarda os IDs já avisados em data/state.json para não repetir aviso após reiniciar.
    Ver código
  • Homelab

    • Ubuntu Server
    • Netplan
    • SSH
    • Docker

    Servidor Ubuntu Server montado a partir de uma máquina antiga, com IP fixo via Netplan e acesso SSH por chave.

    • Usado como laboratório de backend, bancos de dados e Docker.
  • Portfólio pessoal

    • TypeScript
    • Next.js
    • nginx
    • Oracle Cloud
    • GitHub Actions

    Este site: Next.js com export estático em três idiomas, servido por nginx numa VM da Oracle Cloud.

    • Deploy via GitHub Actions. A lista de projetos é atualizada toda semana pelo Claude.
    Ver código

Como este site chega até você

Sem plataforma pronta: este é o caminho de um commit até o seu navegador, montado e operado por mim.

  1. git push

    Commit na branch main do GitHub.

  2. GitHub Actions

    npm ci e next build geram o site estático em out/.

  3. rsync via SSH

    Envia só o que mudou, com um usuário de deploy sem sudo.

  4. nginx

    VM Ubuntu na Oracle Cloud, com gzip e cache longo nos assets.

  5. HTTPS

    Certificado Let's Encrypt, renovado pelo certbot.

  6. Você

    A raiz redireciona para /pt/, /en/ ou /de/ conforme o idioma do navegador.

Toda segunda, um workflow com o Claude lê meus repositórios com a topic portfolio e abre um PR atualizando os projetos nos três idiomas. Eu reviso e faço o merge; o deploy roda sozinho.

Canal técnico no YouTube

Explicações de estruturas de dados e problemas do LeetCode.

inscritos
1.000+
visualizações em um vídeo
40 mil+