semvec/pypi-packages huggingface dataset:
git-kahoot 0.2.3
Generate a Kahoot quiz from commits in a git repository

# git-kahoot
Generate Kahoot quiz from commits in a git repository.

## Installation

Requires Python 3.
```
pip install git-kahoot
```

## Usage
```
Usage: git-kahoot [OPTIONS]

  Generate a Kahoot quiz from commits in a git repository.

Options:
  -d, --directory DIRECTORY       path to git repository (default: current
                                  directory) Specify this option multiple
                                  times to use multiple repositories.
  --since [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]
                                  only include commits since this date
  --until [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]
                                  only include commits up until this date
  -n, --count INTEGER RANGE       number of questions (default: 20, max: 100)
  -u, --username TEXT             Kahoot user name  [required]
  -p, --password TEXT             Kahoot password  [required]
  -t, --title TEXT                title of the generated quiz (default: "Git
                                  Commiter Quiz"
  --help                          Show this message and exit.
```

## Examples

Specify path to git repository using the -d option. Omitting this options will try to use the current directory.
```
git-kahoot --directory /my/repo
```

Multiple git repositories can be specfied. Commits will be selected in a round-robin fashion.
```
git-kahoot --directory /my/repo --directory /my/second-repo
```

Only include commits between a date range.
```
git-kahoot --directory /my/repo --since 2015-01-01 --until 2018-01-01
```

Set the title of the generated quiz and the number of questions.
```
git-kahoot --title "My glorious quiz" --count 10
```

Specify credentials for your Kahoot account. You will be prompted for these credentials if you omit them.
```
git-kahoot --username AzureDiamond --password hunter2
```

## Development setup

Assuming Python 3, pip and virtualenv is installed, clone the repository, set up a virtualenv and install the package as editable. 

```
git clone git@github.com:janerist/git-kahoot.git
cd git-kahoot
virtualenv -p python3 venv
. venv/bin/activate (Windows: venv/Scripts/activate)
pip install --editable .
git-kahoot
```
dynamicxml 1.2
An etree utility package

# dynamicxml

A simple extension of Etree that gives users the ability to directly access attributes and nodes without having to
implement boilerplate python code.

Rationale for this library: [Dynamic XML Library with Python](https://claybrooks.github.io/python/2021/04/09/python-dynamic-xml.html)

Pip Installer: [pip](https://pypi.org/project/dynamicxml/)

python -m pip install dynamicxml

`DynamicElement` is a drop-in replacement for any Etree code that you already have

```xml
<!-- ConfigFile.xml -->
<ConfigurationData>
    <Runtime timeout="1000" runtimeDataPath="/path/to/runtime/data" />
</ConfigurationData>
```

```python
# main.py
import dynamicxml

# parse the data and get back an instance of DynamicElement
root = dynamicxml.parse('data/ConfigFile.xml')

# Print the tag of the root element, just like you would a typical etree
# element
print (root.tag)

# get access to the runtime data node, which is a child of
# <ConfigurationData />.  The library returns a list of child
# nodes, regardless of how many elements there are.  An "AttributeError"
# is raised if the node does not exist.
runtimeNode = root.Runtime[0]

# Access the attributes of the node directly using the "attr_" prefix.
print (runtimeNode.attr_timeout)
print (runtimeNode.attr_runtimeDataPath)

# set the data directly
runtimeNode.attr_timeout = str(int(runtimeNode.attr_timeout) + 1)

# easy writing of the data
dynamicxml.write('data/ConfigFile_Updated.xml', root)

```
awokado 0.7
Fast and flexible API framework based on Falcon and SQLAlchemy
Requires Python: >=3.7
Keywords: api falcon rest sqlalchemy sqlalchemy-core wsgi

[![pipeline status](https://gitlab.com/5783354/awokado/badges/master/pipeline.svg)](https://gitlab.com/5783354/awokado/commits/master)
[![coverage report](https://gitlab.com/5783354/awokado/badges/master/coverage.svg)](https://gitlab.com/5783354/awokado/commits/master)
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/349840fc0f144baba98aa04ad19bc10a)](https://www.codacy.com/app/5783354/awokado?utm_source=gitlab.com&amp;utm_medium=referral&amp;utm_content=5783354/awokado&amp;utm_campaign=Badge_Grade)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/awokado.svg?style=popout)](https://pypi.org/project/awokado/)
[![Checked with mypy](http://www.mypy-lang.org/static/mypy_badge.svg)](http://mypy-lang.org/)
[![PyPI](https://img.shields.io/pypi/v/awokado)](https://pypi.org/project/awokado/)


Fast and flexible low-level API framework based on [Falcon](https://github.com/falconry/falcon), [Marshmallow](https://github.com/marshmallow-code/marshmallow/) and [SQLAlchemy Core](https://docs.sqlalchemy.org/en/latest/core/)

API is close to OpenAPI 3.0 specification

**Currently is under active development**

 ![Awokado Diagram](https://raw.githubusercontent.com/5783354/awokado/master/awokado_diagram.png)

# Documentation

You can find in: [Documentation](https://awokado.readthedocs.io/en/latest/)

# Changelog

You can find in: [CHANGELOG.md](https://gitlab.com/5783354/awokado/blob/master/CHANGELOG.md)

# Installation

```sh
$ pipenv install awokado
```
or
```sh
$ pip install awokado
```

Awokado uses [dynaconf](https://github.com/rochacbruno/dynaconf/) for loading it settings

You can find all available variables in `settings.toml` file

# Contributing

### Tests

To run tests locally you should create `.secrets.toml` file in the project root directory:

```toml
[default]
    DATABASE_PASSWORD='your_db_password_here'
    DATABASE_HOST='localhost'
    DATABASE_USER='your_db_username_here'
    DATABASE_PORT=5432 #DB port
    DATABASE_DB='test'

```
or

```toml
[default]
    DATABASE_URL='your_full_db_url'

```
Do not use both ways at the same time, you will get error!

Install required packages:

`$ pipenv install --dev`

Then you can setup your database: 

`$ pipenv python -m tests.test_app.init_db`

And run tests:

`$ pipenv python -m unittest`


# Authors
Is being made with the help of
 
[Alex Sidorov](mailto:alex.n.sidorov@gmail.com)

[Ksenia Malyavskaya](mailto:ksenia.malyavskaya@upsilonit.com)

[Pavel Danilyuk](mailto:pavel.danilyuk@upsilonit.com)

[Andrew Osenenko](mailto:andrew.osenenko@upsilonit.com)