roscopecoltran / papernet

Very simple tool to keep track of the papers you read.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build Status

Papernet

Papernet is a very simple tool to keep track of the papers you read.

Setup

Docker

Docker

Install pre-requisites:

brew install docker

Build Papernet Web-API & Front-end

make papernet.docker.all    	
make papernet.docker.dev.all	
make papernet.docker.dist.all

Docker-Compose

Install pre-requisites:

brew install docker-compose

Build Papernet Web-API & Front-end

make papernet.docker.compose.all     	# will build dev containers (alpine 3.6), build dist files and wrap them into small containers (scratch or alpine 3.6)
make papernet.docker.compose.dev.all 	# will build dev containers (alpine 3.6), shared locally generated output
make papernet.docker.compose.dist.all	# build dist files from dev containers, wrap them into small containers (scratch or alpine 3.6)

Go

Usual go installation (1.7.5)

I use the gvm, but you can install golang any way you prefer

bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
gvm install go1.7.5 --binary

then add the following to your bashrc (or the equivalent for your terminal)

source $HOME/.gvm/scripts/gvm
gvm use go1.7.5
export GOPATH=/path/to/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

Dependencies

The dependencies are handled with godep:

go get -u github.com/tools/godep
dep ensure

Auth

Key file

You need to generate your shared secret for the authentication. You can use this site to do so: https://mkjwk.org/, with the following settings: image You decide what you want to use as key ID

Google oauth

If you want to use Google to handle the auth, you need credentials for the project. Follow the instructions here: https://developers.google.com/identity/protocols/OAuth2, to create those credentials.

If you do not want to use google for oauth, you can simply set enabled=false in the configuration file and use the simple email/password login system. It does not include email confirmation or password reset, but it will avoid you having to register Papernet on Google.

Web server

To start the web server, you have to create the data folder, and setup the index:

mkdir data
go run cmd/cli/*.go index create --index=data/papernet.index --mapping=bleve/mapping.json

Now that everything is ready, you can start the server:

go run cmd/web/main.go

Front-end

This repository contains the backend of the Papernet project, for the front-end check out https://github.com/bobinette/papernet-front

You can also pull it using the git subtree command into the ./contrib/webui folder:

make papernet.webui.pull  	# add or pull subtree if already exists locally
make papernet.webui.clean 	# remove all dist files generated into the ./dist/front/content folder.
make papernet.webui.remove	# remove all Papernet Front files from your local repository clone

Ops

This repository contains the OPS helpers for the Papernet project, for the OPS helpers check out https://github.com/bobinette/papernet-ops

You can also pull it using the git subtree command into the ./contrib/ops folder:

make papernet.ops.pull    	# add or pull subtree if already exists locally
make papernet.webui.remove	# remove all Papernet OPS files from your local repository clone

About

Very simple tool to keep track of the papers you read.

License:MIT License


Languages

Language:Go 43.4%Language:JavaScript 33.3%Language:Makefile 10.8%Language:Shell 8.0%Language:CSS 3.1%Language:Smarty 0.8%Language:HTML 0.3%Language:Ruby 0.2%