2.5 KiB
2.5 KiB
AltBin.dev
A modern, open-source pastebin built with Next.js 15, TypeScript, and PostgreSQL.
It allows you to create, share, and manage text snippets (pastes) with features like password protection, expiration, and view tracking.
✨ Features
- 🔑 Password-protected pastes
- 📊 Dashboard with statistics (views, size, recent pastes, etc.)
- 🎨 Beautiful UI with TailwindCSS + Shadcn
- 🌙 Dark mode support
- 🔐 Discord authentication (via NextAuth)
- 📥 Download raw pastes or copy directly to clipboard
- 📈 View counters & limits
- 🛡️ Secure storage with Prisma + PostgreSQL
🛠️ Tech Stack
- Next.js 15 (App Router)
- TypeScript
- TailwindCSS + shadcn/ui
- Prisma ORM with PostgreSQL
- NextAuth.js (Discord provider)
- Lucide Icons
- Framer Motion for animations
⚡ Getting Started
1. Clone the repository
git clone https://github.com/YOUR_USERNAME/altbin.dev.git
cd altbin.dev
2. Install dependencies
pnpm install
3. Set up environment variables
Create a .env file in the root of the project:
# Database
DATABASE_URL="postgres://postgres:<password>@<host>:<port>/postgres"
# Discord OAuth
DISCORD_CLIENT_ID=your_discord_client_id
DISCORD_CLIENT_SECRET=your_discord_client_secret
# NextAuth
NEXTAUTH_SECRET=your_super_secret_key
NEXTAUTH_URL=http://localhost:3000
4. Set up the database
Run Prisma migrations:
pnpm prisma migrate dev --name init
Generate the Prisma client:
pnpm prisma generate
5. Start the dev server
pnpm dev
The app should now be running at http://localhost:3000
🚀 Deployment
You can deploy this project on:
- Vercel
- Any Node.js hosting provider with PostgreSQL support
Make sure to set your .env variables on the hosting platform.
🤝 Contributing
Pull requests are welcome! If you want to add a feature or fix a bug, feel free to fork the project and open a PR.
📜 License
This project is licensed under the MIT License. You are free to use, modify, and distribute it as you wish.
👨💻 Author
Built with ❤️ by UltraLion
---