https://github.com/advanced-systems/anonpy
A slick and modern Python package for anonymous file sharing.
https://github.com/advanced-systems/anonpy
advanced-systems anonymous filesharing
Last synced: 5 months ago
JSON representation
A slick and modern Python package for anonymous file sharing.
- Host: GitHub
- URL: https://github.com/advanced-systems/anonpy
- Owner: Advanced-Systems
- License: mit
- Created: 2023-08-08T23:12:07.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2024-03-18T16:51:56.000Z (over 2 years ago)
- Last Synced: 2025-10-12T07:45:23.329Z (9 months ago)
- Topics: advanced-systems, anonymous, filesharing
- Language: Python
- Homepage:
- Size: 323 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
## About
The `anonpy` module makes it easier to communicate with REST APIs for anonymously
uploading and downloading files. It implements an extensible provider-independent
class system and also comes with an intuitive CLI or lightweight GUI for interactive
usage.
Documentation for this project is located on the GitHub
[Wiki](https://github.com/Advanced-Systems/anonpy/wiki)
page.
## Installation
`anonpy` is available on PyPI:
```powershell
pip install anonpy
```
Release candidates
([preview versions](https://test.pypi.org/project/anonpy/))
of this library can be installed with:
```powershell
pip install -i https://test.pypi.org/simple/ anonpy
```
To ensure a clean and isolated environment for running `anonpy`'s CLI, it is
recommended to install it with the [`pipx`](https://pypa.github.io/pipx/) command.
```powershell
pipx install anonpy
```
## Library
`anonpy` can be used to interface with a wide variety of REST services by
building a contract with the `Endpoint` class.
```python
from anonpy import AnonPy, Endpoint
api = "https://pixeldrain.com/api/"
endpoint = Endpoint(upload="/file", download="file/{}", preview="/file/{}/info")
anon = AnonPy(api, endpoint)
# retrieve resource meta data without committing to a download
preview = anon.preview("LNcXZ9UM")
print(f"{preview=}")
# download a resource to the current working directory
download = anon.download("LNcXZ9UM", enable_progressbar=True)
print(f"{download=}")
# upload a file
upload = anon.upload("homework.docx", enable_progressbar=True)
print(f"{upload=}")
```
## Command Line Interface
Read the help manual:
```powershell
anonpy --help
```
## Graphical User Interface
> ⚠ This feature is currently not implemented yet, but is expected to be released
> in version 1.2.0
Launch a graphical user interface for uploading and downloading files:
```powershell
anonpy --gui
```
## Acknowledgements
Historically speaking, this module can be considered a continuation of the
[`anonfile-api`](https://github.com/nstrydom2/anonfile-api/) project, although
any resemblance of compatibility may only be temporary. On 16 August 2023, the
anonymous file sharing website shut down due to overwhelming
abuse by the community, which was the driving factor for creating a backend-agnostic
library that can stand the test of time. That's why to this day, `anonpy` still
uses the anonfiles logo as a small nod to its past.
Special thanks to [@aaronlyy](https://github.com/aaronlyy) for passing on the
PyPI name [`anonpy`](https://pypi.org/project/anonpy/) to [@StefanGreve](https://github.com/aaronlyy).
See also the list of
[contributors](https://github.com/Advanced-Systems/anonpy/contributors)
who participated in the development of this project.
## Further Reading
This Project is licensed under the
[MIT](https://github.com/Advanced-Systems/anonpy/blob/master/LICENSE)
license.
Check out the
[Contributing Guidelines](https://github.com/Advanced-Systems/anonpy/blob/master/CONTRIBUTING.md)
to learn more about how you can help this project grow.
Navigate to the
[Discussions](https://github.com/Advanced-Systems/anonpy/discussions)
panel to ask questions or make feature requests.