dependabot[bot] a7831e9aba build(deps): bump the npm_and_yarn group across 2 directories with 2 updates
Bumps the npm_and_yarn group with 1 update in the /services/frontend directory: [yaml](https://github.com/eemeli/yaml).
Bumps the npm_and_yarn group with 1 update in the /services/user-service directory: [fastify](https://github.com/fastify/fastify).


Updates `yaml` from 1.10.2 to 1.10.3
- [Release notes](https://github.com/eemeli/yaml/releases)
- [Commits](https://github.com/eemeli/yaml/compare/v1.10.2...v1.10.3)

Updates `fastify` from 5.8.1 to 5.8.4
- [Release notes](https://github.com/fastify/fastify/releases)
- [Commits](https://github.com/fastify/fastify/compare/v5.8.1...v5.8.4)

---
updated-dependencies:
- dependency-name: yaml
  dependency-version: 1.10.3
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: fastify
  dependency-version: 5.8.4
  dependency-type: direct:production
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-26 10:50:45 +00:00
2023-09-27 20:28:36 +01:00
2023-09-27 22:27:52 +01:00
2024-03-27 11:12:43 +00:00
2023-09-27 16:01:41 +01:00
2023-09-27 16:01:41 +01:00
2023-08-25 14:45:05 +01:00
2023-09-27 20:28:36 +01:00
2023-09-27 22:27:52 +01:00

Panels

A proof-of-concept forum application created using a microservices architecture.

Panels Banner

About

This application was created as a hobby project in spare time. In current form the application serves as a proof of concept containing bare-bones functionality.

There are definitely aspects that I'd like to improve or polish further, in addition to some ideas for functionality that I would like to implement at some point. As such, the project should be considered a work-in-progress at this stage.

Architecture

Users are served the React site from the frontend and make calls to the REST API exposed by the gateway-service. The gateway-service makes calls to the relevant services for the request.

Interservice communication is handled through RPC calls (utilising gRPC) and event sourcing (utilising Kafka).

Architecture

Services

I used a variety of languages for writing the services as this was created as a hobby project and the architecture gave me some room to play around with.

Service Language Datastores Description
frontend TypeScript (React) N/A Web-based user interface
gateway-service Golang N/A Exposes a HTTP REST API to allow users to communicate with the application.
panel-service Golang PostgreSQL, Redis Responsible for operations related to panels
post-service Golang PostgreSQL, Redis Responsible for operations related to posts
user-service TypeScript (Node) MongoDB Responsible for operations related to users
auth-service Python PostgreSQL Responsible for authenticating users
comment-service Python PostgreSQL, Redis Responsible for operations related to comments

Deployment and Configuration

For more information about configuration and deployment, please view the documentation located in the /docs folder.

License

Acknowledgments:

This repository is licensed under the Apache License v2.0.

Languages
Python 39%
Go 30.7%
TypeScript 28.5%
Makefile 1.1%
Dockerfile 0.6%