Quant-UX - Prototype, Test and Learn
Quant UX is a research, usability and prototyping tool to quickly test your designs and get data driven insights. This repo contains the front end. You can find a working demo at https://quant-ux.com/#/
Develpment setup
npm install
Compiles and hot-reloads for development
npm run serve
Compiles and minifies for production
npm run build
Run your unit tests
npm run test:unit
Lints and fixes files
npm run lint
Installation
The easiest way to get your own installation up and running is using the prebuild Docker images by Brian McGonagill. You can find the repo and instructions at https://github.com/bmcgonag/quant-ux-docker/
Manual Installation
Quant-UX has two components. A front-end (this package) and a backend (qux-java). The front-end needs Node.js (> 12) installed. The backend needs a Mongo DB, a Mail Server (SMTP) and Java (> 1.8). The front-end comes with it's own mini web server, which also include a proxy that redirects all request to the correct backend.
Docker
The easiest way to get your own Quant-UX installation running is using the Docker images.
- Create a docker compose file (
docker-compose.yaml) and set the environment variables.
Make sure to update QUX_JWT_PASSWORD the ENV variable to make sure your installation is secure. Update QUX_HTTP_HOST, QUX_MAIL_USER, QUX_MAIL_PASSWORD and QUX_MAIL_HOST to sure correct mail handling
- Start the containers with the following command
docker compose upOne-Click deployment
Elestio
You can deploy an instance of Quant UX with few clicks and minimal configuration on cloud service provider of your choice.
Kubernets
You can find a kubernets configuration here https://github.com/engmsilva/quant-ux-k8s/tree/master/k8s
Backend
Install Mongo DB (> 4.4)
Install Java (1.8)
Checkout the backend
git clone https://github.com/KlausSchaefers/qux-java.git
This contains already a compiled version of the backend in the release folder
Edit the matc.conf file to setup the correct mongo and mails server details. More details can be found here: https://github.com/KlausSchaefers/qux-java
Start the server, or install as a service in Linux.
java -jar release/matc.jar -Xmx2g -conf matc.conf -instances 1
Front-end
Install Node.js (> 12)
Clone repo
git clone https://github.com/KlausSchaefers/quant-ux.git
- Install all dependecies:
npm install
- Build
npm run build
Config front-end
- Set the proxy server url as an ENV variable
export QUX_PROXY_URL=https://your.quant-ux.server.com // backend host
export QUX_WS_URL= wss.quant-ux.server.com // web socket server
- Start
node server/start.js
Reverse Proxy
Now you should have a running system. It is not secure yet. The best is to put both behind a NGINX reverse proxy, which handles SSL.
- https://www.scaleway.com/en/docs/tutorials/nginx-reverse-proxy/
You can use https://letsencrypt.org/ to create SSL certificates