{ "info": { "author": "Sebastian Pipping", "author_email": "sebastian@pipping.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Framework :: Bottle", "Framework :: Paste", "License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Programming Language :: JavaScript", "Programming Language :: Python :: 2.7", "Topic :: Internet :: WWW/HTTP :: WSGI :: Application", "Topic :: Office/Business :: Scheduling" ], "description": "What is jawanndenn?\n===================\n\n.. figure:: https://raw.githubusercontent.com/hartwork/jawanndenn/master/jawanndenn-setup.png\n :alt: Screenshot of poll creation in jawanndenn\n\n*jawanndenn* is a simple web application to schedule meetings and run\npolls, a libre alternative to Doodle. It is written in Python and\nJavaScript using\n\n- `bottle`_ with `Tornado`_ for a default backend\n- `jQuery`_ \n- `jQuery noty`_\n- `Materialize`_ Material Design CSS/JS\n\n*jawanndenn* is `libre software`_ developed by `Sebastian Pipping`_. The\nserver code is licensed under the `GNU Affero GPL license`_ version 3\nor later whereas the client code is licensed under the `GNU GPL\nlicense`_ version 3 or later.\n\nPlease `report bugs`_ and let me know if you `like`_ it.\n\n\nInstallation\n============\n\nTo install the latest release without cloning the Git repository:\n\n::\n\n # pip install jawanndenn\n\nTo install from a Git clone:\n\n::\n\n # python setup.py install --user\n\n\nDeployment with Apache mod\\_wsgi\n================================\n\nTo use *jawanndenn* with ``mod_wsgi``, there is file\n``jawanndenn/app.wsgi`` For how to integrate ``jawanndenn/app.wsgi``\nwith the Apache configuration, please check the `the related\ndocumentation of bottle`_.\n\nFeel free to `file a support ticket`_ or `drop me a mail`_, if you\ncannot get it to work.\n\n\nRun with docker\n===============\n\nYou can build a docker image using ``docker-compose build`` and run it with ``docker-compose up``.\n\nSerialized data is saved to ``~/.jawanndenn-docker/`` outside the container (only if the server shuts down). The app is served on ``localhost:8080``.\n\n\nCommand line usage\n==================\n\nWhen installed, invocation is as simple as\n\n::\n\n # jawanndenn\n\nDuring development, you may want to run *jawanndenn* from the Git clone\nusing\n\n::\n\n # PYTHONPATH=. python jawanndenn/main.py --debug\n\nCurrently supported arguments are:\n\n::\n\n # jawanndenn --help\n usage: jawanndenn [-h] [--debug] [--host HOST] [--port PORT]\n [--url-prefix PATH] [--database-pickle FILE]\n [--server BACKEND] [--max-polls COUNT]\n [--max-votes-per-poll COUNT]\n\n optional arguments:\n -h, --help show this help message and exit\n --debug Enable debug mode (default: disabled)\n --host HOST Hostname or IP address to listen at (default:\n 127.0.0.1)\n --port PORT Port to listen at (default: 8080)\n --url-prefix PATH Path to prepend to URLs (default: \"\")\n --database-pickle FILE\n File to write the database to (default:\n ~/jawanndenn.pickle)\n --server BACKEND bottle backend to use (default: tornado); as of this\n writing bottle supports: auto, bjoern, diesel,\n eventlet, gae, gevent, gunicorn, meinheld, paste,\n twisted, waitress, wsgiref. For the most current list,\n please check the documentation of bottle.\n\n limit configuration:\n --max-polls COUNT Maximum number of polls total (default: 1000)\n --max-votes-per-poll COUNT\n Maximum number of votes per poll (default: 40)\n\n\nGoals\n=====\n\n- Libre software to host yourself, unlike Doodle\n- More simple, sexy and/or fun than `libre alternatives`_, in alphabetic order:\n\n - `Bitpoll`_ (ex. `Dudel`_)\n - `Dudle`_\n - (`Drupal Date picker formatter`_)\n - (`Foodle`_ (discontinued; `on GitHub`_, ex. `DFN scheduler`_, ex. `DFN Terminplaner+`_))\n - `Framadata`_ (`Sources`_, ex. `OpenSondage`_, ex. `STUdS`_)\n - `Noodle`_\n - `Nuages`_\n - `Pleft`_\n - `Rallly`_\n - `RDVz`_\n\n- Keep things simple, usable, maintainable\n- Support invocation from the command line, e.g. for spontaneous polls in a LAN\n- Have security in mind\n\nPlease check out the `list of upcoming features`_.\n\n\nNon-goals\n=========\n\n- Use of heavy frameworks: building blocks only\n- Read availability from calendars\n\n\nThanks\n======\n\nSpecial thanks to Arne Maier (`@KordonDev`_) for reporting\nan XSS vulnerability, responsibly.\n\n\n.. _bottle: http://bottlepy.org/docs/dev/\n.. _Tornado: https://www.tornadoweb.org/\n.. _jQuery: http://jquery.com/\n.. _jQuery noty: http://ned.im/noty/#/about\n.. _Materialize: http://materializecss.com/\n.. _libre software: https://www.gnu.org/philosophy/free-sw.en.html\n.. _Sebastian Pipping: https://blog.hartwork.org/\n.. _GNU Affero GPL license: https://www.gnu.org/licenses/agpl.en.html\n.. _GNU GPL license: https://www.gnu.org/licenses/gpl.html\n.. _report bugs: https://github.com/hartwork/jawanndenn/issues\n.. _like: mailto:sebastian@pipping.org\n.. _the related documentation of bottle: https://bottlepy.org/docs/dev/deployment.html#apache-mod-wsgi\n.. _file a support ticket: https://github.com/hartwork/jawanndenn/issues/new\n.. _drop me a mail: mailto:sebastian@pipping.org\n.. _libre alternatives: http://alternativeto.net/software/doodle/?license=opensource\n.. _Bitpoll: https://github.com/fsinfuhh/Bitpoll\n.. _Dudel: https://github.com/opatut/dudel\n.. _Pleft: https://github.com/sander/pleft\n.. _Framadata: https://framadate.org/\n.. _Sources: https://git.framasoft.org/framasoft/framadate\n.. _OpenSondage: https://github.com/leblanc-simon/OpenSondage\n.. _STUdS: http://studs.unistra.fr/\n.. _Foodle: https://foodl.org/\n.. _on GitHub: https://github.com/UNINETT/Foodle\n.. _DFN scheduler: https://terminplaner.dfn.de/\n.. _DFN Terminplaner+: https://terminplaner2.dfn.de/\n.. _Dudle: https://dudle.inf.tu-dresden.de/\n.. _Nuages: https://nuages.domainepublic.net/\n.. _RDVz: https://sourceforge.net/projects/rdvz/\n.. _Drupal Date picker formatter: http://alternativeto.net/software/date-picker-formatter-dudel-for-drupal/?license=opensource\n.. _Noodle: https://github.com/kmerz/noodle\n.. _Rallly: https://github.com/lukevella/Rallly\n.. _list of upcoming features: https://github.com/hartwork/jawanndenn/issues/created_by/hartwork\n.. _@KordonDev: https://github.com/KordonDev\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/hartwork/jawanndenn", "keywords": "", "license": "AGPLv3+", "maintainer": "", "maintainer_email": "", "name": "jawanndenn", "package_url": "https://pypi.org/project/jawanndenn/", "platform": "", "project_url": "https://pypi.org/project/jawanndenn/", "project_urls": { "Homepage": "https://github.com/hartwork/jawanndenn" }, "release_url": "https://pypi.org/project/jawanndenn/1.6.1/", "requires_dist": null, "requires_python": "", "summary": "Libre alternative to Doodle", "version": "1.6.1" }, "last_serial": 4653045, "releases": { "1.2": [ { "comment_text": "", "digests": { "md5": "9ac9354e5f1336d2069f6f99b3f1e514", "sha256": "80fbd27438a87f91953993f9df297964bfbdf5b0270b4a161d172d7ca1366b7f" }, "downloads": -1, "filename": "jawanndenn-1.2.tar.gz", "has_sig": false, "md5_digest": "9ac9354e5f1336d2069f6f99b3f1e514", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 58919, "upload_time": "2016-11-08T18:48:56", "url": "https://files.pythonhosted.org/packages/b4/1f/7dc9fa4614a32303b429303b549bb496c532792b0622720714721fc5ef64/jawanndenn-1.2.tar.gz" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "6a36f5b9a5b16344d71d69df9de82dff", "sha256": "f81b454e19d4d268060fcbebab56a624d0b437ba604b28b941e02a8bab4d14d4" }, "downloads": -1, "filename": "jawanndenn-1.3.tar.gz", "has_sig": false, "md5_digest": "6a36f5b9a5b16344d71d69df9de82dff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 59940, "upload_time": "2017-02-26T20:05:17", "url": "https://files.pythonhosted.org/packages/57/dc/c9bf4140429046c1e6ce8e98f032a35ff397cbc47d00fcc793fbc90c613b/jawanndenn-1.3.tar.gz" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "5df06ba41adf352e2e126636986e5606", "sha256": "7526746d52d953ffa617f72c8f0342e494ef74cb0564f2d4afccbfd025ed3c1b" }, "downloads": -1, "filename": "jawanndenn-1.4.tar.gz", "has_sig": false, "md5_digest": "5df06ba41adf352e2e126636986e5606", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 66969, "upload_time": "2018-02-10T18:02:10", "url": "https://files.pythonhosted.org/packages/37/83/c2a7904bb31c507e93bc9f4798b2c9afeb5f3aac52b898dba1599fbcb335/jawanndenn-1.4.tar.gz" } ], "1.5": [ { "comment_text": "", "digests": { "md5": "ce43b728015818a3573a17c83df1d240", "sha256": "54072e932d5264eed9bf6d611b7461530d8e32455189cf4a7c211691fd5ea31d" }, "downloads": -1, "filename": "jawanndenn-1.5.tar.gz", "has_sig": false, "md5_digest": "ce43b728015818a3573a17c83df1d240", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 67460, "upload_time": "2018-02-14T23:55:07", "url": "https://files.pythonhosted.org/packages/67/77/1821ab9545457d8c91029b076508bf45820747edac9ebd3a4a16e4a94d47/jawanndenn-1.5.tar.gz" } ], "1.5.1": [ { "comment_text": "", "digests": { "md5": "65adcc01dfe062053d66df0d6f9a56ee", "sha256": "9892d3e7495e00798b5e08fab0752fb538f9593c87ec97b7f57192eb7b115f0f" }, "downloads": -1, "filename": "jawanndenn-1.5.1.tar.gz", "has_sig": false, "md5_digest": "65adcc01dfe062053d66df0d6f9a56ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68037, "upload_time": "2018-05-17T18:01:06", "url": "https://files.pythonhosted.org/packages/dd/87/b83d33382e6102ca7ef9fbd22a924a7af56a89a9c37326c4ab2b67712b8e/jawanndenn-1.5.1.tar.gz" } ], "1.6": [ { "comment_text": "", "digests": { "md5": "8b7011a0ef976805d0a1e1c3e6f81eb2", "sha256": "8bec667ebf7baafda0b74191dd772bf24ce52ad553430d577b380dcd50cefe48" }, "downloads": -1, "filename": "jawanndenn-1.6.tar.gz", "has_sig": false, "md5_digest": "8b7011a0ef976805d0a1e1c3e6f81eb2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68526, "upload_time": "2019-01-02T15:16:37", "url": "https://files.pythonhosted.org/packages/d1/fe/c74e54b84f43a2c9aaa41f0dabc9eed4e535e25eb134156741b1cb4f91c5/jawanndenn-1.6.tar.gz" } ], "1.6.1": [ { "comment_text": "", "digests": { "md5": "261979f43ecefb6c3aa9093143b905a2", "sha256": "9f4554c57efd9ee50bc5209850f33d462cb55f1654bd4712541b58790002345c" }, "downloads": -1, "filename": "jawanndenn-1.6.1.tar.gz", "has_sig": false, "md5_digest": "261979f43ecefb6c3aa9093143b905a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68557, "upload_time": "2019-01-02T15:22:52", "url": "https://files.pythonhosted.org/packages/cc/ea/8c653c4ed05079960263358193344cb1ddd661dcbaeaea47d1832668ca1c/jawanndenn-1.6.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "261979f43ecefb6c3aa9093143b905a2", "sha256": "9f4554c57efd9ee50bc5209850f33d462cb55f1654bd4712541b58790002345c" }, "downloads": -1, "filename": "jawanndenn-1.6.1.tar.gz", "has_sig": false, "md5_digest": "261979f43ecefb6c3aa9093143b905a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68557, "upload_time": "2019-01-02T15:22:52", "url": "https://files.pythonhosted.org/packages/cc/ea/8c653c4ed05079960263358193344cb1ddd661dcbaeaea47d1832668ca1c/jawanndenn-1.6.1.tar.gz" } ] }