Skip to content

sujeetgund/smolurls

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

smolurls

A clean, production-ready URL shortener with analytics and native MCP tooling — built on FastAPI + FastMCP and Next.js, served from a single backend port.

Features

  • Fast URL shortening with optional custom aliases
  • Redirect tracking with per-click event data (IP, user-agent, referrer)
  • MCP tools for agent-native access — shorten, lookup, list, and analytics
  • Single service surface: REST API + MCP on the same port
  • Next.js frontend with analytics charts

Documentation

Doc Description
docs/backend.md FastAPI service — routes, architecture, database schema, deployment
docs/mcp.md MCP endpoint — tools, transport, client setup (Claude Desktop, Cursor, …)
docs/frontend.md Next.js frontend — pages, API client, environment variables

Quick start

Backend

cd backend
$env:DATABASE_URL = "postgresql+psycopg://postgres:postgres@localhost:5432/smolurls"
$env:BASE_URL     = "http://127.0.0.1:8000/api/v1"
uv sync
uv run uvicorn main:app --reload

Frontend

cd frontend
pnpm install
pnpm dev

Project structure

smolurls/
├── backend/          # FastAPI + FastMCP service
├── frontend/         # Next.js application
└── docs/             # Documentation
    ├── backend.md
    ├── mcp.md
    └── frontend.md

About

A production-ready URL shortener with click analytics and native MCP tools, built with FastAPI, PostgreSQL, and Next.js

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors