Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/qreolq/my-post

my-post is simple a web application with the ability to create and moderate posts and much more
https://github.com/qreolq/my-post

bootstrap docker hibernate hibernate-validator jdbc jdk19 junit5 lombok-maven mockito postgresql spring spring-boot spring-data-jpa spring-mvc spring-security thymleaf

Last synced: 14 days ago
JSON representation

my-post is simple a web application with the ability to create and moderate posts and much more

Awesome Lists containing this project

README

        

# my-post

my-post is simple a web application with the ability to create and moderate posts and much more

* [Technologies](#technologies)
* [Features](#features)
* [Quick start](#quick-start)
* [ER Model](#hubr-er-model)

### Technologies
Spring (Boot, Security, JPA, MVC), Lombok, Maven, Docker, Hibernate, PostgreSQL, JUnit, Mockito, Thymeleaf, Bootstrap, HTML, CSS

### Features
* Register a new account with email confirmation and reCAPTCHA (for this you need to follow this [instruction](#registration-settings))
* User
* Subscribe to tags and users
* Сomment on posts
* Get notifications from subscribed users
* Upload profile
* Create new posts and tags
* Admin
* Moderate new posts and tags
* Ban users and grant them rights
* Delete user comments
* And much more

### Quick start
1. Clone this repo into folder.

```Bash
git clone [email protected]:qReolq/my-post.git
cd my-post
```
2. Start docker compose

```Bash
docker compose up
```
3. Go to http://localhost:8080/auth/login

4. You can [register](#registration-settings) or login as an existing user ~ login:timur password:1q2w

5. Stop docker
```
docker compose down
```

### Registration settings
1. To register you need to provide your google email address and google apps password to application.properties file

```properties
spring.mail.username=your_gmail_addres
spring.mail.password=your_application_passwords
```
2. Package the project and run docker
```Bash
./mvnw package -DskipTests
docker compose up --build
```
### my-post ER Model

![image](https://user-images.githubusercontent.com/115367574/232320459-08dbfa2b-46a3-450e-ab6b-c8265f5404c0.png)