Emendare is a citizen, non-profit, distributed and open-source initiative. It helps groups share and improve texts iteratively.
The tool mimics the parliament process, allowing all participants to suggest alterations to a text, called amendments.
All groups seeking to organize themselves horizontally, be they companies, associations, political movements or local authorities, are welcome to use Emendare.
The current technical stack of Emendare is :
TypeScript as the main language for the entire project
-
Client side :
-
Instance side :
-
Register side :
These instructions explain how to run a local instance of Emendare for development, but also how to build the application for production.
To set up the project, you must have Node.js installed. To install Node.js, please refer to the Node.js official documentation
You can optionnaly install Docker-Compose to start more easily the Mongo database. To install Docker-Compose, please refer to the Docker Compose official documentation
The installation of the project requires 2 steps: a configuration of the server and another of the client.
The first step will be to create the MongoDB database. To do so, just create a docker container with a Mongo image, following the steps below.
cd server/
then create the Mongo image :
docker-compose build
This 'build' command must only be entered during installation.
you can finaly run the container :
docker-compose up
The database is accessible at the following address: localhost: 27017 / emendare.
This registry behaves like a service registry, where any instance of Emendare can register. It will permit to switch easly between different instances.
First install all the dependencies :
npm install
Then start the server either for production :
npm run build
npm start
Or for development (run these commands in two separates terminals) :
npm run dev
First install all the dependencies :
npm install
Then start the server either for production :
npm run build
npm start
Or for development (run these commands in two separates terminals) :
npm run dev
These commands will start the server at the following address : localhost:3030
To run the client, the first step will be to install the dependencies.
cd client/
npm install
The client can now be started in two modes :
- in development :
npm run dev
- in production :
npm run build
npm start
The app.js server will allow http redirection to https as well as Gzip compression of the application files.
To contribute to this project please refer to Guide for contributors