https://github.com/passidel/beemlops-system
Monorepo System for organizing bee hives and integrating sensor data with ML models
https://github.com/passidel/beemlops-system
bee docker hive monorepo nuxt typescript
Last synced: about 2 months ago
JSON representation
Monorepo System for organizing bee hives and integrating sensor data with ML models
- Host: GitHub
- URL: https://github.com/passidel/beemlops-system
- Owner: PassiDel
- License: gpl-3.0
- Created: 2024-02-05T15:46:26.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-02-09T19:23:22.000Z (over 2 years ago)
- Last Synced: 2025-01-21T03:09:02.317Z (over 1 year ago)
- Topics: bee, docker, hive, monorepo, nuxt, typescript
- Language: Vue
- Homepage: https://beemlops.syma.dev/
- Size: 753 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# BeeMLOps System
> Monorepo
>
> WS2023/24
## Infrastructure

## Setup
Please use Jetbrains WebStorm.
### Dev environment
First copy the example `.env` file and change the settings to your liking:
```shell
cp .env.example .env
cp db/.env.example db/.env
```
Now start the necessary services using `docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d`.
Wait for a few seconds and then migrate the database:
```shell
npm run install-all
cd db
npm run migrate
```
Now you can start the web dev server:
```shell
cd web
npm run dev
```
### NVM
To use the same node version, the [Node Version Manager](https://github.com/nvm-sh/nvm). Please install it and install
the specified node version using `nvm install` in the root directory.
Webstorm can use the correct version, if `.nvmrc` is selected:

### Prettier
This Repo uses Prettier for consistent code styling. WebStorm can automatically format your code on save. In the
Settingsdialog (File > Settings...) search for `prettier` and enable `Automatic Prettier configuration` for the these
files: `{**/*,*}.{js,ts,jsx,tsx,html,css,json,md,vue,astro}`. After that enable `Run on save`.

## Components
- [DB](./db)
- ORM based on [Prisma.js](https://www.prisma.io/)
- Represents the "Meta"-DB, without the time-series data
- [Webapp](./web)
- Nuxt Webapp (based on Vue.js)
- SSR
- i18n
- Server API
- Auth (using sealed cookies)
- [Queue Worker](./queue)
- Demo for RabbitMQ Queue
- Simple Send-Receive
- Simple RPC (Request + Response)
- Docker Stack
- Additive compose files
- [base](./docker-compose.yml)
- Postgres database
- Influx time-series database
- RabbitMQ Queue
- [Queue Worker](./queue)
- Redis Storage
- [prod](./docker-compose.prod.yml)
- [Webapp](./web)
- Loadbalancer with SSL
- for now static certs, but supports certbot
- [dev](docker-compose.dev.yml)
- Exposes management ports