/link-warden

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

Primary LanguageJavaScriptMIT LicenseMIT

LinkWarden

A place for your useful links.

LinkWarden.png

Twitter Follow

GitHub GitHub top language GitHub commit activity GitHub last commit Netlify GitHub Repo stars

Demo | 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

  • Sleek, minimalist design.
  • Save a copy of each link as screenshot and PDF.
  • Dark/Light mode support.
  • Responsive design.
  • Search, filter and sorting functionality.
  • Lazy loading support (for better performance).
  • Set multiple tags to each link.

Also take a look at our planned features in the project roadmap section.

Installation

Using Docker Compose (Recommended)

  1. Make sure Docker docker is installed.

  2. Clone this repository.

  3. [Optional] If you want to use this app across the network change REACT_APP_API_HOST in docker-compose.yml with the computer IP and API port.

  4. head to the main folder and run docker compose up -d.

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).