A local-first and universal knowledge graph, personal search engine, and workspace for your life.
[TO BE UPDATED]
Quick links:
- You'll need the custom dgraph binary from https://github.com/unigraph-dev/dgraph. Follow the instructions carefully, but the build process would just take a couple of minutes.
- At the project root run
yarnand thenyarn build-depsto fetch dependencies and build common files needed to build backend and frontend. - Put your dgraph binary in a folder at
/opt/unigraph, then run./scripts/start_server.sh(alternatively you can use./scripts/start_server.sh -d "<data directorty>" -b "<dgraph binary location>"). - Run
yarn explorer-startto start the web frontend. If you want to use electron instead, runyarn electron-startafter.
Note: If you want to use third-party API integrations, follow the steps below to put your API keys.
Note: If the initial server setup failed, you'll need to manually remove p/, w/, zw/ (dgraph data) from the data directory (normally /opt/unigraph)
This repository contains all relevant source code for Unigraph:
- packages/
- unigraph-dev-backend/ : Unigraph local backend in Node.js.
- unigraph-dev-common/ : shared data and utilities between backend and frontend.
- unigraph-dev-explorer/ : Unigraph frontend in React.
- default-packages/ : schema, data and code declarations for packages providing default functionalities. If you are looking to build packages, you can study example projects here.
MIT License.
This page will be updated in a few days, but please join the Discord community in the mean time to talk about contributing, or open a GitHub issue if you want to help!
To use third-party API integrations, obtain desired API keys and put them in this format in a file named secrets.env.json before starting the server:
{
"twitter": {
"api_key": "abc",
"api_secret_key": "abc",
"bearer_token": "abc"
},
"reddit": {
"client_id": "abc"
},
"openai": {
"api_key": "abc"
},
"google": {
"client_id": "abc",
"client_secret": "abc"
}
}