Skip to content

LinkOps πŸš€ | Professional URL management platform with real-time analytics, custom aliases, and advanced security. Built with Next.js 16, PostgreSQL, Redis, and Better-Auth.

Notifications You must be signed in to change notification settings

mohamedaleya/linkops

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

21 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

LinkOps πŸš€

LinkOps is a professional, high-performance URL management platform designed for modern needs. It goes beyond simple shortening, offering detailed analytics, enhanced security features, and a premium user experience with a sleek, responsive design.

Next.js TypeScript Tailwind CSS Prisma PostgreSQL Redis Docker

✨ Key Features

  • πŸš€ Advanced URL Shortening: Create custom, branded aliases with support for various redirect types (301, 302, 307, etc.).
  • πŸ“Š Unified Dashboard: A central place to manage all your links, view real-time statistics, and monitor engagement.
    • Click Tracking: Real-time monitoring of link engagement.
    • Geographic Insights: Heatmaps and data on clicks by country.
    • Referrer Analysis: Identify which platforms are driving traffic.
    • Time-Series Data: Daily and cumulative click statistics.
  • πŸ”’ Security & Control:
    • Password Protection: Secure your links with encrypted passwords.
    • Premium End-to-End Encryption: Zero-knowledge storage for link destinations using AES-256 (Private links only).
    • Safety Warning: Interstitial warning for potentially unsafe links.
    • Expiration Dates: Set links to automatically deactivate after a certain period.
    • Enable/Disable: Instantly toggle link availability without deleting.
  • βœ‰οΈ Email Verification:
    • Account Verification: Email-based verification for new user registrations.
    • Password Reset: Secure password reset flow with token-based email verification.
    • SMTP Integration: Reliable email delivery via Nodemailer.
  • πŸ“„ Informational Pages:
    • Features: Detailed overview of platform capabilities.
    • Contact: Direct line of communication for users.
    • Pricing: Transparent pricing information (Currently Free).
  • πŸ‘€ Premium User Experience:
    • Better-Auth Integration: Secure authentication via credentials or OAuth (Google, GitHub).
    • Advanced Profile Management: Custom usernames, display names, and profile picture management with integrated cropping.
    • Responsive & Dynamic UI: Built with Shadcn UI, Framer Motion, and support for Dark Mode.
    • Cookie Consent: GDPR-compliant cookie banner with customizable preferences.

πŸ—οΈ Architecture & Tech Stack

LinkOps is built with a focus on scalability, performance, and developer experience.

Frontend & Backend

  • Framework: Next.js 16 (App Router & Server Components) for optimal performance and SEO.
  • Styling: Tailwind CSS for rapid, consistent UI development.
  • Components: Shadcn UI (Radix UI primitives) for accessible, premium-feel components.
  • Animations: Framer Motion for smooth layout transitions and micro-interactions.

Data & Infrastructure

  • ORM: Prisma for type-safe database access.
  • Primary Database: PostgreSQL 16 (Relational data, Users, Links, Analytics).
  • In-Memory Store: Redis 7 (via ioredis) for high-performance rate limiting and potential caching.
  • Auth Service: Better-Auth for a managed-yet-flexible authentication flow.
  • Storage: UploadThing for secure and easy profile image handling.

DevOps & Deployment

  • Containerization: Docker & Docker Compose for consistent environments.
  • Registry: GitHub Container Registry (GHCR) for hosting Docker images.
  • Deployment: Custom automated bash scripts for building and pushing to GHCR, then deploying to a VPS (OVH) via SSH and Docker Compose.
  • Testing:
    • Unit/Integration: Jest & React Testing Library.
    • E2E: Playwright for robust browser automation tests.

πŸš€ Getting Started

Prerequisites

  • Node.js 20+
  • PostgreSQL instance
  • Redis instance
  • UploadThing API keys

Installation & Setup

  1. Clone & Install:

    git clone https://github.com/mohamedaleya/linkops.git
    cd linkops
    npm install
  2. Environment Configuration: Create a .env file based on .env.example. Ensure you provide valid credentials for PostgreSQL, Redis, and Better-Auth.

    Note: For staging environment, use .env.staging and the dev branch.

  3. Database Initialization:

    npx prisma generate
    npx prisma db push
  4. Run Development Server:

    npm run dev

🐳 Deployment

The project includes a docker-deploy.sh script for automated deployment:

npm run deploy

This builds the production image for linux/amd64, pushes it to GitHub Container Registry (GHCR), and triggers a pull/redeploy on the target VPS.

Staging Environment

The project maintains a dev branch for staging. Pushes to this branch trigger a deployment to the staging environment.

🀝 Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

Open-source under the MIT License. Built with ❀️ by mohamedaleya.

About

LinkOps πŸš€ | Professional URL management platform with real-time analytics, custom aliases, and advanced security. Built with Next.js 16, PostgreSQL, Redis, and Better-Auth.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages