Django Activity Stream


1. Simple Activity Stream with Like and Comment

from django.contrib.auth import get_user_model
from django.db import models
from django.utils import timezone

User = get_user_model()

class Activity(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    content = models.TextField()
    created_at = models.DateTimeField(default=timezone.now)

    def __str__(self):
        return f"{self.user.username}: {self.content}"

class Like(models.Model):
    activity = models.ForeignKey(Activity, on_delete=models.CASCADE)
    user = models.ForeignKey(User, on_delete=models.CASCADE)

class Comment(models.Model):
    activity = models.ForeignKey(Activity, on_delete=models.CASCADE)
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    content = models.TextField()

2. Nested Activity Stream with Replies

3. Activity Stream with Rich Text

4. Activity Stream with Attachments

5. Activity Stream with Filtering and Sorting

6. Activity Stream with Real-Time Notifications

7. Activity Stream with Searchable Content

8. Activity Stream with Custom Actions

9. Activity Stream with Feed Aggregation

10. Activity Stream with Gamification

11. Activity Stream with Timeline

12. Activity Stream with User Groups

13. Activity Stream with Privacy Settings

14. Activity Stream with Custom Filters

15. Activity Stream with Embeddable Widgets

16. Activity Stream with Markdown Support

17. Activity Stream with HTML Purifier

18. Activity Stream with Version Control

19. Activity Stream with Rate Limiting

20. Activity Stream with Spam Detection