surveyengine is a customizable survey web user interface.
Project description
A customizable survey web user interface.
You can install surveyengine via
pip install --user surveyengine
and run it via:
python -m surveyengine spec.json output/
Where output is the output folder for the results and spec.json is a survey specification:
{
"title": "Survey Title Here", // the survey title
"pages": [ // a sequence of pages
{
"lines": [
"first line", // plain text that will be displayed
"second line {foo}" // displays: second line bar
],
"vars": { // defines local variables
"foo": "bar"
},
"pid": "start" // the id for the page (used as prefix in the result file)
"continue": "next", // creates a single button at the bottom -- default ("next") can be omitted
"type": "plain" // the type of page -- default ("plain") can be omitted
}, {
"type": "each", // repeats a sequence of pages
"name": "ix", // the iteration variable name -- it can be used via {ix} in fields
"name_next": "ix_next", // "name_next" and "name_prev" are optional variables containing the next / previous iteration
"vars": { // defines local variables
"img_len": 25 // we define the range as variable so we can use it in the text
},
"to": "{img_len}", // iterate until this number
"pages": [
// ... pages to repeat ...
{
"lines": [
"image {ix_next} / {img_len}", // displays: image 1 / 25
[ "img", "path/to/image{ix}.png", "" ] // the image to display
],
"pid": "question:{ix}" // the id for the page
"continue": "choice", // creates a collection of buttons at the bottom
"values": [ // the values to choose from
"yes",
"no"
]
}
]
// this page type does not have a "continue" field
}, {
"lines": [
// other special lines
// [ question_type, display_text, question_id ]
[ "text", "just text", "" ], // simple text -- equivalent to "just text"
[ "likert", "fun", "fun" ], // likert scale
[ "likert", "confidence", "conf" ]
],
"pid": "specials"
}, {
"lines": [
"Thanks! {_token}" // _token is a special variable containing the user id
],
"continue": "end", // indicates the end of the survey -- this page must exist
"pid": "end"
}
]
}
Each user creates a result file with its unique token in the output folder. The result file is a JSON file containing all answers.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file surveyengine-0.0.3.tar.gz.
File metadata
- Download URL: surveyengine-0.0.3.tar.gz
- Upload date:
- Size: 3.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f1e60e3a5947cfe6ab2c28c3e29c476d9a7fef385b3fc564c5d86a6df7327d64
|
|
| MD5 |
bcf9049f7cbe1a0875b049f062248197
|
|
| BLAKE2b-256 |
9d644f49732d3ac325ec65c63876a281c4c517b1e9b93b3b4b94f924d743e00b
|
File details
Details for the file surveyengine-0.0.3-py2.py3-none-any.whl.
File metadata
- Download URL: surveyengine-0.0.3-py2.py3-none-any.whl
- Upload date:
- Size: 4.5 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a67fb5d88f9cbfbc521bb7b9ed14f50421f20e5cd8f7d025e4b16386ca821f93
|
|
| MD5 |
5839d6389ceef84ec5167c117d319ea6
|
|
| BLAKE2b-256 |
2e250c604013f67d9e1f84ab03b6225d3b89522b271c3e2adb84cc2ad55da4b5
|