- Description and goals
- App features
- Installation
- Database setup
- Run application
- Swagger (OpenAPI)
- Technologies
- Compodoc
- Screenshots
MDD (Monde de DĂ©v) is a social network project dedicated to developers: Project developed as part of the development of a project for my master's degree. This repository contains both the frontend and backend code for a Minimum Viable Product version.
- User registration
- Profile management
- User session
- Logout
- List all topics
- Subscribe to topic
- Unsubscribe from topic
- View feed with sort by date or by title
- Create post
- Read post details
- Comment post
Clone these repositories :
git clone https://github.com/popcodelab/MDD_MVP
mvn clean install
npm install
Open the application.yml
file located in the back/src/main/resources
directory to Replace the properties with your parameters or using an .env
file :
spring:
datasource:
url: jdbc:mysql://${APP_DB_HOST}:${APP_DB_PORT}/${APP_DB_NAME}
username: ${APP_DB_USER}
password: ${APP_DB_PASS}
...
application:
security:
jwt:
secret: ${JWT_SECRET_KEY}
expiration: ${JWT_EXPIRATION}
client:
url: ${CLIENT_URL}
server:
port: ${APP_BACKEND_PORT}
here is an example of .env
file :
APP_DB_HOST=localhost
APP_DB_PORT=3306
APP_DB_NAME=database_name
APP_DB_USER=user_name
APP_DB_PASS=passowrd
JWT_SECRET_KEY=your_secret_key
JWT_EXPIRATION=86400000
CLIENT_URL=http://localhost:4300
APP_BACKEND_PORT=3005
Make sure that you have MySQL installed on your system.
- Log into MySQL using the following command :
mysql -u
<username>
-p
- Create the database :
CREATE DATABASE
<database_name>
;
- Select the created database :
USE
<database_name>
;
Use the SQL script located in ressources\sql\creates_db.sql
to create the schema :
SOURCE
<path_to_script.sql>
;
-
Frontend
-
In your terminal, run the command below.
cd front npm run start
The frontend will launch in your browser at
http://localhost:4400
-
-
Backend
-
In a separate terminal, run the command below.
cd back mvn spring-boot:run
The backend server will launch at
http://localhost:3005
-
Once the backend started, the documentation can be browsed at : http://localhost:3005/swagger-ui/index.html
Use the authentication endpoint to get a JWT token to access to the protected routes.
HTML5 | |
TypeScript 5.4.3 | |
JavaScript | |
CSS3 | |
Angular 17.3.8 | |
Compodoc 1.1.25 | |
Angular Material 17.3.0 | |
MySQL 8 | |
Java 17 | |
Spring Boot 3.3.0 |
To generate the documentation, if compodoc is not installed, follow the instructions bellow :
instal compodoc : npm install @compodoc/compodoc
Once installed :
- To generate the documentation run the command :
npm run compodoc
- To Serve it on http://127.0.0.1:8080 :
npm run compodoc:serve
POP's Code Lab