Dynamic identity tab page generator with customizable colors and titles—perfect for visually organizing browser tabs.
Tabitha is a serverless function that generates HTML pages on-demand with:
- Custom titles displayed in the center of the page
- Custom background colors
- Matching circular favicons (generated as SVG)
- Zero configuration required
https://your-deployment.vercel.app/api/index?title=YOUR_TITLE&color=HEX_COLOR
Query Parameters:
title: Text to display (URL encoded)color: Hex color code (with or without#)
Examples:
/api/index?title=DS%20Shuttle&color=ffa500
/api/index?title=Work&color=007bff
/api/index?title=PMB&color=ff6b9d
# Clone the repository
git clone https://github.com/patrickmburrell/tabitha.git
cd tabitha
# Install dependencies
uv sync
source .venv/bin/activatepython dev_server.pyVisit:
http://localhost:8000/?title=Test&color=ffa500http://localhost:8000/?title=Work&color=007bff
Press Ctrl+C to stop the server.
- Login to Vercel:
vercel login- Deploy to production:
./deploy.shThis will deploy the project and provide the Vercel URL.
After initial deployment, configure the custom domain:
./domain.sh addThen configure your DNS provider:
- Record Type: CNAME
- Name:
tabitha - Value:
cname.vercel-dns.com
./deploy.sh- Initial deployment to production./update.sh- Redeploy changes to production./remove.sh- Remove project from Vercel./domain.sh add- Add custom domain./domain.sh remove- Remove custom domain./domain.sh list- List all domains./domain.sh inspect- Inspect domain configuration
- Serverless Function:
api/index.pyhandles HTTP requests - Dynamic Generation: HTML created on-the-fly with inline styles
- SVG Favicon: Circular favicon generated as base64 data URI
- Caching: 1-hour HTTP cache for performance
MIT