- Notifications
You must be signed in to change notification settings - Fork1
The repository for the Spindle feedback tool.
License
wearespindle/flindt
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation

A feedback tool for Holacracy companies.
Sparks conversations since 2016
Active / maintained.
At the moment this project a MVP (Minimum Viable Product) and is currently Docker-based only.
However, the frontend is meant to be run outside of Docker. You can find the repo for the front end athttps://github.com/wearespindle/flindt-front-end
See theCONTRIBUTING.md file on how to contribute to this project.
See theCONTRIBUTORS.md file for a list of contributors to the project.
Check out theSphinx docs for detailed information
- You have git installed.
- You haveDocker anddocker-compose installed.
- To be able to give and receive feedback you need an active account atGlassFrog.
- For OAuth2 authentication, a Google Developer-account is preferred.
- For notifications an account atSlack.
A quickstart for a local development.
Pull the repository from GitHub to your local machine:
cd ~Projects/wearespindlegit clone git@github.com:wearespindle/flindt.gitcd flindt
In your shell, run one of these commands before starting:
export PORT=3000
when you want aDockerized frontend, listening on port 3000.
export PORT=3001
or any other port than "3000", for when you run the frontendoutside of Docker.
- Build the containers (database, backend and front end):
docker-compose build
- Start the 3 containers in the background:
docker-compose up -d
- Wait something like 10 to 15 seconds for the DB-container to initialize and run the default Django migrate-stuff:
docker-compose run --rm backend python manage.py migrate
- Add a superuser, e.g.
john.doe@wearespindle.com
:
docker-compose run --rm backend python manage.py createsuperuser
You'llhave to restart the environment to get anything to show up in the browser:
docker-compose restart
Now you can connect to the backend athttp://localhost:8005/admin/.
Login with the superuser & password you've just created. You are now ready to add an OAuth2-enabled application.
To make use of the Google API to login, you need to create an .env-file in the backend folder (so not the root of the project!).
The following credentials needs to be set in this .env-file:
SOCIAL_AUTH_GOOGLE_PLUS_KEY=your_client_idSOCIAL_AUTH_GOOGLE_PLUS_SECRET=your_client_secretSOCIAL_AUTH_GOOGLE_PLUS_WHITELISTED_DOMAINS=your_whitelisted_domainsCORS_ORIGIN_WHITELIST=localhost:3000,localhost:8005,yourdomain.com
The Google Plus secret can be found in the Google Developer dashboard.
You can add an OAuth2-enabled application in the Django Administration-backend.Follow these steps:
- Browse to
http://localhost:8005/admin/oauth2_provider/application/
- Add application (button on top right corner)
- Add this (hard-coded) "Client id" -->
DsHaTowmFoOr3GQLOOoJaXQpViaV6NsIFzOVY3ME
- "User" should point to the added superuser. Use the looking glass to find it.
- "Client type" --> Public
- "Authorization grant type" --> Resource owner password-based
- "Name" is OK to remain empty
You should be able to login to the frontend using the superuser's email-address athttp://localhost:3000/.
At this point selecting the options "Give feedback" and "Received feedback" are waiting indefinitely. This is because there aren't any feedback objects for a user as of yet.
Continue with the documentation atStarting to work.