api | ||
assets | ||
docs | ||
infra | ||
legal | ||
lib | ||
platform | ||
ui | ||
.dockerignore | ||
.editorconfig | ||
.gitignore | ||
.prettierignore | ||
docker-compose.yaml | ||
LICENSE | ||
package.json | ||
pnpm-lock.yaml | ||
pnpm-workspace.yaml | ||
README.md |
Company
This project aims to provide a comprehensive starter repository for companies seeking to leverage a monorepository. To better understand the rationale that went into the initial technology selection for this repository,see the Initial Technology Selection decision document. Feel free to add, remove, or replace any technology as you see fit for your organization.
Directory Structure
Credit where credit is due. This repository structure is largely based on the one described in this blog post, but with a handful of personal modifications. I've come to really enjoy this layout and it takes a lot of things into consideration early on that you'll likely thank yourself for later (e.g. internationalization).
- API Definitions - API specifications defined in your specification of choice (e.g protocol buffers, graphql).
- Assets - Internationalization assets and various media used throughout the product.
- Documentation - All documentation related to the product. Internal, external, designs, runbooks, etc.
- Infrastructure - You got it... your infrastructure as code solutions.
- Legal - Things related to legal, including common policies.
- Libraries - Common libraries shared by the different components of the platform.
- Platform - The various systems that compose the platform and are deployed to servers or in the cloud.
- User Interfaces - The different interfaces that we build out and expose to the end user or internally.
License
Copyright (C) 2024 Company
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.