A sleek and modern public client for Linkding, built with Next.js 15, React 19, and Tailwind CSS. It lets you explore all your stored bookmarks with a beautiful UI, seamless Linkding API integration, and full dark/light theme support.
- Responsive Design: Optimized for desktop, tablet, and mobile devices
- Dark/Light Theme: System-aware theme switching with smooth transitions
- Beautiful Components: Built with Radix UI primitives and shadcn/ui
- Smooth Animations: CSS transitions and micro-interactions
- Client-Side Search: Instant search with zero network latency
- Smart Filters: Filter by archived, unread, shared status
- Flexible Sorting: Sort by date (newest/oldest) or title (A-Z/Z-A)
- Tag Management: Interactive tag panel with visual tag counts
- URL Sync: Shareable filter states via URL parameters
- Fetch Once, Filter Locally: All bookmarks loaded once, then filtered client-side
- Instant Filtering: Search and tag filters apply instantly without API calls
- Server-Side Caching: 2-minute API cache for fast subsequent loads
- Loading States: Beautiful skeleton components during initial load
- Touch Optimized: Perfect touch targets and mobile gestures
- Responsive Navbar: Adaptive two-row mobile layout
- Icon-Only Mobile: Compact mobile interface with smart visual indicators
- Scroll-to-Top: Convenient navigation for long lists
- Next.js 15 - React framework with App Router
- React 19 - Latest React with concurrent features
- TypeScript - Type-safe development
- Tailwind CSS 4 - Modern utility-first CSS framework
- Radix UI - Accessible component primitives
- shadcn/ui - Beautiful, customizable components
- Lucide React - Consistent icon library
- Turbopack - Ultra-fast bundler for development
- Geist Font - Modern font stack (Sans & Mono)
- ESLint - Code quality and consistency
- Vercel Speed Insights - Performance monitoring
- Node.js 18+
- pnpm (recommended) or npm
- A running Linkding instance
-
Clone the repository
git clone https://github.com/0xtbug/bookmark-manager.git cd bookmark-manager -
Install dependencies
pnpm install
-
Environment Configuration Create a
.envfile in the root directory:NEXT_PUBLIC_API_URL=https://your-linkding-instance.com/api NEXT_PUBLIC_API_TOKEN=your-api-token
-
Start development server
pnpm dev
-
Open in browser Navigate to http://localhost:3000
| Variable | Description |
|---|---|
NEXT_PUBLIC_API_URL |
Your Linkding API URL (e.g., https://linkding.example.com/api) |
NEXT_PUBLIC_API_TOKEN |
Your Linkding API token |
Customize themes in globals.css using tweakcn.
# Development with Turbopack
pnpm dev
# Production build
pnpm build
# Start production server
pnpm start
# Lint code
pnpm lint- Connect your repository to Vercel
- Set environment variables in Vercel dashboard
- Deploy automatically on every push
We welcome contributions!
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit changes:
git commit -m 'Add amazing feature' - Push to branch:
git push origin feature/amazing-feature - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
