semvec/pypi-packages huggingface dataset:
ol-openedx-checkout-external 0.2.0
An Open edX plugin to add API for external checkouts
Requires Python: >=3.11

External Checkout Plugin
=============================

A django app plugin to add a new API to Open edX for external checkouts.
The plugin redirects the user the desired external ecommerce service upon clicking the **Upgrade** button in LMS dashboard or Learning MFE.


Installation
------------

For detailed installation instructions, please refer to the `plugin installation guide <../../docs#installation-guide>`_.

Installation required in:

* LMS

Configuration
-------------

**1) edx-platform configuration (Environment/Settings)**

- You might need to add the following configuration values to the config file in Open edX. For any release after Juniper, that config file is ``/edx/etc/lms.yml``. If you're using ``private.py``, add these values to ``lms/envs/private.py``. These should be added to the top level. **Ask a fellow developer or devops for these values.**

  .. code-block::

    MARKETING_SITE_CHECKOUT_URL = <MARKETING_SITE_CHECKOUT_URL>  # The URL of checkout/cart API in your marketing site
    ECOMMERCE_PUBLIC_URL_ROOT = <LMS_BASE_URL>  # Because we want to use external ecommerce using this API plugin for redirection

- For Tutor installations, these values can also be managed through a `custom tutor plugin <https://docs.tutor.edly.io/tutorials/plugin.html#plugin-development-tutorial>`_.

**2) edx-platform configuration (Django Admin)**

::

    1. Create a new ecommerce configuration in http://<LMS_BASE>/admin/commerce/commerceconfiguration with following values:

        a. Set value for "Basket checkout page" to "/checkout-external/". (When set, the ecommerce will redirect the `Upgrade Course` requests to this plugin)

        b. "Enabled" checked.

        c. "Checkout on ecommerce service" checked.

        d. Other values are arbitrary, but you can fill them out as per your need.

    2. Make sure to create CourseModes(e.g. "Verified") for the courses with non-empty and unique SKU value.


How To Use
----------

The API supports a GET call with SKU as query parameter.

**API Request**

To manually call the API, Send a GET request to ``<LMS_BASE>/checkout-external?sku=<sku_id>``:

A sample request looks like below:

::

    http://local.openedx.io:8000/checkout-external?sku=ABC45F


API Response
------------

The successful response would be a redirect to the marketing site with ``302`` status code and a failure response would be a ``400`` status code with basic error fields.


::

    With 302 status code (If your marketing checkout URL is "https://<marketing_site_base>/checkout") the resulting redirect would be:

    https://<marketing_site_base>/checkout/?course_id=<course_id against the sku in CourseMode>

::

    With 400 status code

    {
        "developer_message": "<Message for the developer>",
        "error_code": "internal_error"
    }
xcgui 0.1.9
xcgui - bundled xcgui for python
Requires Python: >=3.9
Keywords: xcgui, pybind11, ui

<h1 align="center">XCGUI for Python</h1>
<p align="center">
    <a href="https://github.com/smallevilbeast/pyxcgui/releases"><img src="https://img.shields.io/badge/release-0.1.8-blue.svg?" alt="release"></a>
    <a href="http://www.xcgui.com"><img src="https://img.shields.io/badge/XCGUI-3.3.9.1-blue.svg?" alt="XCGUI"></a>
    <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-brightgreen.svg?" alt="License"></a>
    <br><br>
    <a href="./examples">程序示例</a>&nbsp;&nbsp;
    <a href="http://www.xcgui.com/doc-ui/">官方文档</a>&nbsp;&nbsp;
	<a href="http://mall.xcgui.com">官方资源</a>
</p>




## 介绍

