el.xwx.moe/README.md

82 lines
3.4 KiB
Markdown
Raw Normal View History

2022-06-08 13:28:44 -05:00
<div align="center">
<h1>
LinkWarden
2022-06-09 14:31:36 -05:00
2022-06-08 13:28:44 -05:00
<sub>A place for your useful links.</sub>
2022-06-09 15:17:00 -05:00
<img src="assets/LinkWarden.png" alt="LinkWarden.png" width="500px"/>
2022-06-14 13:46:33 -05:00
2022-06-14 14:50:36 -05:00
<a href="https://twitter.com/Daniel31X13" target="_blank" rel="noopener noreferrer"><img alt="Twitter Follow" src="https://img.shields.io/twitter/follow/Daniel31X13?label=twitter&amp;style=social"></a>
2022-06-14 13:46:33 -05:00
2022-09-20 02:51:28 -05:00
![GitHub](https://img.shields.io/github/license/daniel31x13/link-warden?style=flat-square) ![GitHub top language](https://img.shields.io/github/languages/top/daniel31x13/link-warden?style=flat-square) ![GitHub last commit](https://img.shields.io/github/last-commit/daniel31x13/link-warden?style=flat-square) ![Netlify](https://img.shields.io/netlify/31890116-669c-4b1c-844e-fa427503d8bf?style=flat-square) ![GitHub Repo stars](https://img.shields.io/github/stars/daniel31x13/link-warden?style=flat-square)
2022-06-10 01:59:27 -05:00
2022-06-08 13:28:44 -05:00
</h1>
2022-05-10 10:47:14 -05:00
2022-06-29 21:14:30 -05:00
[Demo (v1.0.0)](https://linkwarden.netlify.app/) | [Intro & Motivation](https://github.com/Daniel31x13/link-warden#intro--motivation) | [Features](https://github.com/Daniel31x13/link-warden#features) | [Roadmap](https://github.com/Daniel31x13/link-warden/wiki#project-roadmap) | [Setup](https://github.com/Daniel31x13/link-warden#setup) | [Development](https://github.com/Daniel31x13/link-warden#linkwarden-development)
2022-06-09 14:31:36 -05:00
2022-06-08 13:28:44 -05:00
</div>
## Intro & Motivation
2022-06-16 04:13:44 -05:00
2022-06-08 13:28:44 -05:00
**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](https://www.howtogeek.com/786227/what-is-link-rot-and-how-does-it-threaten-the-web/)), LinkWarden also saves a copy of the link as screenshot and PDF.
## Features
2022-06-16 04:13:44 -05:00
2022-06-24 07:48:23 -05:00
* 📷 Auto-capture a screenshot and PDF from each website.
2022-06-21 14:50:22 -05:00
2022-06-29 21:14:30 -05:00
* 🔥 Sleek, minimalist design.
2022-06-21 14:50:22 -05:00
* 🌤 Dark/Light mode support.
* ↔️ Responsive design.
* 🔎 Search, filter and sorting functionality.
2022-06-29 21:14:30 -05:00
* 🚀 Lazy loading (for better performance).
2022-06-21 14:50:22 -05:00
* 🏷 Set multiple tags to each link.
2022-06-08 13:28:44 -05:00
2022-06-23 06:54:08 -05:00
* 🗂 Assign each link to a collection where we can further group links.
2022-06-22 03:41:13 -05:00
2022-06-20 12:22:22 -05:00
## Installation
2022-06-16 04:13:44 -05:00
### Using Docker Compose V2 (Recommended)
2022-06-20 13:57:20 -05:00
2022-06-29 14:02:19 -05:00
1. Make sure docker is installed.
2022-06-20 13:57:20 -05:00
2. Clone this repository.
3. Head to the main folder and run `docker compose up -d`.
2022-06-20 13:57:20 -05:00
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
2022-07-19 20:23:24 -05:00
API_PORT=5700 # Default: 5500
API_ADDRESS=192.168.1.14 # Default: localhost
```
2022-07-19 20:23:24 -05:00
> If you want to use this app across the network set `API_ADDRESS` as the computer (where LinkWarden is hosted) IP address.
2022-06-20 12:22:22 -05:00
2022-06-21 00:10:19 -05:00
### Manual Setup
2022-06-16 04:13:44 -05:00
2022-06-09 01:09:55 -05:00
1. Make sure your MongoDB database and collection is up and running.
2022-05-11 05:49:39 -05:00
2022-06-21 10:53:17 -05:00
2. Edit [URI, Database name and Collection name](api/config.js) accordingly.
2022-05-11 05:49:39 -05:00
2022-06-21 10:53:17 -05:00
3. [Optional] If you want to use this app across the network change [`API_HOST`](src/config.js) address with the computer IP and API port.
2022-05-11 05:49:39 -05:00
2022-06-21 10:53:17 -05:00
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.
2022-06-09 01:09:55 -05:00
## LinkWarden Development
2022-06-16 04:13:44 -05:00
2022-06-20 11:10:59 -05:00
All contributions are welcomed! But first please take a look at [how to contribute](.github/CONTRIBUTING.md).
2022-06-09 01:09:55 -05:00
2022-06-09 15:17:00 -05:00
> **For questions/help, feature requests and bug reports please create an [issue](https://github.com/Daniel31x13/link-warden/issues) (please use the right lable).**