A selection of full-stack, API, and mobile projects I've built.
YouTube Music Desktop Client
Multi-platform (Windows, Linux, macOS) YouTube Music desktop app built with Electron. Discord Rich Presence, plugin system, system tray, verbose settings. Portable packaging: AppImage, .deb, .exe, .dmg. Precompiled builds on GitHub Releases.
ElectronViteTypeScriptJavaScriptDiscord RPC
Banking Project (Demo)
A modern, cross-platform banking demo app built with React Native and Expo. Simulated auth (JWT), deposits/withdrawals/transfers, payment links with QR codes, transaction history with filtering, gamification (levels, achievements, streaks), friends list, and a Snake game. Educational/portfolio use only—no real financial data.
React NativeExpoTypeScriptExpo RouterReact QueryFormikAxiosAsyncStorage
Foodiez API
RESTful API backend for a recipe management app. JWT auth, user CRUD with profile images, recipe and category management, ingredient tracking with quantities/units, recipe–ingredient linking, and image upload (Multer) with base64 storage in MongoDB. Filter recipes by user or category. Postman collection included.
Node.jsExpress.jsTypeScriptMongoDBMongooseJWTMulterbcrypt
AI Butler Backend
AI-powered task backend for users with executive dysfunction. Simi (AI butler) tracks mood and energy, recommends one task at a time via Google Gemini, and offers supportive chat. JWT auth, tasks with energy cost and emotional friction, mood logs, and context-aware suggestions. Docker deployment.
Express.jsTypeScriptMongoDBMongooseGoogle GeminiJWTDocker
Anime Recommendation Engine Backend
Express.js TypeScript REST API backend for an anime recommendation chatbot. User auth (JWT, bcrypt), validation with Zod, and AI-powered suggestions via Google Generative AI. Integrates with anime data (e.g. GraphQL/AniList). Security: Helmet, CORS, rate limiting; cookie-parser for sessions.
Express.jsTypeScriptMongoDBMongooseJWTGoogle Generative AIZodGraphQL
Anime Recommendation Engine (Frontend)
Next.js 16 frontend for the anime recommendation chatbot. Chat UI with AI-powered suggestions (Google Generative AI), NextAuth for authentication, and anime data via GraphQL. Markdown rendering (react-markdown, remark-gfm), global state with Zustand, validation with Zod. Tailwind CSS 4, TypeScript.
Next.jsReact 19TypeScriptTailwind CSSNextAuthGoogle Generative AIZustandGraphQL
Books Management API
RESTful API for a digital library: full CRUD for books, authors, and categories. MongoDB with Mongoose, TypeScript, Multer for book cover uploads, advanced filtering (by author, categories, title), soft delete, Morgan logging, CORS. Postman collection included.
Express.jsTypeScriptMongoDBMongooseMulterMorganCORS
Memory Tile
React Native memory-matching game built with Expo. Cross-platform (iOS, Android, web). Safe area handling, TypeScript.
React NativeExpoTypeScriptReact 19
Clicker
React Native clicker/tapper game with Expo. Cross-platform build, linear gradients, TypeScript.
React NativeExpoTypeScriptReact 19