DevLink is a small profile hub for developers: links, skills, and a clean public profile page.
GET /u/:usernameGET /l/:linkId (click count + redirect)npm install
docker compose up -d
This repo maps the container’s 5432 to host 5433 to avoid conflicts with an existing local Postgres.
Create .env (or copy from .env.example) and fill in at least:
DATABASE_URLNEXTAUTH_SECRETOptional (enables OAuth buttons):
GITHUB_CLIENT_ID, GITHUB_CLIENT_SECRETGOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRETnpx prisma migrate dev
Optional seed data:
npm run db:seed
Seeded credentials:
demo@devlink.localpassword123npm run dev
Open:
http://localhost:3000http://localhost:3000/loginGET /dashboard (authenticated)GET /u/:username (public)GET /l/:linkId (public tracked redirect)/l/:linkId) so it works without client JS.src/app contains all Next.js routes (pages, API, server actions).src/components contains reusable UI components.src/lib contains helpers (auth, Prisma, rate limit, validators).prisma/schema.prisma defines the database models.npm run lint and npm test before submitting./u/:username, /l/:linkId, and discover endpoints.callbackUrl only accepts relative paths.DATABASE_URL and NEXTAUTH_SECRET.GITHUB_CLIENT_ID, GITHUB_CLIENT_SECRET, GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET.