André Ximenes
Back to home

Projects

Apps, APIs, and experiments

All work in more detail

  • Screenshot of the Multi-tenant recruiting platform: from careers site to auditable pipeline project

    Multi-tenant recruiting platform: from careers site to auditable pipeline

    I built an end-to-end multi-tenant ATS in TypeScript, with NestJS on the API and Next.js (React) on the product: companies operate in logical isolation per tenant, while the candidate keeps a single profile that spans all applications. The technical differentiator is the combination of explicit state machines (jobs and applications), a customizable pipeline per job with auditing, and a second line of defense for data access via tenant context and Prisma extension over PostgreSQL, plus direct upload to object storage with pre-signed URLs and domain validation in use cases.

    • TypeScript
    • NestJS
    • Next.js
    • Prisma
    • PostgreSQL
    • Zod
  • Screenshot of the Full stack ecommerce: Hono API, Astro storefront, and order domain project

    Full stack ecommerce: Hono API, Astro storefront, and order domain

    I built a full stack ecommerce in a monorepo: REST API in Hono (Bun), SSR storefront in Astro, and persistence in PostgreSQL with Prisma and Redis. The core is JWT session in cookies with refresh, transactional orders with conditional stock, storefront/admin RBAC, and OpenAPI contract with Zod. The API already closes orders; checkout in the storefront is still evolving on the presentation layer.

    • TypeScript
    • Hono
    • Astro
    • PostgreSQL
    • Redis
    • Prisma
  • Screenshot of the Corporate chat with local RAG: indexed policies without going to the cloud project

    Corporate chat with local RAG: indexed policies without going to the cloud

    I built a corporate chatbot with local RAG to query policies and runbooks without sending the corpus to external APIs. I used Bun, Hono, React, Ollama, and Chroma, with hybrid retrieval (vector plus lexical fallback) and NDJSON streaming with cancellation. History is off by default so it does not pollute the embed on small models.

    • Bun
    • Hono
    • React
    • Ollama
    • ChromaDB
    • LangChain

Experimental

Prototypes, tools, and technical experiments

  • Screenshot of the Mock API for prototyping UIs: CSV into SQLite, filters, and OpenAPI contracts project

    Mock API for prototyping UIs: CSV into SQLite, filters, and OpenAPI contracts

    I built Mockê, a public mock API with ready-made datasets (products, postal codes, movies, and more) to prototype frontends without a real backend. The core is Hono on Bun with SQLite cache: atomic sync by hash of the manifest under data/, per-field SQL filters, and typed OpenAPI. Reimport happens only at boot when the CSVs change; there is no runtime watch.

    • Bun
    • Hono
    • SQLite
    • Zod
    • OpenAPI
    • Docker
  • Screenshot of the Docker stack operations in the terminal: local TUI with git and Compose project

    Docker stack operations in the terminal: local TUI with git and Compose

    I built a terminal panel to operate several local repositories: git pull, Docker Compose, container status, and logs, with no HTTP or authentication. The UI is React with Ink and the backend calls git and docker on the host, with a safe path under PROJECTS_ROOT and a fallback when Compose fails. The build produces a single binary (~1.8 MB) installable via npm link.

    • Ink
    • React
    • TypeScript
    • Docker Compose
    • Git
    • esbuild
  • Screenshot of the On-demand Linux app manager: Flatpak, APT, and fwupd in one app project

    On-demand Linux app manager: Flatpak, APT, and fwupd in one app

    I built Vekt, an on-demand Linux app manager that unifies Flatpak, APT, and firmware (fwupd) with no background daemons. The core is Tauri 2 with a Rust backend and Preact UI: the frontend only calls typed commands, and long-running processes emit logs and progress in real time. Out of scope: Snap, AppImage, and system services.

    • Tauri
    • Rust
    • Preact
    • TypeScript
    • Flatpak
    • APT
    • fwupd