Skip to content

AET-DevOps25/team-devoops

Repository files navigation

Meet@Mensa logo

Continuous Integration

Continuous Deployment

Many students at TUM, particularly in the larger study programs, report feeling lonely and isolated despite having countless peers. One of the places where this is especially noticeable is the Mensa during lunchtime. It's common for students that don't have a strong network of friends at university to eat alone or avoid eating at the Mensa entirely to not feel socially awkward.

Our tool - Meet@Mensa - focuses on transforming the potentially uncomfortable situation of eating alone at the Mensa into an opportunity to meet fellow students and make new friends.

πŸ₯˜ Features

Sign up

Create an account and meet@mensa will store your basic information for next time!

Request Matches

Let us know who you'd like to meet and when you're available by submitting a Match Request!

Get Matched

Every night at 22:00 CET, our algorithm will run and try to find the best group for you! Group bailed on you or you're just feeling spontaneous? We'll try matching you again at 10:00am CET.

RSVP

Got matched? Let us know if you can make it by clicking the RSVP button!

Meet People

Show up, have lunch, make friends. Simple as that!

Break the Ice

Talking to new people can be hard at the start, so meet@mensa takes advantage of modern GenAi to help break the ice! Check your match for custom conversation starters for you and the people you'll be meeting!

πŸš€ Installation and Deployment

Live Demo

Check it out for yourself at app.meetatmensa.com!

Deploy it Yourself

Instructions for deploying with Docker-Compose and Kubernetes are available here

πŸ”­ Repository Overview

meet@mensa/
β”œβ”€β”€ api/
β”‚   β”œβ”€β”€ changelogs/ # All updates to the API spec       # All changes to our API, documented
β”‚   β”œβ”€β”€ scripts/ # Scripts for generating API code      # Scripts for generating code based on API spec
β”‚   └── openapi.yaml                                    # The API definition itself
β”‚                                    
β”œβ”€β”€ client/                                             # Our React-based client
β”‚ 
β”œβ”€β”€ deployment/                                         
β”‚   β”œβ”€β”€ docker/                                         # Deploy meet@mensa locally!
β”‚   β”œβ”€β”€ docker-debug/                                   # Deploy meet@mensa locally with exposed backend services
β”‚   β”œβ”€β”€ k8s/                                            # Deploy meet@mensa to TUM's Kubernetes Cluster
β”‚   └── compose.aws.yml                                 # Deploy meet@mensa to AWS
β”‚ 
β”œβ”€β”€ docs/
β”‚   β”œβ”€β”€ api.html                                        # API spec (https://aet-devops25.github.io/team-devoops/api.html)
β”‚   └── problem_statement.md                            # Meet@Mensa problem statement
β”‚ 
β”œβ”€β”€ infrastructure/                                     # Terraform scripts for AWS deployment
β”‚ 
β”œβ”€β”€ resources/                                          # Images and Diagrams used elsewhere
β”‚ 
β”œβ”€β”€ server/                                             # Our back-end
β”‚   β”œβ”€β”€ database/
β”‚   β”‚   β”œβ”€β”€ matchdb/                                    # Databases for matching-data
β”‚   β”‚   └── userdb/                                     # Databases for user-data
β”‚   β”‚
β”‚   β”œβ”€β”€ gateway/                                        # Routes traffic to our API
β”‚   β”‚
β”‚   β”œβ”€β”€ genai/                                          # Provides conversation starters
β”‚   β”‚
β”‚   β”œβ”€β”€ matching/                                       # Manages matching requests
β”‚   β”‚   β”œβ”€β”€ src/                                        # Spring-Boot Application
β”‚   β”‚   β”œβ”€β”€ generated/                                  # Server API interface generated with openapi-generate-cli
β”‚   β”‚   └── generated-client/                           # Client API interface generated with openapi-generate-cli
β”‚   β”‚
β”‚   └── user/                                           # Manages users
β”‚       β”œβ”€β”€ src/                                        # Spring-Boot Application
β”‚       β”œβ”€β”€ generated/                                  # Server API interface generated with openapi-generate-cli
β”‚       └── generated-client/                           # Client API interface generated with openapi-generate-cli
β”‚ 
β”œβ”€β”€ README.md                                           # You're reading it ;)
β”œβ”€β”€ CONTRIBUTING.md                                     # Join us
└── LICENSE                                             # MIT

βš™ System Overview

Component Diagram (top-level architecture)

This model contains information about Meet@Mensa's architecture. Each component's color indicates the student responsible for it.

Component Diagram

Class Diagram (analysis object model)

This model contains information about the objects handled by the Meet@Mensa API. Detailed class diagrams for User and Matching services are available in their respective README.md files (User, Matching).

Class Diagram

Use Case Diagram

This model contains information about Meet@Mensa's use-cases.

Use-Case Diagram

πŸ’œ More Documentation

There's much more to see, check it out!

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 6