Skip to main content

Search and consult CADA advices

Project description


Join the chat at

A simplistic interface to search and consult CADA advices.

This is the engine behind


CADA has been tested on Python 2.7, MongoDB 3.2 and ElasticSearch 2.4.

The ElasticSearch ICU Analysis plugin is required.

You can install it with:

bin/plugin install analysis-icu


You can install Cada with pip:

$ pip install cada

You need to create the cada working directory, denoted by $HOME in this documentation:

$ mkdir -p $HOME && cd $HOME
$ vim cada.cfg  # See configuration
$ wget -O data.csv
$ cada load data.csv  # Load initial data
$ cada static  # Optional: collect static assets for proper caching
$ cada runserver

local development environment

Please make sure you are in a clean virtualenv.

$ git clone
$ cd cada
$ docker-compose up -d
$ pip install -e .
$ wget -O data.csv
$ cada load data.csv
$ cada reindex
$ cada runserver


All configuration is done through the cada.cfg file in $HOME. It's basically a Python file with constants defined in it:

  • SERVER_NAME: the public server name. Mainly used in emails.
  • SECRET_KEY: the common crypto hash. e.g. sessions. openssl rand -hex 24 should be a good start.
  • ELASTICSEARCH_URL: the ElasticSearch server URL in host:port format. Default to localhost:9200 if not set
  • MONGODB_SETTINGS: a dictionary to configure MongoDB. Default to {'DB': 'cada'}. See the official flask-mongoengine documentation for more details.


Mail server configuration is done through the following variables:

  • MAIL_SERVER: SMTP server hostname. Default to localhost.
  • MAIL_PORT: SMTP server port. Default to 25.
  • MAIL_USE_TLS: activate TLS. Default to False.
  • MAIL_USE_SSL: activate SSL. Default to False.
  • MAIL_USERNAME: optional SMTP server username.
  • MAIL_PASSWORD: optional SMTP server password.
  • MAIL_DEFAULT_SENDER: Sender email used for mailings. Default to cada@localhost.
  • ANON_ALERT_MAIL: destination mail for anonymisation alerts. Default to cada.alert@localhost.

See the official Flask-Mail documentation for more details.


There is an optional support for Sentry. You need to install the required dependencies:

$ pip install raven[flask]
# Or to install it with cada
$ pip install cada[sentry]

You need to add your Sentry DSN to the configuration



There is an optional Piwik support. You simply need to add your Piwik server URL and your Piwik project ID to the configuration:


1.0.0 (2019-07-19)

  • Add a burnthemall command #25
  • Use tqdm for major commands with loops #25
  • Python 3 #28
  • Elastic Search 7.2 #29
  • Mongo 4.1 #29
  • Improved pseudonymization #32
  • Display sample of api calls #33
  • Fix text query #33

0.2.1 (2019-07-15)

  • Fix advice part roman numerals handling #13
  • Colorize advices labels #14
  • Fixes about page #11
  • Fix the cli encoding handling as well as some formatting issues #18
  • Footer fixes (svg logo, alignments, https links) #20
  • Upgrade jQuery, Bootstrap and Flatly assets and fixes responsive layout #21
  • Fix unicode issue #26

0.2.0 (2018-10-05)

  • Upgrade stack to latest dependencies (Flask 1.0 with flask.cli, pytest...) #6
  • Test and fix alert mails #7
  • Added "about" page #9
  • Handle type IV advices #10

0.1.0 (2014-04-14)

  • Initial release

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

cada-1.0.0-py3-none-any.whl (436.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page