• Stars
    star
    117
  • Rank 300,057 (Top 6 %)
  • Language
    Python
  • License
    BSD 2-Clause "Sim...
  • Created almost 11 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Our (backend) server for providing blank forms to Collect and Enketo and for receiving and storing submissions.

KoBoCAT

Important notice when upgrading from any release older than 2.020.18

Up to and including release 2.020.18, this project (KoBoCAT) and KPI both shared a common Postgres database. They now each have their own. If you are upgrading an existing single-database installation, you must follow these instructions to migrate the KPI tables to a new database and adjust your configuration appropriately.

If you do not want to upgrade at this time, please use the shared-database-obsolete branch instead.

Deprecation Notices

Much of the user-facing features of this application are being migrated to https://github.com/kobotoolbox/kpi. KoBoCAT's data-access API and OpenRosa functions will remain intact, and any plans to the contrary will be announced well in advance. For more details and discussion, please refer to https://community.kobotoolbox.org/t/contemplating-the-future-of-kobocat/2743.

As features are migrated, we will list them here along with the last release where each was present:

  • To ensure security and stability, many endpoints that were already available in KPI, long-unsupported, or underutilized have been removed in release 2.020.40. These were related to charts and stats, form cloning, form sharing, user profiles, organizations / projects / teams, bamboo, and ziggy. For a full list, please see REMOVALS.md. These endpoints were last available in the release 2.020.39.
  • REST Services - an improved version has been added to KPI. The last KoBoCAT release to contain legacy REST services is 2.019.39.

About

kobocat is the data collection platform used in KoBoToolbox. It is based on the excellent onadata platform developed by Ona LLC, which in itself is a redevelopment of the formhub platform developed by the Sustainable Engineering Lab at Columbia University.

Please refer to kobo-install for instructions on how to install KoBoToolbox.

Code Structure

  • logger - This app serves XForms to and receives submissions from ODK Collect and Enketo.
  • viewer - This app provides a csv and xls export of the data stored in logger. This app uses a data dictionary as produced by pyxform. It also provides a map and single survey view.
  • main - This app is the glue that brings logger and viewer together.

Localization

To generate a locale from scratch (ex. Spanish)

$ django-admin.py makemessages -l es -e py,html,email,txt ;
$ for app in {main,viewer} ; do cd kobocat/apps/${app} && django-admin.py makemessages -d djangojs -l es && cd - ; done

To update PO files

$ django-admin.py makemessages -a ;
$ for app in {main,viewer} ; do cd kobocat/apps/${app} && django-admin.py makemessages -d djangojs -a && cd - ; done

To compile MO files and update live translations

$ django-admin.py compilemessages ;
$ for app in {main,viewer} ; do cd kobocat/apps/${app} && django-admin.py compilemessages && cd - ; done

Testing in KoBoCAT

For kobo-install users, enter the folder for kobo-install and run this command

./run.py -cf exec kobocat bash

For all other users, enter the container using this command

$ docker exec -it {{kobocat container}} /bin/bash

Run pip install the development dependencies

$ pip install -r dependencies/pip/dev.txt

Run pytest to run all automated tests

$ pytest

More Repositories

1

kobo-docker

Stack of docker containers to all server-side components of KoBoToolbox (kpi, kobocat, enketo-express).
Shell
178
star
2

kobo-install

A command-line installer for setting up and running KoboToolbox on a remote server or local computer, using kobo-docker.
Python
168
star
3

kpi

kpi is the (frontend) server for KoboToolbox. It includes an API for users to access data and manage their forms, question library, sharing settings, create reports, and export data.
Python
129
star
4

formpack

formpack is a tool used by kpi to parse and repackage survey data for exports, reports, and maps based on different languages available from the form definition.
Python
14
star
5

docs

The official KoboToolbox userguide website.
HTML
14
star
6

dkobo

Inactive and preserved for reference only
CoffeeScript
14
star
7

dist-kobo-devel

A script to download and configure all server components of KoBoToolbox for installation on a local machine
Shell
13
star
8

xls-import

⚠️ THIS IS NOT A SUPPORTED REPOSITORY. It is here with the hope that it's helpful for your own efforts.
Python
8
star
9

kobo-transfer

Transfer assets and submissions between two projects.
Python
7
star
10

android-deploy

A script to simply the setup of Android devices based on a single configuration
Batchfile
6
star
11

kobomaps-orig

JavaScript
5
star
12

kobocat-template

Template files to modify default kobocat styling
HTML
5
star
13

kobo-helm-chart

This project is new. We do not yet release stable versions.
Smarty
4
star
14

kobosync

A standalone Java app to copy data from Android to local computer and aggregate survey records into a CSV file
Java
4
star
15

form-builder-translations

3
star
16

kobo-notebooks

Guided walkthroughs using Kobo's APIs and Jupyter Notebooks.
3
star
17

kobo-geonode

Kobo to GeoNode integration and documentation
C#
2
star
18

koboform

A Java/GWT based formbuilder (no longer supported). Replaced by dkobo.
Java
2
star
19

covidportal

HTML
2
star
20

rundeck

Scripts used on ansible with a Rundeck Web UI for action automation.
Shell
1
star
21

restframework-tutorial

Python
1
star
22

wfp-svg-map-documentation

1
star
23

mockobo

Make mock submissions to a deployed Kobo form
Python
1
star
24

kobomaps-old

A cloud based system for uploading data and visualizing it geospatially.
PHP
1
star
25

reports

SCSS
1
star
26

enketo-image-customization-widget

Enketo Widget to customize SVG images
JavaScript
1
star
27

enketo-express-extra-widgets

Docker configuration for building Enketo Express with extra widgets
Dockerfile
1
star