Feedbacker-Forum is a modern, open-source automated deployment pipeline solution for developers to help gather feedback easily. In other words, the developer can trigger a deployment process that ships a version of the current code for the product and gets a simple “feedback-able“ link in return.
This link can be shared to peers that the developer craves feedback from. The developer can then create surveys, receive answers and discuss the live UI with peers. Feedbacker-Forum also supports creating "feedback-able" links for existing external websites.
The application consist of a frontend, backend, proxy and database. The different parts can either be setup manually, or run together using containers.
The application is built using Node.js, currently actively tested with version 10.13. The application also requires go version 1.11 for running the proxy. Instances are run in containers with docker.
The simple manual setup requires the following steps. Further run configurations can be found in docs/getting-started.md.
# Install the client and build the development bundle
cd client
npm install
npm run build:dev
# Build the node-runner image
cd ../docker
docker build -t node-runner node-runner
# If you want to build the proxy
cd ../proxy
go build
# Install the API server and run it
cd ../server
npm install
npm start
For further documentation see docs/getting-started.md.
cd docker/development
docker-compose up --build
Now you can for example open http://localhost:8080/test.html to see the API in action.
The application consist of two separate main parts - the dashboard view for the developers, and the feedbacker view for giving feedback.
The dashboard view is for developers to create, remove and manage instances. After creating an instance the developer receives a simple link that can be shared, so that people easily can view the instance and give feedback. Screenshot
The feedbacker view is where the users can use, view and comment on the UI. It consists of two main parts, the survey panel and the comment panel. Screenshot
A brief list of supported features
- Automatically deploy your app from git: both public repos and private GitHub repos supported
- Alternatively use an already live site, simply submit the url
- Easily discuss and cultivate ideas with threaded discussion, no blocking signup required
- Tag specific elements to link your comment to a specific part of the UI
- Comment anonymously on instances if you don't want to share your identity
- Specify the feedback received by creating surveys with free form or multiple choice questions
- Protect sensitive deployments with a passphrase
- Boost productivity by integrating Feedbacker-Forum to Slack with a SlackBot
The application is still in a quite early development stage and is actively being developed. Changes or additions can be proposed by creating issues or pull requests on GitHub. Running a local development version can be set up as shown in Setting Up.
The application has style checking using eslint with a slightly modified airbnb-config.
# Run style checking for the frontend
cd client/
npm run lint
# Then run style checking for the backend
cd ../server/
npm run lint
Tests are run separately for frontend and backend. Both sets of tests can be automatically run with npm.
# Run tests for frontend
cd client/
npm run test
# Then run tests for backend
cd ../server/
npm run test:api
The frontend test suite is done with jest and enzyme. The backend tests are currently only for the api-endpoints and are run with mocha.
This application was started during the course CS-C2130 Software Project at Aalto University. The application was supported by Sievo.
The application is licensed under the MIT license, see LICENSE for more details.
- Better support for runners
- Capturing device specifications (screen, os, user agent)
- Integration to project management tools such as Trello, Jira & YouTrack
- Simulating events (showing comments on hidden elements)
- Support for browsers that don't support shadowDOM