Acortador de enlaces. Usa CF D1, Altcha y un worker
git clone https://github.com/tu-usuario/link.inled.es.git
cd link.inled.es
npm installDesde la terminal, utiliza wrangler para crear la base de datos:
npx wrangler d1 create link-dbCopia el database_id que aparecerá en pantalla y pégalo en el archivo wrangler.jsonc bajo la sección d1_databases.
Crea la tabla necesaria en tu nueva base de datos:
# Para producción (remoto)
npx wrangler d1 migrations apply link-db --remote
# Para desarrollo (local)
npx wrangler d1 migrations apply link-db --local- Contraseña de Administrador:
npx wrangler secret put ADMIN_PASSWORD
- Local: Crea un archivo
.dev.varscon:ADMIN_PASSWORD=tu_clave_local
- Sube tu código a GitHub.
- En el panel de Cloudflare, crea un nuevo proyecto de Pages conectado a tu repo.
- Build settings:
- Framework:
Astro - Build command:
npm run build - Output:
dist
- Framework:
- Vinculación D1:
- En el panel del proyecto ->
Settings->Functions->D1 database bindings. - Añade una vinculación: Variable
link_dbconectada a tu base de datoslink-db.
- En el panel del proyecto ->
- Variable de Entorno:
Settings->Environment variables.- Añade
ADMIN_PASSWORD(puedes usar el mismo valor que el secreto anterior). - Añade
SESSION_SECRETque creas conopenssl rand -hex 32
Para ejecutar el proyecto localmente simulando el entorno de Cloudflare:
npx wrangler devAccede a http://localhost:8788.
Si deseas importar enlaces masivamente, el formato debe ser:
[
{ "slug": "github", "url": "https://github.com/inled" },
{ "slug": "web", "url": "https://inled.es" }
]Desarrollado utilizando IA.