Regisgen

License: GPL-3.0 View code at GitHub

Electronic Registry of General-Purpose Documents

This project was developed as part of the final degree work for my Degree in Computer Engineering at the International University of La Rioja (UNIR).

The project consists in a proof of concept of an electronic registry of general-purpose documents.

It makes use, among others, of the following technologies:
· Node.js, Express and MySQL (for the back-end part of the system; web and db servers).
· Bootstrap, AngularJS and Pug (for the front-end part of the system).
· Docker, Npm, Mocha.js and Chai.js (for the development process cycle; build, deploy, testing).

For start using this system, you only need to have Docker installed in your computer, nothing else. The docker-compose.yml file creates a bind mount directory that allows you to test anyting live, just change the code for the server or client and it will inmediately become available.

The data for the MySQL will persist between launches.

To bring the project up first install Docker and docker-compose, then run:

docker-compose up

The docker-compose.yml file routes port 80 on your host to the AngularJS app running on 3000 on the Docker environment, so once the system is up just go to http://localhost.

To bring it down:

docker-compose down

If you change your Dockerfile and must rebuild the MySQL, Node.js or AngularJS app images, run:

docker-compose up --build
  1. Starts a MySQL server container based on the official image,
  2. Starts a Node.js 10.8.0 app that waits for the database to become responsive, and run all migrations and seeds if necessary,
  3. Starts an AngularJS app (also based on Node.js 10.8.0). You only need to have Docker installed in your computer, nothing else.