Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
Thibaut-Mouton committed Sep 6, 2021
2 parents ae2711d + 280462b commit da5d838
Showing 1 changed file with 20 additions and 8 deletions.
28 changes: 20 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,24 @@
<div align="center">

![React logo](assets/react.png "React logo")
![Spring Boot logo](assets/springboot.png "Sprint boot logo")
![React logo](assets/react.png "React logo")
![Spring Boot logo](assets/springboot.png "Sprint boot logo")
</div>

# Messenger project : real time chat with ReactJS and Spring Boot
# Messenger project : real time chat with React and Spring Boot

This web application is a project that I made myself to practice in Java and ReactJS. Please do not hesitate to contact me if you see any errors (small or big).
Real time chat application group oriented. Talk with your friends, create and add users to conversation, send messages or images, set groups administrators and start video calls ! (coming soon)

## Next version preview :

Changelog for next version :

- Change project from javascript to typescript
- Use of react Context instead of Redux for basic tasks (like theme)
- Improve websocket reliability (one topic to subscribe instead of 5)
- Fix bugs
- Cookies to store theme preference

## Start-up :

#### Project Requirements

Expand All @@ -18,16 +30,16 @@ This web application is a project that I made myself to practice in Java and Rea

- This project use [liquibase](https://www.liquibase.org/) as a version control for database. When you will start backend, all tables and structures will be generated automatically.
- To try the project on localhost, check that nothing runs on ports 9090 (Spring Boot) and 3000 (React app)
- You can edit ````spring.datasource```` in ```backend/src/main/resources/application.properties``` and ```username``` and ```password``` in ```backend/src/main/resources/liquibase.properties``` with your own SQL login / password
- You can edit ````spring.datasource```` in ```backend/src/main/resources/application.properties``` and ```username``` and ```password``` in ```backend/src/main/resources/liquibase.properties``` with your own SQL login / password
- Create a database named "websocket" or you can also modify the name in the properties files mentioned just above.

##### Start server
- Go inside backend folder then type ```mvn spring-boot:run``` to launch backend.
- Or you can type ```mvn clean package``` to generate a JAR file and then start server with ```java -jar path/to/jar/file``` (Normally in inside backend/target/)
- Or you can type ```mvn clean package``` to generate a JAR file and then start server with ```java -jar path/to/jar/file``` (Normally in inside backend/target/)
##### Start frontend
- Go inside frontend-web folder and then type ```npm react-scripts start```

## Features
# Project overview

![Project overview](assets/messenger.jpg?raw=true "Project overview")

Expand All @@ -36,5 +48,5 @@ This web application is a project that I made myself to practice in Java and Rea
* Secure user account based on Spring Security JWT
* Room discussion with STOMP and SockJS
* Chat group administrators
* Add / remove users from conversation
* Add / remove users from conversation
* Dark / Light Mode

0 comments on commit da5d838

Please sign in to comment.