{ "info": { "author": "Chris Bailey", "author_email": "chris.p.bailey@gmail.com", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP :: Dynamic Content", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Software Development :: Testing" ], "description": "Duat - A lightweight django UAT feedback tool\n=============================================\n\nThis is a simple django application for embedding a lightweight feedback\nmechanism into you websites. It\u2019s intended primarily as an aid for user\nacceptance testing, much like `Google Feedback`_. The backend leverages\nDjango\u2019s admin module to provide its functionality.\n\nHow to use it\n-------------\n\nVia the admin interface on the server you set up a \u2018Project\u2019. Once done\nthis will provide you with a single custom javascript file which you can\nembed into your website. Once embedded, the javascript will create a\nsmall feedback form on the bottom right of the page. When the user\nelects to provide feedback they can select any elements on the page\nwhich will become highlighted (to indicate the problem areas). After the\nfeedback is submitted, the server generates an image of the page (with\nhighlighted elements) and records the url, user agent and time of\nsubmission. Site administrators can then easily view the issues as they\ncome in. You can view the generated image or the html of the problem\npage.\n\nHow it works\n------------\n\nThe web tool allows the user to highlight different elements on the page\n(by adding a specific class to those elements). This DOM is then sent to\nthe server where PhantomJS is used to generate a static image of the\npage and the admin interface lets you view the full page contents.\n\nInstallation (Standalone)\n-------------------------\n\n1. Install the `Django`_ framework\n2. Download and extract `PhantomJS`_\n3. Checkout this repository.\n4. Edit ``settings.py``:\n\n- Setup your database as necessary\n- Edit the ``PHANTOMJS_EXECUTABLE`` path\n\n5. Initialise the database (don\u2019t forget to setup an administrator)\n ``python manage.py syncdb``\n6. Run the server ``python manage.py runserver 8000``\n\nInstallation (Shared)\n---------------------\n\nDuat can also be installed alongside other django apps.\n\n1. Download and extract `PhantomJS`_\n2. Edit ``settings.py``:\n\n- Add ``PHANTOMJS_EXECUTABLE=``\n- Include duat in your ``INSTALLED_APPS`` list\n\n3. Edit your ``urls.py`` and include duat\n\n- ``url(r'^feedback/', include('duat.urls')),``\n\n4. Run syncdb.\n\nSetup\n-----\n\nOnce you have the server running, you will first need to set up a site\nadministrator, then create your first project to receive feedback.\n\n1. Visit the admin page (e.g. http://localhost:8000/admin) and log in\n using the admin details you just provided.\n\nFirst create a project administrator (this is the person who can log\ninto the back end to view submissions and receive notifications).\n\n2. Click the \u2018Add\u2019 button next to the Users section.\n3. Enter a username and password and click \u2018Save and continue editing\u2019.\n4. On the next screen make sure you check the box next to the Staff\n status option.\n5. Provide an email address to receive notifications of new feedback\n submissions.\n6. In the User Permissions box, select\n ``'duat | feedback | Can change feedback'`` and\n ``'duat | feedback | Readonly Feedback'`` and click the corresponding\n arrow to add these to the box on the right.\n7. Save this page.\n\nNow create a Project\n\n8. Use the \u2018Home\u2019 link to go back to the home screen and click \u2018Add\u2019\n next to the Projects section.\n9. Provide a name for your project and select the project administrator\n you\u2019ve just created. If you wish to send notifications to this\n administrator click the \u2018Notify admin\u2019 checkbox.\n10. After clicking the Save button you will have set up your first\n project.\n\nYou can then use the javascript link provided on the project screen to\nembed a ``\n\nThe project administrator can log into the admin site and will be able\nto view the Feedback entries submitted for their corresponding project.\n\nNotes\n-----\n\nInspiration for this system originally came from `feedback.js`_ but I\nfound the canvas tainting in chrome to be a blocker for our requirements\nso I decided to implement a simpler system. \n\nTested with Django 1.4, 1.5, 1.6, 1.7 & 1.8\n\n.. _PhantomJS: http://phantomjs.org/\n.. _feedback.js: http://experiments.hertzen.com/jsfeedback/\n.. _Google Feedback: http://www.google.com/tools/feedback/intl/en/learnmore.html\n.. _Django: https://www.djangoproject.com/", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/chrispbailey/duat/", "keywords": null, "license": "MIT License", "maintainer": null, "maintainer_email": null, "name": "django-duat", "package_url": "https://pypi.org/project/django-duat/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-duat/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/chrispbailey/duat/" }, "release_url": "https://pypi.org/project/django-duat/1.0/", "requires_dist": null, "requires_python": null, "summary": "A lightweight Django User Acceptance Testing feedback tool.", "version": "1.0" }, "last_serial": 1832974, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "1d4a69384a6eec2b243098080a3f2191", "sha256": "7edfc9a6790d016ae659360f7eceef8b5a48c1f43a5b9c2648e1aa78ce846bda" }, "downloads": -1, "filename": "django-duat-0.1.tar.gz", "has_sig": false, "md5_digest": "1d4a69384a6eec2b243098080a3f2191", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21045, "upload_time": "2014-03-13T22:33:12", "url": "https://files.pythonhosted.org/packages/21/7a/220ce0996b1815f51df21254ad1a2fd260dbbb397052bdf865d025cc1dfd/django-duat-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "afa509a24d2e1437ed071a50d9376aed", "sha256": "e2901cc4156bdb147bca84df42fee873356695deca043f113e0f1c09b7c61b9a" }, "downloads": -1, "filename": "django-duat-0.2.tar.gz", "has_sig": false, "md5_digest": "afa509a24d2e1437ed071a50d9376aed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21456, "upload_time": "2014-03-14T10:07:58", "url": "https://files.pythonhosted.org/packages/24/43/b2ee8f9706ee54b47e355b756a5c7862555c626bf4d4172ac08b648fe497/django-duat-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "6c759178a32038f690fe8e2bd49f0f0f", "sha256": "746b4feaad38645f06ff7d1ec8d96460ec89c578207a02c33c31dbc8515482a5" }, "downloads": -1, "filename": "django-duat-0.3.tar.gz", "has_sig": false, "md5_digest": "6c759178a32038f690fe8e2bd49f0f0f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21459, "upload_time": "2014-03-14T10:13:49", "url": "https://files.pythonhosted.org/packages/bb/64/84b9df76d4a47929fbc03027e8c5ccfddfee8bc8affa6c781dee86e33619/django-duat-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "f53d18e460604cb0f2a3572db2f3e8bb", "sha256": "e39ec33396797b600c3946a793703c311ed811dc69ef8bd4a0dbfb27442aeb57" }, "downloads": -1, "filename": "django-duat-0.4.tar.gz", "has_sig": false, "md5_digest": "f53d18e460604cb0f2a3572db2f3e8bb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21379, "upload_time": "2014-03-14T13:14:11", "url": "https://files.pythonhosted.org/packages/2a/70/7d98cd78d603773edbf9d134fe8b65212ba0d4e7d43c3d67d6e9d501e195/django-duat-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "459abc3ce5464faf6c3886b4dc509120", "sha256": "cad54572aeae872f8fd3337d3506688ae990b040d99bf79fd4936686b24f2c80" }, "downloads": -1, "filename": "django-duat-0.5.tar.gz", "has_sig": false, "md5_digest": "459abc3ce5464faf6c3886b4dc509120", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21381, "upload_time": "2014-05-13T11:54:21", "url": "https://files.pythonhosted.org/packages/af/c8/ffdf1b44e22730f0b8436c3f30ebefe98dc73d0f3f575f0546936f9a023a/django-duat-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "c301fad6b701253ae5671f9c0ebe6d68", "sha256": "4b570ff5f70f21adb84ac89907bb0820ff4a7d50b518cbd4a39692485517f10d" }, "downloads": -1, "filename": "django-duat-0.6.tar.gz", "has_sig": false, "md5_digest": "c301fad6b701253ae5671f9c0ebe6d68", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21949, "upload_time": "2014-07-21T14:47:22", "url": "https://files.pythonhosted.org/packages/5b/1c/b6695b624ec113a120b4802abd2d9ba086a65ef40c2c0fabe6eabd421626/django-duat-0.6.tar.gz" } ], "0.7": [ { "comment_text": "", "digests": { "md5": "a43e2398e4aae7fb494dadc14d3865b9", "sha256": "e8ab95662f7b5fde3e908b5a8056d512ec3c34ff7fd62289d4b524b48f2544a3" }, "downloads": -1, "filename": "django-duat-0.7.tar.gz", "has_sig": false, "md5_digest": "a43e2398e4aae7fb494dadc14d3865b9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21988, "upload_time": "2014-10-09T13:19:20", "url": "https://files.pythonhosted.org/packages/62/f2/631e51a5a20afade20358e14f7eb3b648862ead49b9bb75ed040b2776bbd/django-duat-0.7.tar.gz" } ], "0.8": [ { "comment_text": "", "digests": { "md5": "b5c0681704d963fc37246ddc810be59c", "sha256": "e17b87833b7f3ad95061a5468e0171368d557b1e69d2cb7634f6de55e985966b" }, "downloads": -1, "filename": "django-duat-0.8.tar.gz", "has_sig": false, "md5_digest": "b5c0681704d963fc37246ddc810be59c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22025, "upload_time": "2015-06-11T14:40:20", "url": "https://files.pythonhosted.org/packages/f7/37/050c17c46d69c47ca6acd47899d2acee7bd33afe66fd749b8b7b16df89bb/django-duat-0.8.tar.gz" } ], "0.9": [ { "comment_text": "", "digests": { "md5": "8a2123c361e4594a6b0da70b137b64c7", "sha256": "154ab4f5704f9580f4f8e669eb731bbbd37c9f84fcd72d3aa4f0ef1f904c6cf5" }, "downloads": -1, "filename": "django-duat-0.9.tar.gz", "has_sig": false, "md5_digest": "8a2123c361e4594a6b0da70b137b64c7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22027, "upload_time": "2015-06-11T16:19:07", "url": "https://files.pythonhosted.org/packages/69/7c/b3006d9138f0560c38bfa3c558b0f5f3acbf593cbc3a5b9dc8af3a873fe9/django-duat-0.9.tar.gz" } ], "1.0": [ { "comment_text": "", "digests": { "md5": "01416c22fa778835c25a581eae33624d", "sha256": "580fa61a4ab344eb1246f9c767623a563ce39e1af8442dd49a22f7a7d087f652" }, "downloads": -1, "filename": "django-duat-1.0.tar.gz", "has_sig": false, "md5_digest": "01416c22fa778835c25a581eae33624d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22376, "upload_time": "2015-11-25T11:53:16", "url": "https://files.pythonhosted.org/packages/19/23/d6c38e21f045e354151262e9dbe0cb1c1eab7449f825278fc636128f2ff9/django-duat-1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "01416c22fa778835c25a581eae33624d", "sha256": "580fa61a4ab344eb1246f9c767623a563ce39e1af8442dd49a22f7a7d087f652" }, "downloads": -1, "filename": "django-duat-1.0.tar.gz", "has_sig": false, "md5_digest": "01416c22fa778835c25a581eae33624d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22376, "upload_time": "2015-11-25T11:53:16", "url": "https://files.pythonhosted.org/packages/19/23/d6c38e21f045e354151262e9dbe0cb1c1eab7449f825278fc636128f2ff9/django-duat-1.0.tar.gz" } ] }