Skip to content

theaterpedia/theaterpedia-core

Repository files navigation

Theaterpedia-Core: Theme Episodes

What's inside?

This is a development-only repo. To get a quick understanding by studying a running example of Theaterpedia head over to the Theaterpedia-Repo.

This is a monorepo, we use turborepo combined with yarn as a package manager. It includes the following packages/apps:

Main Packages: 2 Layers

This monorepo implements a layered nuxt-architecture, mainly consisting of 2 layers:

Layer Data

  • initializes a vuestorefront-middleware to query an odoo-backend via graphql
  • loads the pruvious-module to setup the backend of a cms
  • has composoables prepared to make data-handling easy and safe

Layer Theme

The repo is changed from pnpm (didn't work for me) to turbo+yarn 1.22.19 on node 20.

Main Apps: Home + Portal

  • home: the main app of Theaterpedia, checkout a running example at Episoden Demokratie
  • portal: TBD > a portal that integrates information of all of the deployed apps

Branches, Themes and Templates

Besides the main-branch you could checkout these branches:

  • episodes/main
  • courses/main
  • dasei/main

We develop different features and different theming there. You find more information in the readme of every branch.

Other Apps + Packages

  • apps/data-dev: dev-app and -logic (tests) to build-out the graphql-logic of the data-layer
  • apps/theme-dev: dev-app and -logic (tests) to build-out the themes/theme-layers for home and portal
  • apps/tp-docs: the documentation

Utilities

Setup

To install all dependencies, run the following command:

yarn

Develop

To develop all apps and packages, run the following command:

yarn dev

Lint

To check & fix linter through all apps and packages, run the following command:

yarn lint
yarn lint:fix

Test

To run tests through all apps and packages, run the following command:

yarn test

Build

To build all apps and packages, run the following command:

yarn build

License

This project is MIT-licensed.

References

Open Sources

This project stands on the shoulders of:

Layers-Code

Initially the layers were started as described by Kruti Patel on: https://github.com/Krutie/nuxt-layers-playground/

Linting, Turbo-Logic

Useful Links

Learn more about the power of Turborepo: