Encurtador de links fullstack com analytics em tempo real.
- Encurtamento de URLs — gera slugs únicos de 7 caracteres com
nanoid - Redirect automático — incrementa contador de cliques a cada acesso
- Dashboard de analytics — visualize todos os links e total de cliques
- UI responsiva — dark mode nativo, grid animado, feedback visual
| Camada | Tecnologia |
|---|---|
| Frontend | Next.js 14 (App Router) + TypeScript |
| Estilo | CSS Modules (sem framework) |
| ORM | Prisma |
| Banco | PostgreSQL via Supabase |
| Deploy | Vercel |
# 1. Clone o repositório
git clone https://github.com/Lucass-devjr/link-vault.git
cd link-vault
# 2. Instale as dependências
npm install
# 3. Configure as variáveis de ambiente
cp .env.example .env.local
# Preencha DATABASE_URL com sua string do Supabase
# 4. Sincronize o banco
npx prisma db push
# 5. Rode o projeto
npm run devAcesse http://localhost:3000
src/
├── app/
│ ├── [slug]/page.tsx # Redirect + incremento de cliques
│ ├── api/shorten/route.ts # POST /api/shorten
│ ├── dashboard/page.tsx # Analytics dashboard
│ └── page.tsx # Homepage
├── lib/
│ └── prisma.ts # Singleton do Prisma Client
└── app/globals.css # Design system (CSS variables)
- Crie um projeto no Supabase
- Copie a
DATABASE_URL(Settings → Database → Connection string) - Deploy na Vercel com as env vars configuradas
- Rode
npx prisma db pushou adicione como build command
Built by Lucas Sales · Faster Soluções em Tecnologia