Metadata-Version: 2.5
Name: university-social
Version: 0.1.1
Summary: University Social: posts, comments, reactions, reposts, polls, media, feeds and a block-aware social graph for the University platform.
Project-URL: Homepage, https://github.com/NzeStan/University
Project-URL: Documentation, https://github.com/NzeStan/University/blob/main/docs/modules/social.md
Project-URL: Source, https://github.com/NzeStan/University
Project-URL: Changelog, https://github.com/NzeStan/University/blob/main/CHANGELOG.md
Author-email: Ifeanyi Stanley <nnamaniifeanyi10@gmail.com>
License-Expression: MIT
License-File: LICENSE
Keywords: africa,django,drf,feed,followers,posts,social,university
Classifier: Development Status :: 3 - Alpha
Classifier: Framework :: Django
Classifier: Framework :: Django :: 5.2
Classifier: Framework :: Django :: 6.0
Classifier: Framework :: Django :: 6.1
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Typing :: Typed
Requires-Python: >=3.11
Requires-Dist: university-core<0.2,>=0.1.1
Provides-Extra: test
Requires-Dist: drf-spectacular>=0.27; extra == 'test'
Requires-Dist: pytest-cov>=5; extra == 'test'
Requires-Dist: pytest-django>=4.8; extra == 'test'
Requires-Dist: pytest>=8; extra == 'test'
Description-Content-Type: text/markdown

# university-social

Posts, comments, reactions, reposts, polls, media, feeds and a **block-aware social graph** for
the [University platform](https://github.com/NzeStan/University). This is an optional
*level two* module that depends only on `university-core`.

- Posts with text, images, polls, hashtags, mentions and links. Edits keep a revision history.
- Visibility per post: `public`, `followers`, `private`, or an **audience** (`institution`,
  `campus`, `community`). Audience membership comes from whichever modules are installed,
  through Core's `scopes.memberships` hook, so social doesn't depend on them.
- Two-level comment threads, reactions, reposts and quotes, bookmarks.
- Follow (with optional approval), block, mute and restrict. Blocks are enforced server-side
  everywhere, including in other modules, through Core hooks.
- Pluggable feeds: home, explore, and trending ranked by engagement velocity.
- Anti-spam screening, rate limits, audited moderation scoped to the content's audience, data
  export, purge, and retention of unattached uploads.

```bash
pip install university-social
```

```python
INSTALLED_APPS = [..., *CORE_APPS, "university.social"]
```

Guide: https://github.com/NzeStan/University/blob/main/docs/modules/social.md
