The open-source Document Lifecycle Management platform.
Wraft is an open-source content authoring platform that's helps businesses produce their most important set of documents. Wraft helps author structured business content. From official letters to contracts, and beyond.
Our goal is to give people complete control over their most important documents, from drafting to collaborating and distributing.
Wraft is built on top of open formats, using markdown and JSON. This means your content is always accessible and future-proof.
- Elixir 1.14
- Erlang/OTP 26.0
- Postgres
- Minio - S3 compatible object storage
- Pandoc
- ImageMagick
- Latex
.tools_version will have the exact versions defined in it.
$ git clone https://github.com/wraft/wraft.git
$ cd wraftAs these 2 are defined in the .tool_versions, asdf will install the right versions with the following set of commands:
Please refer the given link for the installation of asdf-version-manager.
Add the following plugins to your asdf for elixir and erlang:
$ asdf plugin add erlang https://github.com/asdf-vm/asdf-erlang.git
$ asdf plugin add elixir https://github.com/asdf-vm/asdf-elixir.git$ asdf installinotify-tools
- command-line utilities to monitor file system activity
In macOS:
$ brew install inotify-toolsIn Linux:
$ sudo apt install inotify-toolsSelect your OS from the options here and follow the instruction to install the latest version of postgres. Check your installation using:
$ postgres -VTest your connectivity:
$ psql -h 127.0.0.1 -p 5432 -U postgres postgresDownload the latest version of minio from here and follow the instructions to install based on your OS.
Run the following command from the system terminal or shell to start a local MinIO instance using the ~/minio folder. You can replace this path with another folder path on the local machine:
$ minio server ~/minio
$ minio server ~/minio --console-address :9001Open http://127.0.0.1:9000 in a web browser to access the MinIO Console.
The easiest way to install it on OSX is via brew:
$ brew install pandocFor Linux machines, follow the instructions below.
- Download the pandoc package that suits your device here
- To install the deb:
$ sudo dpkg -i $DEBwhere $DEB is the path to the downloaded deb.
These instructions are taken from Official Pandoc Documentations. You may refer if the official documentation if you have any doubts.
To use ImageMagick, install the ImageMagick distribution from here appropriate to your OS.
For linux:
sudo apt update
sudo apt install imagemagickTo use Latex in OSX, install the MacTex Distribution. You can download MacTex here. Choose the correct version that supports your device, download and install. Latex editor comes with the distribution.
In Linux machines, we suggest to use Tex Live LaTeX distribution. Easiest way to install Tex Live distribution in
Linux/Ubuntu is to use apt-get.
$ sudo apt-get install texlive-fullIn case you need latex editor, type in:
$ sudo apt-get install texmakerTo start your Wraft app:
Load env variables
Make a .env.dev file in the root directory and add the environment variables.
Refer .env.example for the list of variables.
Source the environment variables from the file and start the server.
$ mv .env.example .env.dev
$ source .env.devSetup the project
$ mix setupStart Phoenix endpoint
- With interactive shell
$ iex -S mix phx.server- Without interactive shell
$ source .env.dev && mix phx.serverNow you can visit localhost:4000 from your browser.
To get the API documentation, go here.
Clone the frontend repository separately.
$ cd ..
$ git clone https://github.com/wraft/wraft-frontend.git
$ cd wraft-frontendRefer the README.md in the frontend repository for the setup.
The default username and password
username: [email protected]
password: passwordThe easiest way to get started with wraft-backend is using Docker by running the following command.
$ git clone https://github.com/wraft/wraft.git
$ cd wraft
# Copy the example env to your own file and edit it
$ cp .env.example .env.dev
#Load the development environment variables
$ source .env.dev
# Start the Docker containers
$ docker-compose up -d
# Visit localhost:3200
$ http://localhost:3200The default username and password
username: [email protected]
password: passwordWraft is open-source software licensed under the AGPLv3.