Monitor setup

Blog Posts

Photo by Radowan Nakif Rehan on Unsplash

Blog Posts


Building Tasklytics: Exploring AI Tool Execution with Claude and MCP

Date: Monday, 10 August 2026 18:49

Content: Tasklytics is a full-stack AI-powered task management application I developed to explore the engineering challenges involved in connecting a traditional web application with an AI system capable of performing controlled tool-based operations. The application uses a React frontend and a FastAPI backend written in Python, with PostgreSQL providing persistent storage. Docker is used to containerize the application, while Nginx provides reverse-proxy routing and HTTPS in the production environment. The backend exposes authenticated REST APIs for task management and other application functionality. The most important part of Tasklytics is its AI architecture. Rather than treating Claude as a simple chatbot that only generates text, the application uses Claude's native tool-use capabilities within a model-controlled execution loop. This allows the model to determine when an available application tool is appropriate and then receive structured results from that tool. Building this workflow introduced several engineering challenges. Tool inputs and outputs need to be validated, failures need to be handled safely, and the application must maintain control over what operations the model is permitted to perform. I implemented structured output validation, retry and error handling, and security-focused prompt handling to make the AI integration more predictable and robust. The project also gave me an opportunity to explore Model Context Protocol (MCP) concepts and how standardized interfaces can be used when building AI-enabled systems. This helped me think about AI applications not simply as interfaces to language models, but as systems where models can interact with controlled application capabilities. Outside of the AI component, Tasklytics follows the same production-oriented principles I have applied to my other projects. The application uses authenticated API endpoints, persistent database storage, Docker-based deployment, Nginx reverse proxying, and live-environment health and persistence verification. Testing was particularly important because the project combines several moving parts: frontend requests, authenticated APIs, database operations, AI model responses, tool execution, and error handling. Verifying these components independently and together helped me understand how AI-specific failure modes differ from traditional application failures. Tasklytics strengthened my understanding of AI application architecture, API design, authentication, containerized deployment, structured validation, and tool-based model interaction. It also gave me practical experience moving beyond basic AI API integration toward designing an application where an AI model can interact with software capabilities in a controlled and testable way.

Building Fiddler’s Green: A Full-Stack AI-Powered Commerce Platform

Date: Monday, 10 August 2026 18:51

Content: Fiddler’s Green is a full-stack AI-powered commerce platform I developed to explore how modern web applications can combine e-commerce functionality, secure APIs, database-driven content, and AI-assisted customer experiences. The application uses a Next.js 16 and React 19 frontend with TypeScript and Tailwind CSS, backed by a FastAPI application written in Python. PostgreSQL provides persistent data storage through SQLAlchemy, while Alembic manages database schema migrations. The application is containerized with Docker and designed with production deployment and security considerations in mind. One of the primary goals of the project was to move beyond a static storefront and build a system where the product catalog is driven by backend data. Products, categories, variants, and cart operations are handled through API endpoints rather than relying exclusively on frontend static data. This required designing the database model, API layer, validation rules, and frontend components so that the different parts of the application remained consistent. Security was another major focus. I implemented authentication and role-based access control (RBAC) to separate administrative functionality from public customer functionality. API request models were validated to prevent invalid or excessive input, and additional security hardening was performed before considering the application production-ready. The project also incorporates the Anthropic Claude API to provide an AI-powered customer assistant. Integrating AI into the application required more than simply sending prompts to an API. I had to consider how the assistant would interact with the surrounding application, how requests should be validated, and how errors should be handled without compromising the reliability of the underlying system. Development was organized into structured phases covering database integration, authentication, cart functionality, backend-driven catalog development, security validation, observability, and production readiness. This approach gave me experience managing a larger software project incrementally while maintaining a stable application throughout development. Fiddler’s Green strengthened my ability to design complete full-stack systems and connect frontend interfaces, backend APIs, databases, authentication, and AI services into one cohesive application. More importantly, it demonstrated how technical decisions can be connected to real business requirements such as product management, customer engagement, scalability, and future commerce functionality.

Building CodeFolio: From Portfolio Website to Production AI-Enhanced Platform

Date: Monday, 10 August 2026 18:51

Content: CodeFolio began as a portfolio application designed to present my projects and technical experience, but it evolved into a much larger exercise in building, deploying, securing, and maintaining a production-style web application. The application is built with ASP.NET Core 9 and C#, using Razor views for the frontend, Entity Framework Core for data access, and PostgreSQL as the relational database. Docker provides consistent application and database environments, while Nginx operates as a reverse proxy in the production deployment. The application is hosted on a DigitalOcean VPS with HTTPS configured through Let's Encrypt. A major part of the project was learning how a full-stack application behaves outside of a local development environment. Instead of stopping after the application worked locally, I worked through deployment configuration, environment variables, database migrations, reverse-proxy configuration, HTTPS, logging, health checks, and production troubleshooting. Authentication and authorization were also important parts of the system. ASP.NET Core Identity provides authentication and role-based access control, allowing administrative functionality to remain separate from publicly accessible portfolio content. I also implemented validation and security controls throughout the application to reduce the risk of invalid or abusive requests. The application includes project management, blog content, contact functionality, resume content, and an AI-powered assistant using the Anthropic Claude API. This made CodeFolio a useful environment for learning how individual features interact with a larger application rather than being developed as isolated demonstrations. The deployment process also introduced me to CI/CD through GitHub Actions. The pipeline automates application build and testing and handles deployment-related tasks, including database migration preparation. I also worked through real production issues, including ASP.NET Data Protection key persistence and reliable SSL certificate renewal using Certbot webroot. One of the most valuable aspects of CodeFolio has been the opportunity to repeatedly improve the application after the initial implementation. Security reviews, validation audits, logging improvements, deployment checks, and production-readiness testing became part of the development process rather than an afterthought. CodeFolio ultimately became more than a website for displaying my work. It became a demonstration project for full-stack development, cloud deployment, DevOps, authentication, database management, AI integration, and production troubleshooting. The project reflects my progression from building applications that work locally to understanding the additional engineering practices required to operate them reliably in a live environment.