Django Notification App
Project description
DjNotification - Django Notification App
Overview
DjNotification
is a Django app designed to facilitate real-time notification management in a Django project. It provides features similar to Firebase Cloud Messaging (FCM) with WebSocket integration for seamless communication.
Key Features
-
Notification Groups: Create and manage notification groups with different types, including public, private, and custom groups.
-
Notification Types: Send various types of notifications, such as cards, modals, image-only, and top banners.
-
User Subscriptions: Allow users to subscribe and unsubscribe from notification groups.
-
Django Admin Integration: Manage subscriptions, groups, and notifications through the Django admin interface.
-
REST API Support: Use Django REST Framework to create, retrieve, and paginate notifications through API endpoints.
-
Scheduled Notifications: Admin can schedule notifications for the future by setting a specific time for them to be sent.
-
Expiration Time for Notifications: Notifications can have an expiration time, and users who join a group with active notifications can receive those notifications.
-
Real-time Member Presence: Users can see real-time updates of members present in each group.
-
Send Notifications via API or Admin Panel: Notifications can be sent programmatically via API using the
NotificationAPIView
or manually created and sent through the Django admin panel.
Example Usage
-
Install DjNotification
pip install djnotification
-
Add DjNotification to INSTALLED_APPS in settings.py:
INSTALLED_APPS = [ # ... 'djnotification', # ... ]
-
Run Migrations
python manage.py migrate
-
Run Celery Workers Ensure Celery is installed (pip install celery) and run the Celery worker:
celery -A your_project_name worker -l info
-
Define Notification Groups Define notification groups using Django admin or your application code. Groups are instances of the Group model in the djnotification app.
-
Send Notification from API or Admin Sending Notification from API or Admin panel action.
Project Concept
Imagine DjNotification as a Django-based notification system similar to Firebase Cloud Messaging (FCM) with WebSocket integration. It allows for real-time communication and notification delivery to users or groups, making it a powerful tool for keeping users informed and engaged in your Django project.
Contributing
Contributions are welcome! Please follow these guidelines when contributing to the project. Fork the repository, create a branch, make your changes, and submit a pull request.
License
This project is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file djnotification-0.2.tar.gz
.
File metadata
- Download URL: djnotification-0.2.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1b8bdccb294b1a29408e8294876d87deb2a4a4cda2955227839afc752694ebfb |
|
MD5 | 480a94c4b726cbf2220c40a60b0db826 |
|
BLAKE2b-256 | 99f8ecc2b391e6d18ad39a1d1c272e135311d25e359d4233f144d02faeac6c9e |