# Django Survey App
This Django application allows you to create and manage surveys including CSAT, NPS, CES, and Generic Surveys. It supports both anonymous and logged-in user responses with user metadata tracking.
## Setup and Installation
### 1. Install the Application
To install the `customersatisfactionmetrics` package, run the following command:
```bash
pip install customersatisfactionmetrics
```
### 2. Update Django Settings
Add `customersatisfactionmetrics` to the `INSTALLED_APPS` list in your Django project's `settings.py` file:
```python
INSTALLED_APPS = [
# ... other installed apps ...
"django.contrib.admin",
"django.contrib.auth",
"django.contrib.contenttypes",
"django.contrib.sessions",
"django.contrib.messages",
"django.contrib.staticfiles",
"customersatisfactionmetrics", # Add this line
]
```
### 3. Run Migrations
Apply the necessary migrations to your database with the following command:
```bash
python manage.py migrate
```
### 4. Run the Django Server
Start the Django development server:
```bash
python manage.py runserver
```
Access the admin panel at [http://localhost:8000/admin/](http://localhost:8000/admin/).
### 5. Adding Surveys and Questions
- Navigate to the Django admin site.
- Use the respective sections to add new surveys and questions.
### 6. URL Configuration
Include the `customersatisfactionmetrics` URLs in your project's `urls.py` file:
```python
from django.urls import path, include
urlpatterns = [
path('', include('customersatisfactionmetrics.urls')),
# ... other URL patterns ...
]
```
## Usage
### 1. Access the Survey
To view a survey, navigate to the URL path `survey/slug/<slug>` in your web browser, where `<slug>` is the slug you assigned to the survey in the admin panel. For example:
```
http://localhost:8000/survey/slug/sample-survey
```
This URL will display the survey form for users to fill out and submit.
### 2. Embedding Surveys in Templates
To easily embed a survey in your Django templates, you can use the `insert_survey_by_slug` template tag. This tag allows you to insert a survey form by its slug directly into a template.
First, load the template tag in your template file:
```html
{% load survey_tags %}
```
Then, use the `insert_survey_by_slug` tag to insert a survey form by specifying its slug:
```html
{% insert_survey_by_slug 'your-survey-slug' %}
```
Replace `'your-survey-slug'` with the actual slug of the survey you want to embed. The survey form will be rendered wherever you include this tag in your template.
Example:
```html
<!DOCTYPE html>
<html>
<head>
<title>Survey Page</title>
</head>
<body>
<h1>Survey Form</h1>
{% load survey_tags %}
{% insert_survey_by_slug 'sample-survey' %}
</body>
</html>
```
This method provides a flexible way to integrate surveys into various parts of your Django application without the need for additional view logic or URL configurations.
## Features
- Supports various survey types: CSAT, NPS, CES, and Generic.
- Allows both anonymous and logged-in user responses.
- Tracks user metadata like IP address and user agent.
## Contributing
Contributions to this project are welcome. Please fork the repository and submit a pull request.
## License
This project is licensed under [MIT License](LICENSE). See the [LICENSE](LICENSE) file in the respective folders for more details.
## Contact
For any queries or further information, please contact us at devops@pescheck.nl.
Thank you for your interest in our Django Survey Project!
Raw data
{
"_id": null,
"home_page": "http://github.com/pescheckit/customersatisfactionmetrics",
"name": "customersatisfactionmetrics",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "django, survey, customer satisfaction, feedback, CSAT, NPS, CES, survey management, user responses, analytics, data collection, web surveys, survey application, docker, docker compose, web app, user experience, user feedback, questionnaire, user engagement, metadata tracking, response analysis, Django application",
"author": "Bram Mittendorff",
"author_email": "bram@pescheck.io",
"download_url": "https://files.pythonhosted.org/packages/60/d3/0c5b78d8feca45ce84aaeef8600d5e0757b8c5df9798f4f790f15ef9f4fd/customersatisfactionmetrics-1.0.8.tar.gz",
"platform": null,
"description": "# Django Survey App\n\nThis Django application allows you to create and manage surveys including CSAT, NPS, CES, and Generic Surveys. It supports both anonymous and logged-in user responses with user metadata tracking.\n\n## Setup and Installation\n\n### 1. Install the Application\n\nTo install the `customersatisfactionmetrics` package, run the following command:\n\n```bash\npip install customersatisfactionmetrics\n```\n\n### 2. Update Django Settings\n\nAdd `customersatisfactionmetrics` to the `INSTALLED_APPS` list in your Django project's `settings.py` file:\n\n```python\nINSTALLED_APPS = [\n # ... other installed apps ...\n \"django.contrib.admin\",\n \"django.contrib.auth\",\n \"django.contrib.contenttypes\",\n \"django.contrib.sessions\",\n \"django.contrib.messages\",\n \"django.contrib.staticfiles\",\n \"customersatisfactionmetrics\", # Add this line\n]\n```\n\n### 3. Run Migrations\n\nApply the necessary migrations to your database with the following command:\n\n```bash\npython manage.py migrate\n```\n\n### 4. Run the Django Server\n\nStart the Django development server:\n\n```bash\npython manage.py runserver\n```\n\nAccess the admin panel at [http://localhost:8000/admin/](http://localhost:8000/admin/).\n\n### 5. Adding Surveys and Questions\n\n- Navigate to the Django admin site.\n- Use the respective sections to add new surveys and questions.\n\n### 6. URL Configuration\n\nInclude the `customersatisfactionmetrics` URLs in your project's `urls.py` file:\n\n```python\nfrom django.urls import path, include\n\nurlpatterns = [\n path('', include('customersatisfactionmetrics.urls')),\n # ... other URL patterns ...\n]\n```\n\n## Usage\n\n### 1. Access the Survey\n\nTo view a survey, navigate to the URL path `survey/slug/<slug>` in your web browser, where `<slug>` is the slug you assigned to the survey in the admin panel. For example:\n\n```\nhttp://localhost:8000/survey/slug/sample-survey\n```\n\nThis URL will display the survey form for users to fill out and submit.\n\n\n### 2. Embedding Surveys in Templates\n\nTo easily embed a survey in your Django templates, you can use the `insert_survey_by_slug` template tag. This tag allows you to insert a survey form by its slug directly into a template.\n\nFirst, load the template tag in your template file:\n\n```html\n{% load survey_tags %}\n```\n\nThen, use the `insert_survey_by_slug` tag to insert a survey form by specifying its slug:\n\n```html\n{% insert_survey_by_slug 'your-survey-slug' %}\n```\n\nReplace `'your-survey-slug'` with the actual slug of the survey you want to embed. The survey form will be rendered wherever you include this tag in your template.\n\nExample:\n\n```html\n<!DOCTYPE html>\n<html>\n<head>\n <title>Survey Page</title>\n</head>\n<body>\n <h1>Survey Form</h1>\n {% load survey_tags %}\n {% insert_survey_by_slug 'sample-survey' %}\n</body>\n</html>\n```\n\nThis method provides a flexible way to integrate surveys into various parts of your Django application without the need for additional view logic or URL configurations.\n\n\n## Features\n\n- Supports various survey types: CSAT, NPS, CES, and Generic.\n- Allows both anonymous and logged-in user responses.\n- Tracks user metadata like IP address and user agent.\n\n## Contributing\n\nContributions to this project are welcome. Please fork the repository and submit a pull request.\n\n## License\n\nThis project is licensed under [MIT License](LICENSE). See the [LICENSE](LICENSE) file in the respective folders for more details.\n\n## Contact\n\nFor any queries or further information, please contact us at devops@pescheck.nl.\n\nThank you for your interest in our Django Survey Project!\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A short description of your package",
"version": "1.0.8",
"project_urls": {
"Homepage": "http://github.com/pescheckit/customersatisfactionmetrics"
},
"split_keywords": [
"django",
" survey",
" customer satisfaction",
" feedback",
" csat",
" nps",
" ces",
" survey management",
" user responses",
" analytics",
" data collection",
" web surveys",
" survey application",
" docker",
" docker compose",
" web app",
" user experience",
" user feedback",
" questionnaire",
" user engagement",
" metadata tracking",
" response analysis",
" django application"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "0a35a29f4e4b55188a54b13c0bef250d3ed514625a0b65a982a11aeb66bcf6f7",
"md5": "ef8aa3767b6c5c1dcae18e304026e8d8",
"sha256": "eeb1c162e4757e8f3893872786e67d50d738612eff449fed7230288c51c3d1ab"
},
"downloads": -1,
"filename": "customersatisfactionmetrics-1.0.8-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ef8aa3767b6c5c1dcae18e304026e8d8",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 28269,
"upload_time": "2024-10-25T10:38:28",
"upload_time_iso_8601": "2024-10-25T10:38:28.405181Z",
"url": "https://files.pythonhosted.org/packages/0a/35/a29f4e4b55188a54b13c0bef250d3ed514625a0b65a982a11aeb66bcf6f7/customersatisfactionmetrics-1.0.8-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "60d30c5b78d8feca45ce84aaeef8600d5e0757b8c5df9798f4f790f15ef9f4fd",
"md5": "e35f0fd76e7c723c649285a40a249f51",
"sha256": "2005225742796baba66dff0867088453e601f782d41ee609c4483f08773726a8"
},
"downloads": -1,
"filename": "customersatisfactionmetrics-1.0.8.tar.gz",
"has_sig": false,
"md5_digest": "e35f0fd76e7c723c649285a40a249f51",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 18438,
"upload_time": "2024-10-25T10:38:29",
"upload_time_iso_8601": "2024-10-25T10:38:29.817065Z",
"url": "https://files.pythonhosted.org/packages/60/d3/0c5b78d8feca45ce84aaeef8600d5e0757b8c5df9798f4f790f15ef9f4fd/customersatisfactionmetrics-1.0.8.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-25 10:38:29",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "pescheckit",
"github_project": "customersatisfactionmetrics",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "customersatisfactionmetrics"
}