Polis is an AI powered sentiment gathering platform. More organic than surveys and less effort than focus groups, Polis meets a basic human need to be understood, at scale.
The installation instructions below are currently focused on setting up a development environment. These instructions should NOT be considered sufficient for production deployment without additional setup. We do NOT make guarantees of easy setup or management, push-button deployment, security, technical support, future migration paths, data integrity, etc.
Having said this, some of the core pieces of infrastructure described below are potentially useful in a production context, if used correctly.
In particular, each subdirectory of the project has its own Dockerfile
which could potentially be used as part of a deploy strategy.
The docker-compose.yml
is currently focused on development environment, but will soon transition to being production focused, with development conveniences extracted as a separate compose file.
- See also: Deployment: About SSL/HTTPS
If you'd like to set up your own deployment of Polis, we encourage your to reach out to us for support. We look forward to working together 🎉
If you're interested in contributing to the codebase, please see the following:
- ✅ issues: for well-defined technical issues
- 💬 discussions: for questions about the software, or more open ended ideas and conversation which don't properly fit in issues (to be clear, not technical support)
- 💬 chat: if you're interested in connecting with other developers to get orientation around the project
- more to come soon, hopefully (including kanban board and orientation documentation)!
If you have a small machine or little hard drive space, you may want to consider running the below with Docker-Machine (DigitalOcean with 2GB memory should be sufficient)
Before running docker-compose up for the first time:
After cloning, navigate via command line to the root of this repository.
Next, either do a pull (faster):
docker-compose pull
If you get a permission error, try running sudo docker-compose pull
, and sudo will be necessary for all other commands as well. To avoid having to run sudo
in the future, you can follow setup instruction here: https://docs.docker.com/engine/install/linux-postinstall/
or do a build (to utilize recent or local changes):
docker-compose up --build
once you've either pulled or built, you can run the following when you want to run the project:
docker-compose up
To force a full re-build with no cache from previous builds:
docker-compose build --parallel --no-cache
You can end the process using Ctrl+C
If you would like to run docker compose as a background process, run the up
commands with the --detach
flag, e.g.,:
docker-compose up --detach
And to stop:
docker-compose down
docker-machine ip
>>> 123.45.67.89
Visit your instance at: http://123.45.67.89.sslip.io/
Or visit a native docker instance at http://localhost:80/
Sign up at /createuser
path. You'll be logged in right away; no email validation required!
What features still need work?
Generated reports- Data export
polis-issues#137
Note: Due to past file re-organizations, you may find the following git configuration helpful for looking at history:
git config --local include.path ../.gitconfig
We use Cypress for automated, end-to-end browser testing! (See badge above.)
Please see e2e/README.md
and CONTRIBUTING.md
.
Please see docs/deployment.md