A RESTful chat API server example used Django REST framework with pytest
- Python 3
- Django 2
- Django REST framework 3
- pytest
- 1:1 chat
- list of chat room
- register & login with nickname
- message will be removed after short time
- search message
- push notification
You can see API document
For easily understanding, you can follow development story.
- Init develop environment -
.editorconfig
,.gitignore
,pipenv
- Separate settings to development and production
[commit]
- Implement basic models, serializers, viewsets and nested router.
[merge commit]
- Add basic tests using pytest
[merge commit]
- Implement user features with jwt
[merge commit]
- Update dependencies - drf-simplejwt
- Add jwt authentication views
- Test views with jwt authentication and implement GET/POST views
- Fix wrong behavior of POST, Fix wrong user registration
- Implement search feature
[merge commit]
- Implement push notification feature
[merge commit]
- Update dependencies - django-background-tasks
- Test using mock
[commit]
- Delete messages after a certain amount of time
[merge commit]
- Dockerize