Daniel31x13 / link-warden

A self-hosted bookmark + archive manager to store your useful links.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LinkWarden

A place for your useful links.

LinkWarden.png

Twitter Follow

GitHub GitHub top language GitHub last commit Netlify GitHub Repo stars

Demo (v1.0.0) | Intro & Motivation | Features | Roadmap | Setup | Development

Intro & Motivation

LinkWarden is a self-hosted, open-source bookmark + archive manager to collect, and save websites for offline use.

The objective is to have a self-hosted place to keep useful links in one place, and since useful links can go away (see the inevitability of Link Rot), LinkWarden also saves a copy of the link as screenshot and PDF.

Features

  • πŸ“· Auto-capture a screenshot and PDF from each website.

  • πŸ”₯ Sleek, minimalist design.

  • 🌀 Dark/Light mode support.

  • ↔️ Responsive design.

  • πŸ”Ž Search, filter and sorting functionality.

  • πŸš€ Lazy loading (for better performance).

  • 🏷 Set multiple tags to each link.

  • πŸ—‚ Assign each link to a collection where we can further group links.

Installation

Using Docker Compose V2 (Recommended)

  1. Make sure docker is installed.

  2. Clone this repository.

  3. Head to the main folder and run docker compose up -d.

The app will be deployed on port 3000.

Configuration

To configure the app create a .env file (in the main folder), here are the available variables:

CLIENT_PORT=2500           # Default: 3000
API_PORT=5700              # Default: 5500
API_ADDRESS=192.168.1.14   # Default: localhost

If you want to use this app across the network set API_ADDRESS as the computer (where LinkWarden is hosted) IP address.

Manual Setup

  1. Make sure your MongoDB database and collection is up and running.

  2. Edit URI, Database name and Collection name accordingly.

  3. [Optional] If you want to use this app across the network change API_HOST address with the computer IP and API port.

  4. Head to the main folder using terminal and run: (cd api && npm install) && npm install --legacy-peer-deps for the dependencies.

  5. Run npm start to start the application.

LinkWarden Development

All contributions are welcomed! But first please take a look at how to contribute.

For questions/help, feature requests and bug reports please create an issue (please use the right lable).

About

A self-hosted bookmark + archive manager to store your useful links.

License:MIT License


Languages

Language:JavaScript 76.2%Language:CSS 19.4%Language:HTML 2.4%Language:Dockerfile 1.7%Language:SCSS 0.2%Language:Shell 0.1%