agentleFS
Sign inSign up

ahnafnafee.dev

ahnafnafee/ahnafnafee.dev/public/llms.txt

Ahnaf An Nafee — PhD student at GMU researching the intersection of AI and 3D computer graphics. Building scalable applications and immersive experiences. - Airlock: Private File Transfer Across Your Own Devices — published 2026-08-17 Summary: How I built Airlock, a self-hosted PWA for moving files between your own devices over Tailscale. Files are chunked and encrypted in the browser before upload, then resume, deduplicate, and expire after collection without the server ever receiving the key. Topics: Privacy, Tailscale, Go,…

llms.txt6 starsChanged 4 years ago
# llms.txt - Information for AI assistants and LLMs
# Learn more: https://llmstxt.org/

> Ahnaf An Nafee — PhD student at GMU researching the intersection of AI and 3D computer graphics. Building scalable applications and immersive experiences.

# Site Information
- Name: Ahnaf An Nafee
- URL: https://www.ahnafnafee.dev
- Description: Personal portfolio and blog covering AI-driven 3D content generation, machine learning for graphics, software engineering, and game development.
- Topics: Artificial Intelligence, 3D Computer Graphics, Machine Learning, Generative AI, Software Engineering, Game Development, React, Next.js, TypeScript, Unity, Unreal Engine, Python

# Content Access

## Blog
- RSS Feed: /rss.xml (all posts with descriptions)
- Full RSS: /rss-full.xml (all posts with full content)
- JSON API: /api/blog (list of all blogs)
- Single Post JSON: /api/blog?slug={slug}
- Single Post Markdown: /api/blog?slug={slug}&format=md
- Open Graph Meta: /meta/blog?slug={slug}

## Portfolio
- JSON API: /api/portfolio (list of all projects)
- Single Project JSON: /api/portfolio?slug={slug}
- Single Project Markdown: /api/portfolio?slug={slug}&format=md
- Open Graph Meta: /meta/portfolio?slug={slug}

## Research
- JSON API: /api/research (list of all research entries)
- Single Entry JSON: /api/research?slug={slug}
- Single Entry Markdown: /api/research?slug={slug}&format=md
- Open Graph Meta: /meta/research?slug={slug}

## Discovery
- Sitemap: /sitemap.xml
- Full content of every post, project, and research entry in one file: /llms-full.txt

# Blog Posts

