LouisMazel/maz-ui

View on GitHub
CONTRIBUTING.md

Summary

Maintainability
Test Coverage
# Contribute

## Prerequisites

- You should always use `pnpm`
- To have good support of linters and typescript, use the extensions: [Mono Workspace](https://marketplace.visualstudio.com/items?itemName=folke.vscode-monorepo-workspace) and select all packages

## Developing

### Fork the project

To create a PR, you should fork the project, not clone it.

### Create new component

Use the CLI with this command:

```shell
pnpm -F cli cli create-files -f MazNewComponent
```

The component name should always start with **Maz**

The CLI ask the new component name, then choose **All files** with the space bar and all new base files will be created:

- documentation file in `packages/docs/docs/components/maz-new-component.md` (you should add your component in `packages/cli/docs/docs/.vitepress/configs/components.mts`)
- test unit file in `packages/lib/tests/specs/components/maz-new-component.spec.ts`
- and the component file in `packages/lib/components/MazNewComponent.vue`

Then, let's go to create 🙂

### Create something other than a component

You should make it manually

### Setting up the development server

Install the development dependencies by running:

```shell
pnpm install
```

Once your dependencies are installed, to run the server of the developing nuxt 3 app, use this command:

```shell
pnpm -F playground dev
```

This will start the development server available at [http://localhost:3333](http://localhost:3333).

This Nuxt application uses the [maz-ui nuxt module](https://maz-ui.com/guide/nuxt), so all components are auto-imported and have `maz-ui` as a dependency, so you can import all modules.

## Documentation

To run the documentation Vitepress app, use this command:

```shell
pnpm -F docs dev
```

This will start the development server available at [http://localhost:5173/](http://localhost:5173/).

## Pull request

When you submit your PR, you should provide all information asked in the description and let the pipelines test your code.

## Be clean

Please, clean all your changes and don't commit anything in `package/playground`

---

If you have any questions, don't hesitate to contact me: you can contact me here: [https://www.loicmazuel.com/en/contact](https://www.loicmazuel.com/en/contact)