Skip to content

rown89/a-monorepo

Repository files navigation

A Monorepo

This monorepo setup features two different Next.js applications located in the apps folder:

  • storefront
  • backoffice

At the root level, we have the packages folder, which includes the following packages:

Infrastructure Package

This package contains common service dependencies used across your projects, such as databases, CMS, config files, and clients. An example provided is the Supabase clients.

UI Package

This package includes UI-related packages, shared components, and Tailwind CSS configurations. The UI package.json already includes several dependencies:

Website Package

This package contains common utilities such as hooks and utility functions.

Configuration

Root-level configurations are extended into other packages, including:

  • prettier.config.mjs: Prettier configuration.
  • eslint-config.mjs: ESLint configuration.
  • tsconfig.json: TypeScript configuration.

Commits

Husky is set up to manage Git hooks, and commitlint is configured to enforce conventional commit messages.

Docker

The root compose.yml file defines Docker containers for both the storefront and backoffice applications.

Turbopack

This monorepo uses Turbopack for bundling and build orchestration.

This structure provides a scalable and maintainable foundation for developing and deploying multiple applications and packages within a single repository.

About

A Monorepo boilerplate.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published