{"repo":"mkoppmann/eselsohr","free":true,"listed":false,"github":"https://github.com/mkoppmann/eselsohr","clone":"git clone https://github.com/mkoppmann/eselsohr.git","description":"Eselsohr is a self-hostable bookmark manager for storing web articles.","language":"Haskell","stars":10,"topics":["haskell","self-hosted","ocap","object-capabilities","hacktoberfest","bookmark","three-layer-cake","webkey","principle-of-least-privilege","principle-of-least-authority"],"license":"EUPL-1.2","category":"self-hosted-apps","readme_excerpt":"Eselsohr Eselsohr is a self-hostable bookmark manager for storing web articles. Read them later or share access to your collection. It’s still in an early stage of development and not ready for production. Build Eselsohr Pre-built binary releases are provided as CI artifacts. To build the project manually, you’ll need GHC and the Cabal build tool. Download this repository and change your working directory into it. You can then install the executable with: By default, the resulting binary gets stored in /.cabal/bin/eselsohr-exe . Nix support If you have Nix installed with Flakes support you can enter the development environment by running nix develop . Deploy Eselsohr Eselsohr is distributed as a single binary and does not have any other dependencies. It can be configured by using env vars or by using a configuration file ( eselsohr --config-file /path/to/file ). The folder with the static resources is also required. By default it looks for an .env file and a static/ directory in the current working directory. The following values can be set: DATA FOLDER : File path where data is getting persisted. Defaults to XdgData. BASE URL : Base URL to generate HTML links. Defaults to http://localhost . LOG LEVEL : Level for the built-in logger. Defaults to Error. PORT : Port number on which the web server will listen. Defaults to 6979 . LISTEN ADDR : Address where the web server will listen. Defaults to 127.0.0.1 . HTTPS : Send HSTS HTTP header. Automatically enabled when X-Forwarded-Pr","default_branch":null,"files":null,"tree":[],"storefront":"/r/mkoppmann","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/mkoppmann/eselsohr/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}