- 本库封装自炫彩界面库，功能丰富(1000多个API接口)，简单易用，轻量级，高度DIY自定义，支持一键换肤。
- 炫彩界面库是由C/C++语言开发：软件运行效率高，不需要第三方库的支持，不依赖MFC，ATL，WINDOWS标准控件等。
- DirectUI设计思想：在窗口内没有子窗口，界面元素都是逻辑上的区域(无HWND句柄，安全，灵活)，所有UI元素都是自主开发(不受系统限制)，更加灵活的实现各种程序界面，满足不同用户的需求。
- 拥有免费的UI设计器：快速开发工具，所见即所得，高度自定义系统(DIY)，让UI开发变的更加简单。
- 支持Direct2D，硬件加速，能更大程度的发挥硬件特性，创建高性能，高质量的2D图形。
- 有完善的中文官方文档：[中文官方文档](http://www.xcgui.com/doc-ui/)

## 获取

```bash
pip install xcgui
```
国内源安装
```bash
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xcgui
```

## 可视化UI设计器

使用UI设计器可以快速设计界面，节省大量代码。

![uidesigner](https://z3.ax1x.com/2021/09/15/4Vmh9S.png)

[设计器使用例子]只有这么多代码：

```python
from xcgui import XApp, XWindow, XDesigner

app = XApp()
app.enableDPI(True)
XDesigner.loadResource("baidu\\resource.res")


class BaiduWindow(XWindow):
    def __init__(self):
        super(BaiduWindow, self).__init__()
        self.loadLayout("baidu\\main.xml")
        
        
window = BaiduWindow()
window.showWindow()
app.run()
app.exit()
```


## 简单窗口（纯代码）



```python
# -*- coding: utf8 -*-
import xcgui
from xcgui import XApp, XWindow, XButton, XEdit


class DemoWindow(XWindow):
    def __init__(self):
        super(DemoWindow, self).__init__(400, 300, "XCGUI界面库 for python")
        self.enableLayout(True)
        self.setAlignV(xcgui.layout_align_center)
        self.setAlignH(xcgui.layout_align_center)
        self.enableHorizon(False)
        self.setSpace(20)
        self.btn = XButton(100, 30, "测试", self)
        self.btn.regEvent(xcgui.XE_BNCLICK, self.onBtnClick)
        self.edit = XEdit(200, 30, self)

    def onBtnClick(self, event, userdata):
        self.edit.setText("你好，世界！")
        self.edit.redraw(True)


def main():
    app = XApp()
    app.enableDPI(True)
    window = DemoWindow()
    window.showWindow()
    app.run()
    app.exit()


if __name__ == '__main__':
    main()

```
ol-openedx-rapid-response-reports 0.4.0
An Open edX plugin to add rapid response reports support
Requires Python: >=3.11

Rapid Response Reports Plugin
=============================

Overview
--------

A django app plugin for edx-platform to enable "Rapid Response Reports" functionality in "Instructor" tab.


**NOTE:**

If you are using `Nutmeg <https://github.com/openedx/edx-platform/tree/open-release/nutmeg.master>`_ or a more recent release of open edX, You can skip the cherry-picking step mentioned below and just use ``0.2.0`` or above version of the plugin. For any releases prior to ``Nutmeg`` please keep reading below.

(For Open edX releases prior to `Nutmeg`) We had to make some changes to edx-platform itself in order to add the ``Rapid Responses`` tab to the instructor dashboard, so the ``edx-platform`` branch/tag you're using must include this commit for the plugin to work properly:

- https://github.com/mitodl/edx-platform/pull/275/commits/bcad8505918993dac7de099d8e9d48f868bceda7

Dependencies
---------------

This plugin generates reports for `Rapid Response xBlock <https://github.com/mitodl/rapid-response-xblock>`_ submissions, so you need to have that package installed in order to use this plugin. That package is on PyPI and can be installed via pip.

Installation
------------

For detailed installation instructions, please refer to the `plugin installation guide <../../docs#installation-guide>`_.

Installation required in:

* LMS

How To Use
----------

1) Follow the `Rapid Response xBlock <https://github.com/mitodl/rapid-response-xblock>`_ instructions to create multiple choice problems, configure them for rapid response, open the problem for rapid responses, and add some submissions while the problem is open.
2) Log into the LMS as an admin/staff, open the rapid response-enabled course, and click "Instructor" tab. You should see a "Rapid Responses" tab.
3) Click the "Rapid Responses" tab. You should see a list of timestamped links. Clicking any of those links should download a CSV report.
openedx-companion-auth 1.2.0
A package to add login redirection from Open edX to MIT applications
Requires Python: >=3.11
Keywords: Python, edx

Open edX Auth Companion
=======================

An Open edX plugin that redirects users from edx-platform to MIT applications

Version Compatibility
---------------------

Compatible with the Nutmeg release of the Open edX and onwards. May work with prior releases as well.

Installing The Plugin
---------------------

For detailed installation instructions, please refer to the `plugin installation guide <../../docs#installation-guide>`_.

Installation required in:

* LMS

Configurations
--------------
You have the following configuration properties to customize your plugin behavior:

