Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bartosz-ziolkowski/poindexter-network
Social network for book lovers
https://github.com/bartosz-ziolkowski/poindexter-network
angular docker github-actions html java javamail jwt postgresql rest-api scss spring-boot swagger tailwindcss
Last synced: about 2 months ago
JSON representation
Social network for book lovers
- Host: GitHub
- URL: https://github.com/bartosz-ziolkowski/poindexter-network
- Owner: bartosz-ziolkowski
- Created: 2024-07-02T09:48:57.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-08-25T11:51:04.000Z (4 months ago)
- Last Synced: 2024-08-25T12:59:33.712Z (4 months ago)
- Topics: angular, docker, github-actions, html, java, javamail, jwt, postgresql, rest-api, scss, spring-boot, swagger, tailwindcss
- Language: TypeScript
- Homepage: https://poindexter-network.vercel.app
- Size: 7.11 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Poindexter - social platform for book lovers
## Overview
Poindexter is a social media platform for book lovers, allowing users to share books they've read so others can borrow them. The application also helps users keep track of the books they've read. Additionally, users can comment on and rate books after returning them to the owner. To facilitate this, the owner can mark a book as publicly available or archive it.With this project, I aimed to practice building a full-stack application using Java Spring Boot and Angular, along with a database. I ensured the application’s security using Spring Security and JWT Token Authentication. I also integrated an email service and dockerized the application's components for easier management. Additionally, I ensured a well-structured REST API using Swagger, as well as a responsive design.
## Screenshots
![alt text](https://res.cloudinary.com/dv7nhvy8e/image/upload/v1724586521/poindexter/cycmmwy43dthjvbda5qz.png)
![alt text](https://res.cloudinary.com/dv7nhvy8e/image/upload/v1724586521/poindexter/apx0leeq3tcymzhksfao.png)
![alt text](https://res.cloudinary.com/dv7nhvy8e/image/upload/v1724586521/poindexter/rv4teogai3soqvoz4gmh.png)
![alt text](https://res.cloudinary.com/dv7nhvy8e/image/upload/v1724586521/poindexter/k0grbpxb1ltwqjbkkjug.png)
![alt text](https://res.cloudinary.com/dv7nhvy8e/image/upload/v1724586521/poindexter/xv9f3ppomrvstyni3flq.png)
![alt text](https://res.cloudinary.com/dv7nhvy8e/image/upload/v1724586521/poindexter/lsckrglbafbet80xk83w.png)
![alt text](https://res.cloudinary.com/dv7nhvy8e/image/upload/v1724586521/poindexter/upv2phyckxzndt9njxmu.png)
![alt text](https://res.cloudinary.com/dv7nhvy8e/image/upload/v1724586521/poindexter/thpnqqmjs1iso2m1wyks.png)## Technologies
### Frontend
- Angular
- HTML
- Tailwind CSS + SCSS
- OpenAPI Generator for Angular
### Backend
- Java Spring Boot
- Spring Security
- Spring Data JPA
- OpenAPI and Swagger UI Documentation
- JWT Token Authentication
- JavaMail
### Other tools
- Docker
- PostgreSQL
- GitHub Actions
### Comments
- Set up CI/CD pipelines for both the client and server using GitHub Actions
- Created REST API documentation using Swagger
- Dockerized the database, server, and client, with published Docker images for the client and server
- Client was deployed on Vercel## Live demo
Click below to watch the app walkthrough on YouTube[![alt text](https://img.youtube.com/vi/H77Iwau4yKs/0.jpg)](https://www.youtube.com/watch?v=H77Iwau4yKs)