One username. Clean, predictable links for every platform.
This project is part of GirlScript Summer of Code 2026 (GSSoC'26) and Nexus Spring of Code 2026 (NSoC'26)
Live Demo Β· Docs Β· Report Bug Β· Request Feature
LinkID is built for developers and professionals.
Stop pasting long URLs everywhere. Share clean, readable links like:
linkid.qzz.io/username/githubΒ·linkid.qzz.io/username/linkedin
- Platform Routing β Predictable links like
/github,/linkedin,/leetcode,/portfolio - Single Professional Identity β One username, all your platforms
- Auto Platform Detection β Paste any URL and the platform is detected automatically
- Public Profile Page β Shareable profile at
linkid.qzz.io/username - Real-time Dashboard β Add, edit, and delete links instantly without a page reload
- Auto-Fill Applications β Bypass strict Applicant Tracking Systems (ATS) by automatically injecting your original, raw platform URLs into job application fields.
- OAuth Integration β Securely connects with your LinkID profile in one click.
- Source Code β Available in its own repository: vishnukothakapu/linkid-extension.
- OAuth Login β Google & GitHub sign-in via NextAuth.js
- Email + Password Auth β Traditional credential-based login with bcrypt hashing
- Route Protection β Middleware-based auth guards on dashboard and API routes
- Dark Mode β Full system, light, and dark theme support via
next-themes - Fully Responsive β Mobile-first design with Tailwind CSS
- Toast Notifications β Instant feedback on all user actions
- Platform Icons β Automatic icon matching for 10+ platforms
- Type-safe β End-to-end TypeScript with strict mode
- Prisma ORM β Type-safe database access with PostgreSQL
- URL Validation β Strict per-platform URL validation before saving
- Optimistic UI β Local state updates before server confirmation
| Layer | Technology |
|---|---|
| Framework | Next.js 16 (App Router) |
| Language | TypeScript |
| Styling | Tailwind CSS + shadcn/ui |
| Database | PostgreSQL |
| ORM | Prisma 7 |
| Auth | NextAuth.js v4 |
| Icons | Lucide React + React Icons |
| Notifications | React Hot Toast |
| Deployment | Vercel |
Try it live: https://linkid.qzz.io
Example profile: linkid.qzz.io/vishnu
Platform redirect: linkid.qzz.io/vishnu/github
- Node.js
>=20.9.0 - PostgreSQL
>=14 - npm / yarn / pnpm
git clone https://github.com/vishnukothakapu/linkid.git
cd linkid
npm installcp .env.example .envEdit .env with your values:
# Database
DATABASE_URL="postgresql://user:password@localhost:5432/linkid"
# NextAuth
NEXTAUTH_SECRET="your-secret-here" # openssl rand -base64 32
NEXTAUTH_URL="http://localhost:3000"
# OAuth Providers (optional but recommended)
GOOGLE_CLIENT_ID="your-google-client-id"
GOOGLE_CLIENT_SECRET="your-google-client-secret"
GITHUB_CLIENT_ID="your-github-client-id"
GITHUB_CLIENT_SECRET="your-github-client-secret"Tip: Generate
NEXTAUTH_SECRETwithopenssl rand -base64 32
# Run migrations
npx prisma migrate dev
# If migrations aren't working as expected, check /prisma/migrations find the latest init migration. Mark migrations before that as applied using :
npx prisma migrate resolve --applied <migration_name>
# (Optional) Open Prisma Studio to inspect data
npx prisma studiodocker-compose up -d # starts PostgreSQL
npx prisma migrate dev
npm run devnpm run devOpen http://localhost:3000 π
linkid/
βββ app/
β βββ [username]/ # Public profile pages
β β βββ [platform]/ # Platform redirect handler
β β β βββ page.tsx
β β βββ page.tsx # Public profile page
β β βββ ProfileCard.tsx # Profile UI components
β βββ api/
β β βββ auth/ # NextAuth routes
β β βββ links/ # Link CRUD endpoints
β β β βββ [id]/ # Individual link operations
β β βββ profile/ # Profile update endpoints
β β βββ username/ # Username check & creation
β βββ components/ # Shared UI components
β β βββ DashboardNavbar.tsx
β β βββ Navbar.tsx
β β βββ ThemeToggle.tsx
β βββ dashboard/ # Protected dashboard pages
β βββ login/ # Authentication pages
β βββ profile/ # User profile settings
β βββ register/
β βββ globals.css
β βββ layout.tsx
β βββ providers.tsx
βββ components/
β βββ ui/ # shadcn/ui components
βββ lib/
β βββ auth.ts # NextAuth configuration
β βββ platformIcons.ts # Platform icon registry
β βββ platforms.ts # Platform detection & validation
β βββ prisma.ts # Prisma client singleton
β βββ url.ts # URL utilities
βββ prisma/
β βββ migrations/
β βββ schema.prisma
βββ public/
βββ middleware.ts # Auth middleware
βββ next.config.ts
βββ tailwind.config.ts
βββ tsconfig.json
βββ package.json
Since the extension is not yet published on the Chrome Web Store, you can easily install it in Developer Mode:
- Download the linkid-extension repository (either via git clone or downloading the ZIP and extracting it).
- Open Google Chrome and navigate to
chrome://extensions/ - Toggle Developer mode to ON (in the top right corner).
- Click the Load unpacked button (top left corner).
- Select the
linkid-extensionfolder you downloaded. - Open the extension from your toolbar, click Connect LinkID, and you're ready to auto-fill!
- Sign up at linkid.qzz.io/register
- Pick your unique username (e.g.,
vishnu) - Paste your profile URLs β platform is detected automatically
- Share
linkid.qzz.io/vishnueverywhere
| Platform | Route | Example |
|---|---|---|
| GitHub | /github |
linkid.qzz.io/vishnu/github |
/linkedin |
linkid.qzz.io/vishnu/linkedin |
|
| LeetCode | /leetcode |
linkid.qzz.io/vishnu/leetcode |
| YouTube | /youtube |
linkid.qzz.io/vishnu/youtube |
| X (Twitter) | /x |
linkid.qzz.io/vishnu/x |
/instagram |
linkid.qzz.io/vishnu/instagram |
|
/facebook |
linkid.qzz.io/vishnu/facebook |
|
| Discord | /discord |
linkid.qzz.io/vishnu/discord |
| Twitch | /twitch |
linkid.qzz.io/vishnu/twitch |
| Custom Website | /your-label |
linkid.qzz.io/vishnu/blog |
We love contributions! LinkID is an open-source project and welcomes PRs of all sizes.
π Read the Contributing Guide β
# Fork and clone
git clone https://github.com/YOUR_USERNAME/linkid.git
cd linkid
# Create a branch
git checkout -b feat/your-feature-name
# Make changes, then push
git push origin feat/your-feature-name
# Open a Pull Request on GitHubSee GitHub Issues for tasks open to contributors.
Distributed under the MIT License. See LICENSE for more information.
- Next.js β The React framework for production
- shadcn/ui β Beautifully designed component library
- Prisma β Next-generation ORM for Node.js
- NextAuth.js β Authentication for Next.js
- Vercel β Platform for deploying Next.js apps
Made with β€οΈ by Vishnu Kothakapu and contributors
β Star this repo if you find it useful!