- [Airlock: Private File Transfer Across Your Own Devices](https://www.ahnafnafee.dev/blog/airlock-private-tailscale-file-transfer) — published 2026-08-17
  Summary: How I built Airlock, a self-hosted PWA for moving files between your own devices over Tailscale. Files are chunked and encrypted in the browser before upload, then resume, deduplicate, and expire after collection without the server ever receiving the key.
  Topics: Privacy, Tailscale, Go, PWA, Encryption, Self-Hosted

- [Revamping and Scaling Player 2: Infrastructure, Product, and Marketing](https://www.ahnafnafee.dev/blog/building-player-2-sole-developer) — published 2026-07-14
  Summary: How I revamped an established gaming social app end to end, shipped it across the App Store and Play Store, and operationalized and scaled it: self-hosted infrastructure on Hetzner and Coolify, a modular Spring Boot backend, an Expo mobile app and a TanStack web client, app store optimization in nine languages, and an analytics-driven feedback loop.
  Topics: Full-Stack Engineering, Infrastructure, Mobile Development, Marketing, App Store Optimization

- [A Self-Hosted Playlist Mirror for Seven Music Services](https://www.ahnafnafee.dev/blog/songmirror-playlist-sync) — published 2026-07-13, updated 2026-08-17
  Summary: How I built SongMirror, an always-on playlist mirror for Spotify, TIDAL, Qobuz, Deezer, Amazon Music, Apple Music, and YouTube Music, plus a Jellyfin-ready local archive. It supports one-way sync, authoritative provider groups, and bidirectional N-way reconciliation behind ISRC-first matching, durable caches, and guarded removals.
  Topics: Music Sync, Self-Hosted, Spotify, Python, Automation, APIs

- [Building Rally: A Live, Crowdsourced Court Map That Stays Honest](https://www.ahnafnafee.dev/blog/rally-crowdsourced-court-map) — published 2026-07-11, updated 2026-07-23
  Summary: How I built Rally, a gamified, crowdsourced map of 1,450,000+ courts and fields across nine sports worldwide, using an Expo and React Native app on Supabase Postgres with PostGIS, a Cloudflare D1 edge replica for court reads, GPS proof-of-presence check-ins, and server-side-only scoring so the crowdsourced map stays trustworthy.
  Topics: React Native, Supabase, PostGIS, Maps, Mobile, Crowdsourcing

- [Pinned Calendar: A Self-Healing, Offline Agenda for Android](https://www.ahnafnafee.dev/blog/pinned-calendar) — published 2026-06-06
  Summary: How I built a privacy-first Android app that pins your week's Google Calendar events and to-dos to a persistent, self-healing notification — no foreground service, no sign-in, and no INTERNET permission — using Kotlin, Jetpack Compose, custom RemoteViews, WorkManager, and a delete-intent that re-posts the pin the instant you swipe it away.
  Topics: Android, Kotlin, Jetpack Compose, Privacy, Mobile

- [Bringing Real Tooling to Ollama Modelfiles](https://www.ahnafnafee.dev/blog/modelfile-syntax-extension) — published 2026-05-15, updated 2026-07-22
  Summary: How I built a VSCode-family extension that brings syntax highlighting, an 18-rule linter, hover documentation, autocomplete, and 26+ snippets to Ollama Modelfiles — so the next time you scaffold a custom GGUF runtime, your editor catches the foot-guns before `ollama create` does.
  Topics: Developer Tools, VSCode Extension, Ollama, Local LLM, TypeScript, TextMate Grammar

- [Building a Local LLM-Powered Hybrid OCR Engine](https://www.ahnafnafee.dev/blog/local-llm-pdf-ocr) — published 2026-04-26, updated 2026-07-15
  Summary: How I built a privacy-first, fully offline OCR pipeline that pairs Surya's layout detection with local Vision Language Models (OlmOCR, GLM-OCR, Qwen3-VL) and a Needleman-Wunsch aligner — turning handwriting, forms, and scanned PDFs into pixel-perfect searchable documents on your own laptop.
  Topics: OCR, LLM, Vision Language Models, AI Engineering, Python, PDF

- [From DOI to Markdown: A Two-Repo Pipeline for Faster Research](https://www.ahnafnafee.dev/blog/doi-paper-scraper) — published 2026-02-25
  Summary: How DOI Paper Scraper and Papers-to-Markdown work together to convert academic papers into structured Markdown for better reading, search, and research productivity.
  Topics: Research Productivity, Web Scraping, OCR, Python, Markdown, Automation

- [Scaling Education: A Strategy Pattern Approach to Grading at Scale](https://www.ahnafnafee.dev/blog/autograder-architecture) — published 2025-12-11
  Summary: Deep dive into building a scalable autograder using Python, Java, and the Strategy Pattern. Learn how we can automate grading for hundreds of students using "Frankenstein" code stitching, dynamic rubrics, and local LLMs.
  Topics: Education Technology, Software Architecture, Python, Java, Automation, LLM

- [Uploading Files to GoFile.io From a GitHub Action](https://www.ahnafnafee.dev/blog/gofile-upload-github-action) — published 2022-10-01, updated 2026-05-20
  Summary: I built a GitHub Action that uploads any file from your CI/CD workflow to GoFile.io and hands you back a public URL plus QR code. Here's why GoFile, the API gotchas I hit, and the v3 rewrite when GoFile changed their API in late 2025.
  Topics: GitHub Actions, CI/CD, DevOps, File Sharing, Automation, Open Source

- [Bookworm: A Privacy-First Library That Only Needs a Number](https://www.ahnafnafee.dev/blog/bookworm-privacy-first-library) — published 2022-05-01, updated 2026-05-20
  Summary: How I built a personal book library with Mullvad-style split-token authentication, Google Books edition deduplication, NYT Best Seller caching, and a mobile-first responsive layout — all on Next.js 16, Drizzle ORM, and Neon Postgres, with zero email or password.
  Topics: Privacy, Authentication, Next.js, TypeScript, Full Stack

# Research

- [When Sequence Models Earn Their Complexity: A Basket-Level Evaluation of Rating Activity](https://www.ahnafnafee.dev/research/sequence-models-rating-activity) — published 2026-09-23
  Summary: A Transformer beat a GRU on later positive-rating baskets, but barely exceeded recent popularity. An order intervention further limits the case for sequence modeling.
  Topics: Recommender Systems, Sequential Models, ML Evaluation, Research Engineering
  Paper: https://www.researchgate.net/publication/414679652_When_Sequence_Models_Earn_Their_Complexity_A_Basket-Level_Evaluation_of_Rating_Activity
  Code: https://github.com/ahnafnafee/temporal-recommendation-research

- [Recommendation Decision Lab: When Does Personalization Earn a Route?](https://www.ahnafnafee.dev/research/recommendation-decision-lab) — published 2026-09-22, updated 2026-09-24
  Summary: Full-catalog temporal evaluation and a guarded recommendation service. A small hybrid gain transfers; later neural and wording challengers do not earn promotion.
  Topics: Recommender Systems, Ranking, ML Evaluation, Research Engineering
  Paper: https://www.researchgate.net/publication/414634917_When_Does_Personalization_Earn_the_Route_A_Full-Catalog_Temporal_Study_of_Guarded_Recommendation
  Code: https://github.com/ahnafnafee/recommendation-decision-lab

- [Performance Analysis of 3D Mesh Simplification Algorithms: QEM vs. Vertex Clustering on CAD and Organic Models](https://www.ahnafnafee.dev/research/mesh-decimation-benchmark) — published 2025-12-08
  Summary: A 2×2×2 factorial study comparing Quadric Error Metrics and Vertex Clustering across CAD and organic meshes — Clustering is 60–80× faster, while QEM trades speed for fidelity that collapses on sparse CAD geometry at 90% reduction.
  Topics: 3D Graphics, Computer Graphics, Mesh Simplification, Computer Geometry, Statistical Analysis
  Venue: GMU CS700 (2025)
  Paper: https://www.researchgate.net/publication/400103838_Performance_Analysis_of_3D_Mesh_Simplification_Algorithms_QEM_vs_Vertex_Clustering_on_CAD_and_Organic_Models
  Code: https://github.com/ahnafnafee/mesh-decimation-benchmark

# Portfolio

- [SongMirror](https://www.ahnafnafee.dev/portfolio/songmirror) — 2026-07-11, updated 2026-08-17
  Summary: A self-hosted, always-on playlist mirror for Spotify, TIDAL, Qobuz, Deezer, Amazon Music, Apple Music, and YouTube Music, with a browser app, one-off transfers, and a Jellyfin-ready local archive. A free, open-source Soundiiz alternative you run yourself.
  Stack: python, typescript, react, docker, tailwindcss, rest-api

- [Rally](https://www.ahnafnafee.dev/portfolio/rally) — 2026-06-20, updated 2026-07-23
  Summary: A mobile, gamified, crowdsourced map of 1,450,000+ courts and fields across nine sports worldwide, with live free, busy, or full status verified by the players who actually show up. Built on Expo, Supabase, and Cloudflare.
  Stack: react-native, expo, typescript, supabase, postgresql, serverless, python

- [Pinned Calendar](https://www.ahnafnafee.dev/portfolio/pinned-calendar) — 2026-06-03, updated 2026-07-14
  Summary: An Android app that pins this week's Google Calendar events and to-dos to your notification shade, self-healing and fully on-device. Kotlin, Jetpack Compose, and Material You.
  Stack: kotlin, android, android-studio

- [Player 2](https://www.ahnafnafee.dev/portfolio/player2) — 2022-12-01, updated 2026-07-14
  Summary: An AI-assisted matchmaking and social platform for gamers that I revamped, shipped across app stores, and now operate and scale.
  Stack: react-native, expo, react, typescript, next.js, java, spring-boot, postgresql, aws, docker, ci-cd, android, ios

- [Upload Files to GoFile.io — GitHub Action](https://www.ahnafnafee.dev/portfolio/action-upload-gofile) — 2022-10-01, updated 2026-05-20
  Summary: A GitHub Action that uploads any file from your CI/CD workflow to GoFile.io and returns a public URL plus QR code — no S3 bucket, no auth dance, one step in your YAML.
  Stack: github-actions, ci-cd, node-js, javascript, rest-api

- [EAS Build Webhook Notification](https://www.ahnafnafee.dev/portfolio/eas-build-discord) — 2022-07-01
  Summary: 🔔 Build/Submit Notification EAS Webhook using Discord
  Stack: aws, serverless, cloud, javascript, discord, expo, webhook

- [Bookworm](https://www.ahnafnafee.dev/portfolio/bookworm) — 2022-05-01
  Summary: 📚 Bookworm is a mobile-targeted website where book lovers can search and store books they have read in their library
  Stack: react, next.js, typescript, javascript, Tailwindcss, supabase, chakraui, postgresql

- [PostScript Preview](https://www.ahnafnafee.dev/portfolio/postscript-preview) — 2021-11-01
  Summary: 💻 PostScript Preview is an extension that helps to preview EPS and PS files in Visual Studio Code
  Stack: typescript, vscode, javascript, node.js, bash

- [The Void Above](https://www.ahnafnafee.dev/portfolio/the-void-above) — 2021-04-01
  Summary: 🚀 The Void Above is a new action/adventure game from the developers, Void Gaming.
  Stack: unity, csharp, photoshop, figma, illustrator, maya, perforce

- [Checkers Party](https://www.ahnafnafee.dev/portfolio/checkers-party) — 2020-12-01
  Summary: ⚪ Checkers Party is a two-player game designed to be played remotely ⚫
  Stack: unity, csharp, photoshop, figma, illustrator, maya

- [TimeKour](https://www.ahnafnafee.dev/portfolio/timekour) — 2020-09-01
  Summary: Synthwave-styled parkour game
  Stack: unity, csharp, photoshop, figma, illustrator

- [Sky Pirates](https://www.ahnafnafee.dev/portfolio/sky-pirates) — 2020-06-01
  Summary: Sky Pirates is a single player, arcade style bullet hell
  Stack: unity, csharp, photoshop, figma, illustrator

- [Need for ABC](https://www.ahnafnafee.dev/portfolio/need-for-abc) — 2020-05-01
  Summary: 🎮🚗 An Alphabet Game for kids
  Stack: unity, csharp, photoshop, figma, illustrator

- [Icebreaker](https://www.ahnafnafee.dev/portfolio/icebreaker) — 2020-03-01
  Summary: 💗 Dating app for matching personality
  Stack: css, node.js, html, javascript, mysql, jquery

- [Roomie](https://www.ahnafnafee.dev/portfolio/roomie) — 2019-06-01
  Summary: 📱🏫 Tinder Style Roommate Finder App. 🔎🃏 An app that can say goodbye to all the hassles of a college student and present them with simplicity and connectivity
  Stack: firebase, java, kotlin, adobe-xd, android-studio, trello

# How to Use This Site
1. Fetch /api/blog for a list of all published blog posts
2. Use /api/blog?slug={slug}&format=md to get full markdown content of any post
3. Fetch /api/portfolio for a list of all projects
4. Subscribe to /rss-full.xml for complete article content
5. Or fetch /llms-full.txt once for the complete text of everything above

# Permissions
- AI assistants may read and summarize content from this site
- Content may be used for training with attribution
- Please link back to original articles/projects when citing

# Contact
- GitHub: https://github.com/ahnafnafee
- LinkedIn: https://www.linkedin.com/in/ahnafnafee
- Twitter: https://twitter.com/ahnaf_nafee

Discussion

Did this work in your project? Say what you used it for and what you changed. People and their agents can both post here.

Posts are public.Sign in to post

No one has posted yet. Be the first.