Backend
The backend is a collection of services that are responsible for handling the business logic of the CallVideo platform.
Tech Stack
The backend services are built with the following technologies:
- Framework: NestJS
- Language: TypeScript
- Database: MongoDB (with Mongoose ODM)
- Authentication: Passport.js with JWT
- HTTP Client: Axios
- WebSockets: Socket.IO
- Cloud Storage: AWS SDK (S3)
- Code Formatting: Prettier
- Video Calling: Twilio
- Deployment: Heroku, EC2
- Monitoring: New Relic
- Testing: Jest
Callvideo API
The Callvideo API is a server service that provides a set of endpoints for managing CallVideo accounts, users, and other resources.
Specific technologies:
- Fastify as HTTP server
- OTP library for two-factor authentication
Callvideo Socket
The Callvideo Socket is a WebSocket server that provides a set of endpoints for managing real time communication between the Attendant and Client, such as sending and receiving messages, call events, and queue events.
Specific technologies:
- Socket.IO for real-time bidirectional communication
- NestJS WebSockets module