Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bookmark-org/bookmark
Bookmark.org digital archive service
https://github.com/bookmark-org/bookmark
archive bitcoin elixir lightning-address lightning-network nip05 nostr
Last synced: 3 days ago
JSON representation
Bookmark.org digital archive service
- Host: GitHub
- URL: https://github.com/bookmark-org/bookmark
- Owner: bookmark-org
- License: mit
- Created: 2023-01-11T18:19:33.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-01-03T18:54:36.000Z (10 months ago)
- Last Synced: 2024-08-02T18:43:35.861Z (3 months ago)
- Topics: archive, bitcoin, elixir, lightning-address, lightning-network, nip05, nostr
- Language: Elixir
- Homepage: https://bookmark.org/
- Size: 3.2 MB
- Stars: 16
- Watchers: 1
- Forks: 4
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Bookmark
This repository contains the code for [bookmark.org](https://bookmark.org/), an online service that allows users to archive and organize important web links.
## Setup
1. Install [Docker](https://docs.docker.com/engine/install/). Don't forget to perform the [Docker post-installation](https://docs.docker.com/engine/install/linux-postinstall/).
2. Optional: Create the following `.env` file in the root folder of this project (only required for archive summary generated with AI and custom delay in bulk archiving)
```
OPENAI_API_KEY=
# Expressed in milliseconds
BOOKMARK_ARCHIVE_DELAY=1000
```3. Optional: Login to the Docker registry (only required for Docker image pushes)
```
$ docker login -u bookmarkorg -p
```## Basic Commands: Development
Run the app:
```
# Install Elixir dependencies
mix deps.get# Run the Elixir app locally + DB and an Archivebox server in containers
make dev
```Now you can visit [`localhost:4000`](http://localhost:4000)
Stop the app:
```
make stop # Terminates the execution of all containers
```Push image to deployment:
```
make push-images
```## Basic Commands: Production
1. Download the latest tagged image from the Docker registry
```
make pull-images
```2. Stop old containers
```
make stop
```3. Run the Docker project
```
make prod
```Now you can visit [`localhost:4000`](http://localhost:4000)
## Clean containers
After using the containers, you can destroy them along with their volumes (which contain the archives) using `make clean`.
## Available tasks
You can see available tasks (build, dev, prod, etc.) and what they do with `make`.