Personal projects

LetsLearn live

Personal
What I build for myself

Projects to learn differently

Outside of my apprenticeship, I actively develop personal projects to explore deeper topics: backend architecture, security, infrastructure and automation.

Main project

LetsLearn

Sharing what I learn

LetsLearn is a fully frontend site I built to structure and share technical learning resources. It offers a Vue 3 / Nuxt 4 course and a behind-the-scenes course on how it was built. An open project, always evolving.

What the site contains

Vue 3 & Nuxt 4 Course

A complete course to learn Vue 3 and Nuxt 4, from zero to production.

Behind the scenes

A course explaining how LetsLearn itself was built: stack, architecture decisions and deployment.

Self-hosted infrastructure

Hosted on my Proxmox infrastructure with Docker, Traefik and Cloudflare Tunnels.

Full observability

Grafana, Loki, Promtail and Prometheus for real-time logs, metrics and dashboards.

CI/CD via GitHub Actions

Automated deployments via GitHub Actions workflows, without manual intervention.

Always evolving

Content and features evolve regularly, LetsLearn is never truly finished.

A complete frontend project, always evolving

LetsLearn showcases my ability to design and deploy an application independently: polished frontend, self-hosted infrastructure, full monitoring and quality content. A project I continuously improve.

Architecture

Secure Go backend

I developed a Go backend to learn the language deeply and build a solid, reusable foundation. Not yet deployed in production, it will serve as the base for my future applications.

Complete authentication (JWT, access + refresh tokens)

Automatic refresh token rotation

Short-lived access tokens (~5 min), long refresh tokens (~1 month)

Two-factor authentication: Google Authenticator or email (TOTP)

Google OAuth login

Rate limiting per IP and per user

Injection protection

Strict input validation

Infrastructure

Personal infrastructure

I manage a self-hosted infrastructure to deploy and test my projects.

Proxmox

Main hypervisor hosting several virtual machines for work and production.

Docker Cluster

Manager and workers to orchestrate deployed containers and services.

VPN & security

VPN server and Cloudflare Zero Trust to secure access to internal services.

Traefik + Cloudflare

Reverse proxy with Traefik and Cloudflare tunnels for secure service exposure.

Monitoring

Full observability stack: Grafana (dashboards), Loki + Promtail (logs), Prometheus (metrics).

Uptime Kuma

Real-time availability monitoring for all my services, with alerting.

Rybbit

Open-source alternative to Google Analytics, self-hosted to retain full control over analytics data. No third-party dependency.

GitHub Actions

Automated deployments via CI/CD workflows, connected to the infrastructure for hands-free production releases.

Stack & technologies

What I use

Frontend
Nuxt 4Vue 3TypeScriptTailwind CSSVuetify
Backend
GoNode.jsExpressJWTSQLMongoDB2FA / TOTPOAuth2
Infrastructure & Ops
ProxmoxDockerTraefikCloudflare TunnelsGrafanaLokiPromtailPrometheusUptime KumaRybbitGitHub Actions

Lab & explorations

Other experiments

Projects started to test an idea, understand a technology or explore an architecture.

EXP-01 Experimental

Mobile content application

Mobile app designed to be genuinely useful: infinite scroll, videos, activities, interactive map and route suggestions. The goal is to build something concrete while learning technologies outside my usual stack: React Native and SQL. The Go backend was built for this project.

React NativeGoSQLTypeScript
EXP-02 Experimental

Explorer & internal tools

An SFTP file explorer to browse and manage my servers from a browser. Alongside it, I am thinking about internal tools to simplify and automate the way I work day to day.

Vue 3Node.jsTypeScript
EXP-03 Ongoing

Ready-to-use site templates

Reusable site templates to quickly kick off new projects. For example, a configurable Nuxt 4 showcase template deployable with a single command, ready for my next clients.

Nuxt 4Vue 3TypeScriptTailwind CSS

Want to talk about it?

These projects reflect what truly drives me. If a topic resonates, I'm always open to a conversation.