Metadata-Version: 2.1
Name: nc-py-api
Version: 0.0.27
Summary: Nextcloud Python Framework
Project-URL: Changelog, https://github.com/cloud-py-api/nc_py_api/blob/main/CHANGELOG.md
Project-URL: Documentation, https://cloud-py-api.github.io/nc_py_api/
Project-URL: Source, https://github.com/cloud-py-api/nc_py_api
Author-email: Alexander Piskun <bigcat88@icloud.com>
License-Expression: BSD-3-Clause
License-File: AUTHORS
License-File: LICENSE.txt
Keywords: api,client,framework,nextcloud
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.9
Requires-Dist: fastapi>=0.101
Requires-Dist: httpx>=0.24.1
Requires-Dist: pydantic>=2.1.1
Requires-Dist: python-dotenv>=1
Requires-Dist: requests>=2.31
Requires-Dist: xmltodict>=0.13
Provides-Extra: app
Requires-Dist: uvicorn[standard]>=0.23.2; extra == 'app'
Requires-Dist: xxhash>=3.3; extra == 'app'
Provides-Extra: bench
Requires-Dist: matplotlib; extra == 'bench'
Requires-Dist: nc-py-api[app]; extra == 'bench'
Requires-Dist: numpy; extra == 'bench'
Requires-Dist: py-cpuinfo; extra == 'bench'
Provides-Extra: dev
Requires-Dist: coverage; extra == 'dev'
Requires-Dist: nc-py-api[bench]; extra == 'dev'
Requires-Dist: pillow; extra == 'dev'
Requires-Dist: pre-commit; extra == 'dev'
Requires-Dist: pylint; extra == 'dev'
Requires-Dist: pytest; extra == 'dev'
Requires-Dist: selenium; extra == 'dev'
Provides-Extra: docs
Requires-Dist: nc-py-api[app]; extra == 'docs'
Requires-Dist: sphinx-copybutton; extra == 'docs'
Requires-Dist: sphinx-inline-tabs; extra == 'docs'
Requires-Dist: sphinx-issues>=3.0.1; extra == 'docs'
Requires-Dist: sphinx-rtd-theme>=1; extra == 'docs'
Requires-Dist: sphinx>=6.2; extra == 'docs'
Description-Content-Type: text/markdown

# Official Nextcloud Python Framework

[![Analysis & Coverage](https://github.com/cloud-py-api/nc_py_api/actions/workflows/analysis-coverage.yml/badge.svg)](https://github.com/cloud-py-api/nc_py_api/actions/workflows/analysis-coverage.yml)
[![Docs](https://github.com/cloud-py-api/nc_py_api/actions/workflows/docs.yml/badge.svg)](https://cloud-py-api.github.io/nc_py_api/)
[![codecov](https://codecov.io/github/cloud-py-api/nc_py_api/branch/main/graph/badge.svg?token=C91PL3FYDQ)](https://codecov.io/github/cloud-py-api/nc_py_api)

![NextcloudVersion](https://img.shields.io/badge/Nextcloud-26%20%7C%2027%20%7C%2028-blue)
![PythonVersion](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue)
![impl](https://img.shields.io/pypi/implementation/nc_py_api)
![pypi](https://img.shields.io/pypi/v/nc_py_api.svg)

Python library that provides a robust and well-documented API that allows developers to interact with and extend Nextcloud's functionality.

### Basic Features:
 * Operations with Files and Folders
 * ~~Operations with Trash bin and File versions~~
 * Operations with Users and User Groups
 * User status
 * Weather status
 * Notifications support
 * Shares support
 * ~~Talk support~~

### Extended Features with AppEcosystemV2:
 * Defining callback routes with `FastAPI` for Nextcloud
 * Registering UI elements in Nextcloud
 * Storing logs to the `nextcloud.log` file
 * Get/save key-value pairs in AppConfigEx/PreferencesEx tables.
 * **Tons of the cool stuff that is coming soon**

### Support

You can support us in several ways:

- ⭐️ Star our work (it really motivates)
- ❗️ Create an Issue or feature request (bring to us an excellent idea)
- 💁 Resolve some Issue or create a Pull Request (contribute to this project)
- 🙏 Write an example of its use or correct a typo in the documentation.

### 🚀 How to start

In a very close near future we will publish examples

### More Information

- [Documentation](https://cloud-py-api.github.io/nc_py_api/)
  - [Using it as a simple client](to-do)
  - [Writing a simple Nextcloud application](to-do)
  - [Writing a Nextcloud System Application](to-do)
- [Examples](https://github.com/cloud-py-api/nc_py_api/tree/main/examples)
- [Contribute](https://github.com/cloud-py-api/nc_py_api/blob/main/.github/CONTRIBUTING.md)
  - [Discussions](https://github.com/cloud-py-api/nc_py_api/discussions)
  - [Issues](https://github.com/cloud-py-api/nc_py_api/issues)
  - [Setting up dev environment](to-do)
- [Changelog](https://github.com/cloud-py-api/nc_py_api/blob/main/CHANGELOG.md)
