{ "info": { "author": "Antony Orenge", "author_email": "orenge@ut.ee", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Education" ], "description": "Kool\n====\n\n|CircleCI| |codecov| |Documentation Status|\n\nKool is an open source platform for online classroom management.\n\nThe aim is to create a minimalist framework that educationist can extend\nwhen building an online classroom management system.\n\nThe current version supports extending class User, Course, and Quiz. The\ndatabase is a small CSV flatfile implementation.\n\nGetting Started\n---------------\n\nThese instructions will get you a copy of the project up and running on\nyour local machine for development and testing purposes.\n\nPrerequisites\n~~~~~~~~~~~~~\n\n- Python3. See `Python3\n Tutorial `__\n- Virtualenv. See `Virtual Environments\n Tutorial `__\n- Pip. See `Quickstart to installing Python\n modules `__\n\nInstalling\n~~~~~~~~~~\n\n1. Fetch the latest copy of the project from github\n\n::\n\n git clone https://github.com/edasi/kool.git\n\n2. Setup a virtual environment\n\n::\n\n python3 -m venv kool-env\n\nOn Windows, run:\n\n::\n\n kool-env\\Scripts\\activate.bat\n\nOn Unix or MacOS, run:\n\n::\n\n source kool-env/bin/activate\n\n3. Install requirements\n\n::\n\n pip install -U pip\n pip install -r requirements.txt\n\nCode Examples\n~~~~~~~~~~~~~\n\nOn python interactive shell, start by extending class User to create a\nStudent.\n\n.. code:: python\n\n from kool.contrib.auth import User\n\n # Extending class User\n class Student(User):\n pass\n\n student = Student(first_name='John', last_name='Doe', email='john@doe.com', password='secretpwd')\n\n student.save()\n\nTo insert another student record in an existing table\n\n.. code:: python\n\n from kool.db.models import table\n\n # Get Student table to perform CRUD operations\n student = table(Student)\n\n student.insert({'first_name': 'Mary', 'last_name': 'Doe', 'email': 'mary@doe.com', 'password': 'secretpwd2'})\n\nTo query an existing table\n\n.. code:: python\n\n from kool.db.models import where\n\n student.filter(where('last_name') == 'Doe')\n\nTo perform complex queries\n\n.. code:: python\n\n from kool.db.flatfile import Query\n\n Student = Query()\n\n student.filter((Student.first_name == 'John') | (Student.first_name == 'Mary'))\n\nTests\n-----\n\nWritten tests are inside the tests/ directory. They are implemented\nusing the pytest module.\n\nOn a terminal, run:\n\n::\n\n pytest tests/\n\nTest Coverage\n~~~~~~~~~~~~~\n\nTest coverage is covered by\n`coverage `__\nand `pytest-cov `__ tools.\nLocal test reports are built in html format inside the htmlcov/\ndirectory that is automatically generated when pytest is run. However,\nonline test reports are built by\n`CircleCI `__\n\nRelated projects\n----------------\n\n- `Blackboard `__\n- `Canvas `__\n- `Chamilo `__\n- `Moodle `__\n- `OpenEDX `__\n- `OpenSWAD `__\n- `Privacy preserving data\n publishing `__\n- `Pygrades `__\n- `List on\n Wikipedia `__\n\nDocumentation\n-------------\n\nRead the latest project documentation at\n`kool-docs `__\n\nLicense\n-------\n\nKool is licensed under `MIT\nLicense `__\n\n.. |CircleCI| image:: https://circleci.com/gh/edasi/kool/tree/master.svg?style=shield\n :target: https://circleci.com/gh/edasi/kool/tree/master\n.. |codecov| image:: https://codecov.io/gh/edasi/kool/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/edasi/kool\n.. |Documentation Status| image:: https://readthedocs.org/projects/kool-docs/badge/?version=latest\n :target: http://kool-docs.readthedocs.io/en/latest/?badge=latest\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/edasi/kool", "keywords": "education learning database nosql", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "Kool", "package_url": "https://pypi.org/project/Kool/", "platform": "", "project_url": "https://pypi.org/project/Kool/", "project_urls": { "Homepage": "https://github.com/edasi/kool" }, "release_url": "https://pypi.org/project/Kool/0.0.2/", "requires_dist": null, "requires_python": ">=3", "summary": "Kool is an open source platform for online classroom management.", "version": "0.0.2" }, "last_serial": 3162989, "releases": { "0.0.2": [ { "comment_text": "", "digests": { "md5": "bc359abebc639d3045e04fc6aedc7d0f", "sha256": "9e1c7b8ea6fa92ab57a01a47d347bd92a1065a52b13087de9e7a72715c0dda0d" }, "downloads": -1, "filename": "Kool-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "bc359abebc639d3045e04fc6aedc7d0f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 33804, "upload_time": "2017-09-10T10:24:50", "url": "https://files.pythonhosted.org/packages/70/54/19679f5dffcbe49782b220037e9ccbff811f13f2cd38f18b88da28a25e56/Kool-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c9504ed399251ec192f0ff9b7228bba5", "sha256": "0c2ad1b128e8d8efdb93cbea6a1677adfcb351692b837be901d778714f1d6510" }, "downloads": -1, "filename": "Kool-0.0.2.tar.gz", "has_sig": false, "md5_digest": "c9504ed399251ec192f0ff9b7228bba5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 21683, "upload_time": "2017-09-10T10:24:52", "url": "https://files.pythonhosted.org/packages/b9/b3/36b4b9e1e1e6dc670e1568306f6bb34aa9a0e2c7b813d6ef5952aea14723/Kool-0.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bc359abebc639d3045e04fc6aedc7d0f", "sha256": "9e1c7b8ea6fa92ab57a01a47d347bd92a1065a52b13087de9e7a72715c0dda0d" }, "downloads": -1, "filename": "Kool-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "bc359abebc639d3045e04fc6aedc7d0f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 33804, "upload_time": "2017-09-10T10:24:50", "url": "https://files.pythonhosted.org/packages/70/54/19679f5dffcbe49782b220037e9ccbff811f13f2cd38f18b88da28a25e56/Kool-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c9504ed399251ec192f0ff9b7228bba5", "sha256": "0c2ad1b128e8d8efdb93cbea6a1677adfcb351692b837be901d778714f1d6510" }, "downloads": -1, "filename": "Kool-0.0.2.tar.gz", "has_sig": false, "md5_digest": "c9504ed399251ec192f0ff9b7228bba5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 21683, "upload_time": "2017-09-10T10:24:52", "url": "https://files.pythonhosted.org/packages/b9/b3/36b4b9e1e1e6dc670e1568306f6bb34aa9a0e2c7b813d6ef5952aea14723/Kool-0.0.2.tar.gz" } ] }