Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/szymonpoltorak/social-app

Social media application as a individual academic project continued in my free time using Angular and Spring Boot.
https://github.com/szymonpoltorak/social-app

angular docker hibernate java jwt-bearer-tokens maven ngx-markdown oauth2 oidc spring-boot spring-security typescript

Last synced: 19 days ago
JSON representation

Social media application as a individual academic project continued in my free time using Angular and Spring Boot.

Awesome Lists containing this project

README

        

# Social App


Preview

This is a full stack application being created during fourth semester of Computer Science studies at Warsaw University Of Technology.
Goal is to create a social media app covering frontend and backend side of such site.

## Technology stack

I used various technologies which I will list below.

### FrontEnd

* Angular 15.2.0,
* TypeScript 4.9.5,
* SCSS 1.58.3,
* Karma 6.4.1,
* Jasmine 4.5.0,
* Ngx-Markdown.
* Angular Material.

### BackEnd

* SpringBoot 3.0.4,
* Java JDK 17.0.6,
* Apache Maven 3.8.5,
* SpringData JPA,
* SpringSecurity,
* PostGres SQL,
* lombok,
* javadoc,
* jwt,
* oauth2,
* jackson,
* swagger,
* maildev,
* spring mail service,
* logback.

### Others

* makefile,
* docker,
* kubernetes,
* minikube,
* postman.

## Installation of docker

To install docker use:

* On Linux:

```bash
sudo apt install -y docker
```

* On Windows:

```psh
winget install Docker.DockerDesktop
```

## Makefile commands

To simplify the development and usage of this app I used docker and makefile.
Makefile file has few commands which can be executed from the root directory.
Makefile scripts may need administrator priviliges due to *docker* command usage.

* `make`, `make all`, `make build` - uses *docker-compose* to build the whole project.
Frontend of the app will be available at `localhost:4200`,
database at `localhost:5432` and backend at `localhost:8080`

* `make clean` - command used to remove with force images created ,
during *docker-compose* build

* `make stop` - command used to turn off *docker-compose* image.

## Screenshots

* HomePage,


HomePage

* LoginPage,


LoginPage

* RegisterPage,


RegisterPage

* NotFoundPage,


NotFoundPage

* Posts with comments,


Posts with comments

* User details modification,


User details modification

* Search site,


Search