papyrus

module
v0.0.0-...-a57c2c0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 7, 2022 License: BSD-3-Clause

README

Papyrus

Papyrus is a real-time collaborative Markdown editor and document repository with simple organization and project-based management. At Furqan Software we always wanted a simple way to collaborate on Markdown documents and Papyrus is our stab at fulfilling that need.

Obligatory GIF

As of writing this README.md, GopherGala 2016's 48 hours is almost up. The core collaborative editing functionality, namely operational transformation and other relevant constructs, have been implemented. The webapp is lacking some functionalities (e.g. removing a member that has been added to a project, deleting a document, etc). At this moment, you can login using a Google or GitHub account, create organizations, create projects, create documents and start editing them collaboratively in real-time.

Usage

Create a GOPATH for this project:

$ mkdir -p Papyrus
$ cd Papyrus
$ export GOPATH=`pwd`

Clone this repository:

$ mkdir -p src/github.com/gophergala2016/papyrus
$ cd src/github.com/gophergala2016/papyrus
$ git clone https://github.com/gophergala2016/papyrus.git .

Install dependencies:

$ go get -v ./...

Build papyrusd binary:

$ go build ./cmd/papyrusd

Set necessary environment variables (see env-sample.txt):

$ export ADDR=:5000
$ export SECRET=some-long-secret
$ export BASE=http://localhost:5000
$ export MONGO_URL=mongodb://localhost/papyrus
$ export GITHUB_CLIENT_ID=your-github-client-id-here
$ export GITHUB_CLIENT_SECRET=your-github-client-secret-here
$ export GOOGLE_CLIENT_ID=your-google-client-id-here
$ export GOOGLE_CLIENT_SECRET=your-google-client-secret-here

Make sure MongoDB is running and all necessary environment variables are set.

Run papyrusd:

./papyrusd

Open your web browser and navigate to localhost:5000.

Acknowledgements

  • CodeMirror - One fantastic text editor for the web
  • Code Commit - For their amazing explanation of operational transformation
  • OT Explained - That visualization!
  • golab - For the insights we got from its code

License

Papyrus is available under the BSD (3-Clause) License.

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL