👛 a very simple REST API for saving online articles to read later
Go to file
reese sapphire e8cae34bcb update gitignore 2024-02-04 19:44:10 -06:00
embed add usage instructions to index page 2024-02-04 19:43:37 -06:00
extra prettify, convert line endings to unix format 2023-05-21 15:07:33 -05:00
.editorconfig embed static files, serve at /* 2023-12-28 16:27:18 -06:00
.gitignore update gitignore 2024-02-04 19:44:10 -06:00
LICENSE.txt start of golang rewrite 2023-12-27 16:49:11 -06:00
config.go add response template, language config option 2024-01-27 22:08:04 -06:00
flake.lock fix nixos module. ready for v2 release 2024-01-01 17:00:15 -06:00
flake.nix flake: bump version, use fetchgit, fix deprecated string type 2024-01-03 11:39:48 -06:00
go.mod start of golang rewrite 2023-12-27 16:49:11 -06:00
go.sum start of golang rewrite 2023-12-27 16:49:11 -06:00
main.go add usage instructions to index page 2024-02-04 19:43:37 -06:00
readme.md add Atom XML endpoint 2024-01-02 13:45:43 -06:00
roadmap.md add response template, language config option 2024-01-27 22:08:04 -06:00

readme.md

reticule

Reticule is an extremely minimal, self-hosted alternative to bookmarking services like Pocket/Instapaper/Wallabag that relies on a feed reader of your choice (like Miniflux, Vore, Newsboat, and others) to view your saved links.

Installation

Flakes

Currently the only supported installation method is with Nix Flakes. This flake provides the reticule package and a module for using it declaratively with NixOS. Here is an example flake.nix that you can copy from if your system is configured with Flakes:

{
  inputs = {
    reticule.url = "git+https://git.cyberia.club/reese/reticule.git";
  };
  
  outputs = { reticule, ... }@inputs: {
    nixosConfigurations.hostname = nixpkgs.lib.nixosSystem rec {
      modules = [
        reticule.nixosModules.reticule
      ];
    };
  };
}

The possible configuration values can be found here.

From source

You can also download the source code from this repository and build it like any other Go binary. Once built, see ./reticule -h for usage info.

Usage

Web browser bookmarklet

Create a new bookmark in your browser with the name "Save to Reticule" and set the URL to the following:

javascript:(()=>{window.open("<SERVER_ADDRESS>/add?key=<API_KEY>&url="+encodeURIComponent(location),"_blank","noreferrer,noopener")})()

Important: Make sure you change <SERVER_ADDRESS> and <API_KEY> to the values you configured your server with.

Go to a webpage that you want to save, click the bookmarklet, and voila! It should open a new tab with a message that it was saved successfully, which you can then close.

Android

  1. Install HTTP Shortcuts from F-Droid or the Play Store.
  2. Download reticule_http_shortcut.json from this repo to your device.
  3. Open HTTP Shortcuts, tap the vertical 3 dots in the top right corner, tap "Import/Export", then tap "Import from file". Select the json file you downloaded earlier.
  4. Go back to the main page, tap the 3 dot button again, then tap "Variables", and edit the values of reticule_instance and reticule_api_key to match those of your instance.
  5. Try using the share button in an app. A new item "Send to..." with the HTTP Shortcuts icon should appear on the share sheet. You can also save an article by tapping the shortcut inside the HTTP Shortcuts app itself and pasting the URL.

RSS feed reader

The RSS feed is available at /feed?key=<API_KEY>. Add your key, or remove everything after ? if you set public to true, and then add it to your feed reader of choice. If it doesn't work in your reader, open an issue and I will try my best to resolve it!

Acknowledgements

The purple coin purse favicon comes from OpenMoji, which is licensed under CC BY-SA 4.0.