topicquests / tqks-featherweight-prototype

Quasar Feathers Structured Conversation
Apache License 2.0
16 stars 9 forks source link

Topic Quests FeatherWeight Prototype

Quasar Feathers Structured Conversation

A Simple experiment in Structured Conversation.

Background

Given that this platform relies on both Feathers.js and Quasar-Framework, it's useful to install both as follows

Preparation

Install Node 10 on a *nix environment. We haven't tested this on Windows.

Automatic Development Setup

We've created a Plume, a script to help you get set up. Just open a terminal, navigate to the root of the project and run this command:

> ./bin/plume/setup.sh

Follow the directions. If you have any difficulty, feel free to contact @ncko.

Manual Development Setup

Assuming your name is Barney :/

Clone config/dev.json

cp api/config/dev.json api/config/barney.json

Git ignore your file

cat "api/config/barney.json" > .gitignore

Emails

In order to send emails, you need an SMTP server. You can use your personal Gmail too.

You can also run a local SMTP server by running this command:

docker run -p 1025:1025 -p 8025:8025 mailhog/mailhog

We prefer that you get a free account from: https://mailtrap.io/register/signup

Once you get your API keys, populate them in config/barney.json

Database

You can use your own MongoDB instance that you can pull using Docker.

docker pull mongo
docker run --name tq-mongo -p 27017:27017 mongo:latest

Update mongodb and emailconfig in /api/config/barney.json

Make yourself admin

In config/overrides.json, change the adminEmail to your main test account email.

Building

Two terminals.

Running

Production Mode

npm install -g pm2;

quasar build;
pm2 start ecosystem.config.js;

Docker

docker-compose up

Heroku

  1. Create account
  2. Install CLI:
    curl https://cli-assets.heroku.com/install.sh | sh
  3. heroku login --interactive
  4. heroku apps:create tqbarney
  5. Add Mailgun and Mlabs free plans
  6. heroku config:Set NODE_ENV=heroku
  7. git push heroku master

Demo: http://tqmaster.herokuapp.com

Environmental Overrides

Pass the following env vars to override initial behavior

IS_PRIVATE_PORTAL=false,
REQUIRES_INVITE=false,
ADMIN_EMAIL="sue@sixpack.com"

Other than Localhost

Made from quasar-feathers-tutorial