Skip to content

Development

This section explains how you can get involved in the development of writerey and set up a local development environment.

Just want to use the app? Go to the installation guide to learn how to set it up for end users.

Set up a development environment (Windows)

Please note that you need Python 3 and Node.js (>= 12) installed on your machine.

  • Clone the repository and navigate into the repository via CLI
  • Install JS dependencies with npm i
  • Install pipenv with pip install pipenv
  • Install python dependencies with pipenv install
  • Open a terminal and start the server with npm run flask
  • Open another terminal and start the ui with ng serve (if that is not working, use npm run ng serve)
  • Ready! Visit localhost:4200 to open up the app

Set up a development environment (Unix)

If not already available, install pip, node.js (>= 12) and npm: sudo apt install git nodejs npm python3-pip

  • Clone the repository and navigate into the repository via terminal
  • Install JS dependencies with npm i
  • Install pipenv with pip3 install pipenv
  • Install python dependencies with ~/.local/bin/pipenv install
  • Open a terminal and start the server with npm run unix:flask
  • Open another terminal and start the ui with ng serve (if that is not working, use npm run ng serve)
  • Ready! Visit localhost:4200 to open up the app

Note: If you are a unix person and think this can be done easier, we'd highly appreciate your feedback! Open up an documentation issue on Github and tell us how we can do better.

Git features as part of the app

Please be aware that some features currently don't work like expected in development environment. Since the project itself is managed by git, the sub folder is ignored to not commit test data, which leads to some conflicts when trying to commit as part of the application. To have a real test environment, please build the app as executeable.

Nonfunctioning are currently (list is maybe incomplete):

  • Deletion
  • Snapshotting
  • Tagging

Build a executable for your environment

writerey is build with electron-forge. To build a executable for your target system, do the following:

  • Clone the repository and navigate into the repository via CLI
  • Install JS dependencies with npm i
  • Trigger building and packaging with npm run build-make

If you want to build the application for a non-windows platform, please refer to the electron-forge documentation to configure a appropiate maker.

Build documentation

This very documentation is build via MkDocs. Getting it running locally only requires a few steps.

  • Make sure you have python dependencies installed
  • cd documentation/
  • mkdocs build

For developing the documentation, run cd documentation/ && mkdocs serve to start a hot reload server.