https://github.com/goncaloribeiro6533/instant-messaging
An application that allows users to exchange messages in real-time through channels. Features a REST API developed in Kotlin with Spring, a front-end interface developed in Typescript with React and MUI.
https://github.com/goncaloribeiro6533/instant-messaging
kotlin mui-material react spring typescript
Last synced: 4 months ago
JSON representation
An application that allows users to exchange messages in real-time through channels. Features a REST API developed in Kotlin with Spring, a front-end interface developed in Typescript with React and MUI.
- Host: GitHub
- URL: https://github.com/goncaloribeiro6533/instant-messaging
- Owner: GoncaloRibeiro6533
- Created: 2025-02-11T18:47:18.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2026-01-22T17:47:18.000Z (6 months ago)
- Last Synced: 2026-01-23T09:51:55.018Z (6 months ago)
- Topics: kotlin, mui-material, react, spring, typescript
- Language: Kotlin
- Homepage:
- Size: 3.5 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# TalkRooms
**TalkRooms** is a web application that facilitates real-time group chats through channels. It provides a seamless messaging experience by integrating a REST API developed in Kotlin with Spring and a modern front-end built with TypeScript, React, and Material-UI (MUI).
## Introduction
TalkRooms allows users to exchange messages in real-time through dedicated channels. Whether you're collaborating with a team or catching up with friends, TalkRooms makes group chats easy and efficient.
## Functionalities
- **User Authentication**
- Secure login and registration.
- Session management using token-based authentication.
- **Messaging Channels**
- Real-time message exchange through a robust REST API.
- Support for multiple channels.
- Persistent message history for offline access.
- **Profile Management**
- View and update user profiles.
- **Channel Invitations**
- Manage invitations by accepting or rejecting requests to join channels.
- **Notifications**
- Instant notifications for new messages and channel updates.
## Technologies
- **Backend**
- [Kotlin](https://kotlinlang.org/)
- [Spring Framework](https://spring.io/)
- **Frontend**
- [TypeScript](https://www.typescriptlang.org/)
- [React](https://reactjs.org/)
- [Material-UI (MUI)](https://mui.com/)
- **Other Tools**
- REST API for real-time communication.
- Server-Sent Events (SSE) for live updates.
## Documentation
- [Documentation Folder](docs)
- [Backend Documentation](docs/Backend.md)
- [OpenAPI Specification](docs/TalkRoomsOpenApi.yaml)
- [Frontend Documentation](docs/Frontend.md)
- [General Functionalities](docs/GeneralDoc.md)
- [Instructions to Build and Run the Project in JavaScript](code/js/README.md)
- [Instructions to Build and Run the Project in JVM with Docker](code/jvm/README.md)
## Testing Credentials
For testing purposes, use the following credentials:
- **User:** `user1`
**Password:** `Strong_password1234`
- **User:** `user2`
**Password:** `Strong_password1234`
- **User:** `user3`
**Password:** `Strong_password1234`
## Authors
- Gonçalo Ribeiro
- Rosário Machado
- Tiago Silva
@ISEL
Bachelor in Computer Science and Computer Engineering
Web Application Development
Winter Semester of 2024/2025