Metadata-Version: 2.1
Name: archivy
Version: 0.0.5
Summary: Minimalist knowledge base focused on digital preservation and building your second brain.
Home-page: https://github.com/Uzay-G/archivy
Author: Uzay-G
Author-email: uzgirit@gmail.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Requires-Dist: appdirs
Requires-Dist: astroid (==2.4.2)
Requires-Dist: beautifulsoup4 (==4.9.1)
Requires-Dist: certifi (==2020.4.5.1)
Requires-Dist: chardet (==3.0.4)
Requires-Dist: click (==7.1.2)
Requires-Dist: decorator (==4.4.2)
Requires-Dist: elasticsearch (==7.7.1)
Requires-Dist: Flask (==1.1.2)
Requires-Dist: Flask-Scss (==0.5)
Requires-Dist: Flask-WTF (==0.14.3)
Requires-Dist: html2text (==2020.1.16)
Requires-Dist: idna (==2.9)
Requires-Dist: importlib-metadata (==1.6.0)
Requires-Dist: isort (==4.3.21)
Requires-Dist: itsdangerous (==1.1.0)
Requires-Dist: Jinja2 (==2.11.2)
Requires-Dist: lazy-object-proxy (==1.4.3)
Requires-Dist: Mako (==1.1.3)
Requires-Dist: Markdown (==3.2.2)
Requires-Dist: MarkupSafe (==1.1.1)
Requires-Dist: pathtools (==0.1.2)
Requires-Dist: pyScss (==1.3.7)
Requires-Dist: python-dateutil (==2.8.1)
Requires-Dist: python-dotenv (==0.13.0)
Requires-Dist: python-editor (==1.0.4)
Requires-Dist: python-frontmatter (==0.5.0)
Requires-Dist: PyYAML (==5.3.1)
Requires-Dist: requests (==2.23.0)
Requires-Dist: six (==1.15.0)
Requires-Dist: soupsieve (==2.0.1)
Requires-Dist: SQLAlchemy (==1.3.17)
Requires-Dist: tinydb (==4.1.1)
Requires-Dist: toml (==0.10.1)
Requires-Dist: typed-ast (==1.4.1)
Requires-Dist: urllib3 (==1.25.9)
Requires-Dist: validators (==0.15.0)
Requires-Dist: watchdog (==0.10.3)
Requires-Dist: Werkzeug (==1.0.1)
Requires-Dist: wrapt (==1.12.1)
Requires-Dist: WTForms (==2.3.1)
Requires-Dist: zipp (==3.1.0)

# 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](https://jeffhuang.com/designed_to_last/).
- 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)](https://github.com/Uzay-G/archivy/raw/master/archivy.gif)
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.
- Dark theme
- UI for grouping by tag and use NLP to automatically generate connections between posts

## Setup

### Local Setup

- Make sure your system has Python and pip installed.
- Install the python package with `pip install archivy`
- There you go! You should be able to start the app by running `archivy` in your terminal.


### With Docker

See the `docker` branch for details on setting things up with docker.

### Setting up Search

Archivy uses [ElasticSearch](https://www.elastic.co) to provide efficient full-text search.

Add these lines to your flaskenv:

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

Instructions to install and run the service are provided [here](https://www.elastic.co/guide/en/elasticsearch/reference/current/install-elasticsearch.html).


Append these two lines to your [elasticsearch.yml config file](https://www.elastic.co/guide/en/elasticsearch/reference/current/settings.html):

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


