Zum Inhalt springen
Foto von Arthur Duarte

Arthur Duarte

Backend und Systemarchitektur

Ich entwerfe Systeme und wirke an ihrer Umsetzung mit. Begeistert von Linux und Infrastruktur.

Porto Alegre, Brasilien

Über mich

Schüler am Colégio Militar de Porto Alegre (Militärgymnasium), Abschluss 2027.

Mein Schwerpunkt sind Backend und Systemarchitektur: Ich möchte Systeme entwerfen und auch an ihrer Umsetzung mitwirken.

Begeistert von Linux und Infrastruktur.

Sprachen

Portugiesisch
Muttersprache
Englisch
C1
Deutsch
A1, im Lernen

Stack

Sprachen

  • Python
  • JavaScript
  • TypeScript
  • SQL
  • Rust

Backend

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

Infrastruktur

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

Aktuell im Lernen

  • Java
  • React
  • Funktionale Programmierung

Projekte

In Arbeit

Ticketsystem für Veranstaltungen

API für den Ticketverkauf bei Veranstaltungen. Bisher gibt es die Nutzerregistrierung; Veranstaltungen, Bestellungen und Tickets sind schon im Datenmodell.

  • Fastify mit Validierung über Zod, OpenAPI-Dokumentation unter /docs und Passwörtern mit argon2.
  • Datenmodell in Prisma 8 und PostgreSQL, mit Nutzern in Tiers (free, verified, pro), Veranstaltungen, Bestellungen und Tickets.
  • Constraints in der Datenbank, etwa sold_tickets <= capacity, schützen die Kapazität einer Veranstaltung.
  • TypeScript
  • Fastify
  • PostgreSQL
  • Prisma
  • Zod
  • OpenAPI
  • Docker Compose
Code ansehen

dev-tool-cli

CLI, die Entwicklungsumgebungen mit einem Befehl einrichtet, auf jedem Rechner gleich.

  • Installiert die Toolchains für Python (uv) und Rust (rustup), legt das Projekt an und hält die Versionen in dev.toml fest. dev doctor prüft, was auf dem Rechner fehlt.
  • Einzelnes Binary für macOS und Linux, mit Installer, der die SHA-256-Prüfsumme verifiziert.
  • Modulare Architektur (cli, config, core, errors, os, providers) auf Basis eines Provider-Traits und einer Registry.
  • Tests mit Fakes. Automatisierte Releases über GitHub Actions.
  • Rust
  • GitHub Actions
Code ansehen
  • multi-llm-cli

    • Python
    • uv

    Terminal-CLI zum Chatten mit mehreren LLMs, gedacht, um kostenlose Modelle verschiedener Anbieter leichter zugänglich zu machen.

    • Unterstützt OpenRouter, Groq und Google. Mehrstufiger Verlauf, Markdown im Terminal, Wechsel von Modell und Anbieter mitten im Gespräch und Import von Dateien in den Kontext.
    • Optionales Tool Calling (bash, read_file, write_file) bei OpenRouter und Groq. Jede Ausführung fragt nach Bestätigung, Standard ist Nein.
    Code ansehen
  • Willkommens-Bot für Discord

    • JavaScript
    • discord.js
    • Docker
    • Oracle Cloud

    Begrüßt neue Mitglieder automatisch und weist ihnen automatisch eine Rolle zu. Containerisiertes Deployment auf einer VM in der Oracle Cloud.

    Code ansehen
  • YouTube-Benachrichtigungsbot für Discord

    • JavaScript
    • discord.js
    • Docker

    Meldet auf dem Server, wenn ein neues Video auf dem YouTube-Kanal erscheint oder ein Livestream startet. Nutzt den RSS-Feed, ohne Google-API-Key.

    • Der RSS-Feed zeigt einen Livestream erst, nachdem er beendet ist. Deshalb fragt der Bot in jedem Zyklus auch die /live-Seite des Kanals ab.
    • Speichert bereits gemeldete IDs in data/state.json, damit nach einem Neustart nichts doppelt gemeldet wird.
    Code ansehen
  • Homelab

    • Ubuntu Server
    • Netplan
    • SSH
    • Docker

    Ubuntu Server, aufgebaut aus einem alten Rechner, mit fester IP über Netplan und SSH-Zugang per Schlüssel.

    • Dient als Labor für Backend, Datenbanken und Docker.
  • Persönliches Portfolio

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

    Diese Website: Next.js mit statischem Export in drei Sprachen, ausgeliefert von nginx auf einer VM in der Oracle Cloud.

    • Deployment über GitHub Actions. Die Projektliste wird wöchentlich von Claude aktualisiert.
    Code ansehen

Wie diese Seite zu dir kommt

Keine fertige Plattform: der Weg von einem Commit bis zu deinem Browser, von mir aufgebaut und betrieben.

  1. git push

    Commit auf den main-Branch bei GitHub.

  2. GitHub Actions

    npm ci und next build erzeugen die statische Seite in out/.

  3. rsync über SSH

    Überträgt nur Änderungen, mit einem Deploy-Benutzer ohne sudo.

  4. nginx

    Ubuntu-VM in der Oracle Cloud, mit gzip und langem Caching für Assets.

  5. HTTPS

    Let's-Encrypt-Zertifikat, erneuert durch certbot.

  6. Du

    Die Startseite leitet je nach Browsersprache auf /pt/, /en/ oder /de/ weiter.

Jeden Montag liest ein Workflow mit Claude meine Repositories mit dem Topic portfolio und öffnet einen PR, der die Projekte in allen drei Sprachen aktualisiert. Ich prüfe und merge; das Deployment läuft automatisch.

Technischer YouTube-Kanal

Erklärungen zu Datenstrukturen und LeetCode-Aufgaben.

Abonnenten
1.000+
Aufrufe bei einem Video
40.000+