46 lines
2.4 KiB
Markdown
46 lines
2.4 KiB
Markdown
|
# 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.
|
||
|
|
||
|
[Initial Technology Selection]: docs/internal/decisions/internal-technology-selection.md
|
||
|
|
||
|
### Directory Structure
|
||
|
|
||
|
Credit where credit is due. This repository structure is largely based on the one described in
|
||
|
[this blog post][structure-a-monorepo], 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).
|
||
|
|
||
|
[structure-a-monorepo]: https://lucapette.me/writing/how-to-structure-a-monorepo/
|
||
|
|
||
|
- [API Definitions](api) - API specifications defined in your specification of choice (e.g protocol buffers, graphql).
|
||
|
- [Assets](assets) - Internationalization assets and various media used throughout the product.
|
||
|
- [Documentation](docs) - All documentation related to the product. Internal, external, designs, runbooks, etc.
|
||
|
- [Infrastructure](infra) - You got it... your infrastructure as code solutions.
|
||
|
- [Legal](legal) - Things related to legal, including common policies.
|
||
|
- [Libraries](lib) - Common libraries shared by the different components of the platform.
|
||
|
- [Platform](platform) - The various systems that compose the platform and are deployed to servers or in the cloud.
|
||
|
- [User Interfaces](ui) - The different interfaces that we build out and expose to the end user or internally.
|
||
|
|
||
|
## License
|
||
|
|
||
|
```text
|
||
|
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/>.
|
||
|
```
|