wyatt-bricks/README.md

77 lines
2.1 KiB
Markdown

<!--
* Copyright (C) 2023 WYATT GROUP
* Please see the AUTHORS file for details.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
-->
<p align="center">
<a href="https://wyatt-studio.fr"><img width="150px" src="resources/wyatt-studio-logo.png"></a>
<h1 align="center">Wyatt Bricks</h1>
</p>
<p align="center">
<a href="https://git.wyatt-studio.fr/Wyatt-FOSS/wyatt-packages/src/branch/master/packages/wyatt_analysis"><img src="https://img.shields.io/badge/Style-Wyatt%20Analysis-blue.svg?style=flat-square" alt="Style: Wyatt Analysis" /></a>
</p>
---
## About
Generate consistent code fast.
Use reusable templates called wyatt bricks to supercharge your workflow.
---
## Quick Start
```sh
# 🎯 Activate from https://pub.dev
dart pub global activate mason_cli
# 🚀 Initialize mason if needed
mason init
```
## Create a Brick
* Create a **Brickgen** project in `apps/`.
```sh
mason make wyatt_brick_template -o apps/new_brick
```
* Create/Modify your compilable code in `apps/new_brick/new_brick`.
* Customize the `brickgen.yaml` config file.
* Generate the brick using `brickgen` cli tool.
```sh
dart ./tools/brick_generator/bin/brickgen.dart ./apps/new_brick/ ./bricks/
```
> More infos about generator in `./tools/brick_generator` .
💡 You can also build all the bricks with `./tools/build.sh`
## Use
Please add your bricks in `./bricks` . (See `Create a Brick` section)
Please specify the prerequisites necessary to use the brick (The code must be able to compile directly after its integration.)
```sh
# To load all bricks (and generate mason-lock.json)
mason get
```