A standalone webapp to collect and organize user feedback. Server API and web UI are packed into single Dockerfile.
- [WIP] Upvote enabled discussion forum
- 1:1 private inquiry
- Support oauth2 login (google)
- Docker
- Docker Compose
- Mysql (recommend use your own database)
config.yaml
app:
domain: your_feedback.domain_name.com
jwt:
# 512-bit recommended
# https://www.allkeysgenerator.com/Random/Security-Encryption-Key-Generator.aspx
secret: {your_jwt_secret}
# access token cookie name
accessToken: USFD_TOKEN
# refresh token cookie name
refreshToken: USFD_RF
smtp:
host: smtp.host.com
port: 587
username: smtp_username
password: smtp_password
oauth:
google:
clientId: {{google_client_id}}
clientSecret: {{google_client_secret}}
version: '2'
services:
mysql:
image: mysql
command: mysqld --default-authentication-plugin=mysql_native_password
volumes:
- ./data:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: userfeedback
MYSQL_DATABASE: userfeedback
MYSQL_USER: userfeedback
MYSQL_PASSWORD: userfeedback
app:
restart: always
image: line/abc-user-feedback:main
ports:
- '80:3000'
volumes:
- ./config.yaml:/usr/app/config.yaml
environment:
DB_CONNECTION_STRING: "mysql://userfeedback@userfeedback/userfeedback"
depends_on:
- mysql
if you have your own mysql database, then remove mysql service and using only app service
version: '2'
services:
app:
restart: always
image: line/abc-user-feedback:main
ports:
- '80:3000'
volumes:
- ./config.yaml:/usr/app/config.yaml
environment:
DB_CONNECTION_STRING: "{{mysql_connection_string}}"
docker-compose pull
docker-compose up -d
docker-compose logs app
then you can find message like
app_1 | Application is running on: http://[::1]:3000
WIP
WIP