* **MITX_REDIRECT_ENABLED:** The middleware checks this value and redirects only when it is set to ``True``.
* **MITX_REDIRECT_LOGIN_URL:** The URL where the user is redirected for login.
* **MITX_REDIRECT_ALLOW_RE_LIST:** A list of paths on which the middleware does not redirect to the ``MITX_REDIRECT_LOGIN_URL``.
* **MITX_REDIRECT_DENY_RE_LIST:** A list of paths on which the middleware redirects to the ``MITX_REDIRECT_LOGIN_URL``.

Working
--------
* Install the plugin in the lms following the installation steps above.
* Verify that you are not logged in on edx-platform.
* Go to `http://local.openedx.io:8000`. You should be redirected to the ``MITX_REDIRECT_LOGIN_URL``
ol-social-auth 0.2.0
An Open edX plugin implementing MIT social auth backend
Requires Python: >=3.11
Keywords: Python, edx

Open Learning Social Auth
==========================

An Open edX plugin implementing MIT social auth backend

Version Compatibility
---------------------

Compatible with all edx releases

Installing The Plugin
---------------------

For detailed installation instructions, please refer to the `plugin installation guide <../../docs#installation-guide>`_.

Installation required in:

* LMS

Configurations
--------------
This section outlines the steps for integrating your application with ol-social-auth for various deployment scenarios. Please refer to the corresponding documentation for detailed instructions.

* **Devstack:** To configure ol-social-auth with an edx-platform instance provisioned using devstack, follow the instructions `here <https://mitodl.github.io/handbook/openedx/MITx-edx-integration-devstack.html>`_
* **Tutor:** To configure ol-social-auth with an edx-platform instance provisioned using tutor, follow the instructions `here also <https://mitodl.github.io/handbook/openedx/MITx-edx-integration-tutor.html>`_


How to use
----------
Make sure to properly configure the plugin following the links in the above "Configurations" section before use.

* Install the plugin in the lms following the installation steps above.
* Verify that you are not logged in on edx-platform.
* Create a new user in your MIT application and verify that a corresponding user is successfully created on the edX platform.
ol-openedx-course-export 0.2.0
An Open edX plugin to add API for course export to s3
Requires Python: >=3.11

Course Export S3 Plugin
=============================

A django app plugin to add a new API to Open edX to export courses to S3 buckets.


Installation
------------

For detailed installation instructions, please refer to the `plugin installation guide <../../docs#installation-guide>`_.

Installation required in:

* Studio (CMS)

Configuration
-------------

**1) edx-platform configuration**

- You might need to add the following configuration values to the config file in Open edX. For any release after Juniper, that config file is ``/edx/etc/cms.yml``. If you're using ``private.py``, add these values to ``cms/envs/private.py``. These should be added to the top level. **Ask a fellow developer or devops for these values.**

  .. code-block::


    AWS_ACCESS_KEY_ID: <your aws access id>
    AWS_SECRET_ACCESS_KEY: <your api access key>
    COURSE_IMPORT_EXPORT_BUCKET: <bucket name to export the courses to>

- For Tutor installations, these values can also be managed through a `custom tutor plugin <https://docs.tutor.edly.io/tutorials/plugin.html#plugin-development-tutorial>`_.

How To Use
----------
The API supports a POST API call that accepts the list of course Ids and returns the uploaded paths of the courses on S3

To call the API, Send a POST request to `<STUDIO_BASE>/api/courses/v0/export/` with the a payload with a list of course IDs that might look like:


.. code-block::


    {
       "courses": ["course-v1:edX+DemoX+Demo_Course"]
    }


.. note::

    The API requires JWT authentication. Follow the instructions at `this link <https://docs.openedx.org/projects/edx-platform/en/latest/how-tos/use_the_api.html>`_ to generate a JWT token and use it in the request headers.


The successful response would look like:


.. code-block::

    With 200

    {
        "successful_uploads": {
            "course-v1:edX+DemoX+Demo_Course": "https://bucket_name.s3.amazonaws.com/course-v1:edX+DemoX+Demo_Course.tar.gz",
            "course-v1:edX+Test+Test_Course": "https://bucket_name.s3.amazonaws.com/course-v1:edX+Test+Test_Course.tar.gz"
        },
        "failed_uploads": {}
    }

    With 400

    {
        "successful_uploads": {
            "course-v1:edX+DemoX+Demo_Course": "https://bucket_name.s3.amazonaws.com/course-v1:edX+DemoX+Demo_Course.tar.gz",
        },
        "failed_uploads": {
            "course-v1:edX+Test+Test_Course": "Error message"
        }
    }


The response will contain either the s3 bucket url for successful uploads and/or an error message for failed uploads.