Built with Astro, React, Tailwind, and Server Actions
Shorty-Link is an open-source URL shortener that simplifies sharing long links. Intuitive, fast, and customizable.
- Frontend: React + Tailwind CSS
- Backend: Astro (SSG/SSR) + Server Actions
- Auth: better-auth (OAuth with GitHub/Google)
- Icons: lucide-react
- Database:
- Production: Turso (SQLite as a service)
- Local Development: SQLite
- ORM: Prisma
git clone git@github.com:YOUR_USER/shorty-link.git
cd shorty-link
pnpm install
The project includes a .env.template file as a template for your environment variables.
- Copy the .env.template file to a new .env file
- Open the .env file and fill in the required values
BETTER_AUTH_SECRET=
BETTER_AUTH_URL=
DATABASE_URL="file:dev.sqlite3"
TURSO_DATABASE_URL=
TURSO_AUTH_TOKEN=
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=
Note : If you don't provide Turso credentials (TURSO_DATABASE_URL and TURSO_AUTH_TOKEN), the app will automatically use SQLite (file:dev.sqlite3) as the database.
Run the following commands to set up your database schema and migrations:
pnpm db:generate
pnpm db:migrate
Start the development server:
pnpm dev
- Sign Up/Login via GitHub/Google.
- Shorten a URL: Click "Create link" and paste the long link.
- Copy & Share : Use the generated short link.
- Dashboard : Track clicks, edit URLs, or delete links.
Pull requests are welcome! For major changes, open an issue first.
This project is licensed under the MIT License - See LICENSE for details.