https://github.com/iamber12/inbox-spring-boot-app
Messaging App built using Spring Boot, Apache Cassandra, Spring Data Cassandra, Spring Security, and Thymeleaf.
https://github.com/iamber12/inbox-spring-boot-app
cassandra-database datastax-cassandra-driver github-oauth-authentation java spring-boot
Last synced: about 2 months ago
JSON representation
Messaging App built using Spring Boot, Apache Cassandra, Spring Data Cassandra, Spring Security, and Thymeleaf.
- Host: GitHub
- URL: https://github.com/iamber12/inbox-spring-boot-app
- Owner: iamber12
- Created: 2024-07-14T20:02:11.000Z (10 months ago)
- Default Branch: master
- Last Pushed: 2024-07-17T21:27:26.000Z (10 months ago)
- Last Synced: 2025-02-09T11:31:17.910Z (3 months ago)
- Topics: cassandra-database, datastax-cassandra-driver, github-oauth-authentation, java, spring-boot
- Language: Java
- Homepage:
- Size: 67.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Messaging Application
This is a highly scalable and available messaging application where users can exchange messages with each other.
## Technologies
- **Application Tier**: Spring Boot
- **Database**: Apache Cassandra
- **Data Layer**: Spring Data Cassandra
- **Security**: Spring Security
- **View Layer**: Thymeleaf## Features
- User authentication and authorization using GitHub OAuth
- Messaging functionality including:
- Viewing emails
- Replying to emails
- Reply all functionality
- Email tracking (read/unread status)## Installation
### Prerequisites
- Java 8 or higher
- Apache Cassandra
- Maven### Steps
1. **Clone the repository**
```bash
git clone https://github.com/iamber12/inbox-spring-boot-app
cd inbox-spring-boot-app
```2. **Set up Apache Cassandra**
- Follow the instructions [here](https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/install/installDeb.html) to install Apache Cassandra.
- Create the necessary keyspace and tables using the `schema.cql` file in the repository.3. **Configure the application**
- Update `application.properties` with your Cassandra configuration and other necessary details.4. **Build and run the application**
```bash
mvn clean install
mvn spring-boot:run
```5. **Access the application**
- Open your browser and navigate to `http://localhost:8080`.## Next Steps
- Implement custom folder creation.
- Utilize the color property for folders.
- Enable moving emails between folders.
- Add multi-select and bulk actions (delete).For further details and code, please refer to this [Code with Me series](https://www.youtube.com/watch?v=saSzMKeN6oI&list=PLqq-6Pq4lTTak0b5DnJ-x85MWMPaTdl4A&index=1).