Skip to content

Introduction

Folionaut is a TypeScript/Express API designed to power personal portfolio websites. It provides:

  • Content Management System (CMS) for portfolio content with versioning
  • AI-powered chat for visitor engagement with privacy protection
  • MCP server for AI tooling integration (Claude Desktop, etc.)

Why This Project?

This project demonstrates proficiency in modern backend patterns while being production-ready:

GoalImplementation
Showcase Backend SkillsClean architecture, proper patterns
Production-ReadyObservability, security, resilience
MaintainableTypeScript, clear separation of concerns
ExtensibleEasy to add features without refactoring

Key Features

Content Management

  • Store projects, experience, education, skills, about, and contact info
  • Content versioning with history tracking
  • Soft deletes with restore capability
  • Content bundles for efficient frontend loading

AI Chat

  • LLM-powered responses about portfolio content
  • Token bucket rate limiting per IP
  • Circuit breaker for LLM provider failures
  • PII detection and sanitization in LLM responses

MCP Integration

  • Query portfolio via Model Context Protocol
  • Tools for listing, searching, and managing content
  • Resources for reading portfolio data
  • Works with Claude Desktop and other MCP clients

Technology Stack

ComponentTechnology
RuntimeNode.js / Bun
FrameworkExpress.js
LanguageTypeScript
DatabaseTurso (libSQL)
ORMDrizzle
CacheRedis (optional, memory fallback)
ValidationZod
MetricsPrometheus
TracingOpenTelemetry

Next Steps

Released under the MIT License.