ThinkMore.mp4
ThinkMoreForum is a place for people to make any kind of discussion, where people come together to share their opinion. As a discussion platform, it is multifunctional, interactive, and mobile-ready. Administrators can easily set the look and topic of the forum, manage user permissions, and customize the site footer. The development process uses Jira as an agile scrum software to help the team organize and prioritize the work, and uses Github as a version control tool for a lightweight, branch-based workflow. From a technical perspective, the project uses message queues to send emails, and implements high-level JWT updates and protection, constructs WebSocket to achieve real-time online users and real-time notifications.
Front-end | Back-end |
• Next.js • Redux • Typescript • MUI • Axios • Husky • Jest • Eslint • Sass-lint • Prettier • Yup, Formik |
• Spring boot • Lombok & Mapstruct • Flyway & PostgreSQL (JPA) • Swagger & Postman • Spring Security & JWT • Jacoco & Mockito • RabbitMQ (amqp) • Amazon S3 (MinIO) • Redis (Jedis) • Sockjs (websocket) • Sendgrid (Email) |
- JDK 11
- Docker
- Intellij Idea
- Open the project Intellij Idea IDE and aut
- Run
$ docker-compose up -d
- Run project in Intellij Idea IDE
- Deploy Minio
./docker/minio/docker-compose.yml
- GitHub Action
./.github/workflows/build.yml