lhl / archivy

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Archivy

Archivy is a self-hosted knowledge repository that allows you to safely preserve useful content that contributes to your knowledge bank.

Features:

  • If you add bookmarks, their webpages contents' will be saved to ensure that you will always have access to it, in sync with the idea of digital preservation.
  • Allows you to sync up with Pocket to gather bookmarks from there too.
  • Everything is a file! For ease of access and editing, all the content is stored in markdown files with yaml front matter.
  • Extensible search with Elasticsearch and its Query DSL

demo (low res) Upcoming:

  • Integrations with HN, Reddit, and many more.
  • Add submodules for digital identity so archivy syncs to your hn upvoted posts, reddit saved, etc...
  • Option to compile data to a static site that can be deployed.

Setup

  • Make sure your system has Python installed.
  • Clone the repository.
  • cd into the project directory.
  • create a virtual env by running python3 -m venv venv/.
  • run pip install -r requirements.txt or pip3.
  • create a .flaskenv file and add FLASK_APP=archivy.py to it
  • execute the start.sh script
  • see below for setting up search functionality

Setting up Search

Archivy uses ElasticSearch to provide efficient full-text search.

Add these lines to your flaskenv:

ELASTICSEARCH_ENABLED=1
ELASTICSEARCH_URL=http://localhost:9200

Instructions to install and run the service are provided here.

Append these two lines to your elasticsearch.yml config file:

http.cors.enabled: true
http.cors.allow-origin: "http://localhost:5000"

About


Languages

Language:Python 55.4%Language:HTML 31.1%Language:JavaScript 6.2%Language:CSS 5.7%Language:Shell 1.5%