How webnoureddine/chatappdj works
This is a React chat application backed by a Django REST API, despite the README’s Spring Boot description. The main workflow is signup/login, room discovery and joining, then message exchange with presence and read/viewer information; users can also manage profiles and rooms. The frontend excerpts show the API calls and the backend excerpts show corresponding view behavior, but several modules are only represented by their paths, so uncertain internal wiring is omitted.
Main entry points: views.py REST endpoints · api.js HTTP API client · App.js Routing and session · ChatRoom.js Chat interaction
Components 15
React client
- Routing and session
sic_front/chatterbox-tailwind/src/App.js - Login and signup
sic_front/chatterbox-tailwind/src/component/Login.js - Signup form
sic_front/chatterbox-tailwind/src/component/Signup.js - Room discovery
sic_front/chatterbox-tailwind/src/component/Room.js - Chat interaction
sic_front/chatterbox-tailwind/src/component/ChatRoom.js - Profile editing
sic_front/chatterbox-tailwind/src/component/Profile.js - HTTP API client
sic_front/chatterbox-tailwind/src/component/api.js
Django API
- REST endpoints
sic_back_django/sic_back_django/chat/views.py - JWT authentication
sic_back_django/sic_back_django/chat/authentication.py - JWT utilities
sic_back_django/sic_back_django/chat/jwt_utils.py - Live event stream
sic_back_django/sic_back_django/chat/sse.py
Chat domain
- Users rooms messages
sic_back_django/sic_back_django/chat/models.py - Response serialization
sic_back_django/sic_back_django/chat/serializers.py
Persistence
- PostgreSQL database
sic_back_django/sic_back_django/config/settings.py
Other components
- Chat user
Connections 22
- Chat user → Routing and session: uses
- Routing and session → Login and signup: routes to
- Routing and session → Signup form: routes to
- Routing and session → Room discovery: routes to
- Routing and session → Chat interaction: routes to
- Chat user → Room discovery: selects rooms
- Chat user → Chat interaction: sends messages
- Chat user → Profile editing: edits profile
- Login and signup → HTTP API client: requests
- Signup form → HTTP API client: requests
- Room discovery → HTTP API client: requests
- Chat interaction → HTTP API client: requests
- Profile editing → HTTP API client: requests
- HTTP API client → REST endpoints: HTTP requests
- REST endpoints → JWT authentication: authenticates
- JWT authentication → JWT utilities: extracts token
- REST endpoints → JWT utilities: creates token
- REST endpoints → Users rooms messages: reads and writes
- REST endpoints → Response serialization: serializes
- REST endpoints → Live event stream: publishes events
- Chat interaction → REST endpoints: opens event stream
- Users rooms messages → PostgreSQL database: persists records