feat: work intent process

This commit is contained in:
Eli Bosley
2025-02-12 10:35:11 -05:00
parent 5b2403ad04
commit 8374af8ee8

View File

@@ -17,8 +17,6 @@
[![MIT License][license-shield]][license-url] [![MIT License][license-shield]][license-url]
[![LinkedIn][linkedin-shield]][linkedin-url] [![LinkedIn][linkedin-shield]][linkedin-url]
<!-- PROJECT LOGO --> <!-- PROJECT LOGO -->
<br /> <br />
<div align="center"> <div align="center">
@@ -42,8 +40,6 @@
</p> </p>
</div> </div>
<!-- TABLE OF CONTENTS --> <!-- TABLE OF CONTENTS -->
<details> <details>
<summary>Table of Contents</summary> <summary>Table of Contents</summary>
@@ -70,7 +66,6 @@
</ol> </ol>
</details> </details>
<!-- ABOUT THE PROJECT --> <!-- ABOUT THE PROJECT -->
## About The Project ## About The Project
@@ -87,8 +82,6 @@
<p align="right">(<a href="#readme-top">back to top</a>)</p> <p align="right">(<a href="#readme-top">back to top</a>)</p>
<!-- GETTING STARTED --> <!-- GETTING STARTED -->
## Getting Started ## Getting Started
@@ -99,11 +92,11 @@ communicating with each other.
Make sure the following software is installed before proceeding. Make sure the following software is installed before proceeding.
- Bash * Bash
- Docker (for macOS folks, Orbstack works too) * Docker (for macOS folks, Orbstack works too)
- [Node.js (v20)][Node-url] * [Node.js (v20)][Node-url]
- [Just](https://github.com/casey/just) * [Just](https://github.com/casey/just)
- An [Unraid][Unraid-url] server for development * An [Unraid][Unraid-url] server for development
Next, create an SSH key if you haven't already. Next, create an SSH key if you haven't already.
Once you have your key pair, add your public SSH key to your Unraid server: Once you have your key pair, add your public SSH key to your Unraid server:
@@ -116,26 +109,35 @@ Once you have your key pair, add your public SSH key to your Unraid server:
### Installation ### Installation
1. Clone and enter the repo 1. Clone and enter the repo
```sh ```sh
# Optionally, give the cloned folder a more specific name # Optionally, give the cloned folder a more specific name
gh repo clone unraid/api api-monorepo gh repo clone unraid/api api-monorepo
cd api-monorepo cd api-monorepo
``` ```
2. Run the monorepo setup command. 2. Run the monorepo setup command.
```sh ```sh
just setup just setup
``` ```
This will run installation scripts, container builds, and some git scripts to reduce noise (i.e. personal editor customizations, etc). This will run installation scripts, container builds, and some git scripts to reduce noise (i.e. personal editor customizations, etc).
3. Run the API container 3. Run the API container
```sh ```sh
cd api cd api
npm run container:start npm run container:start
``` ```
4. This should bring you inside the API container. There, run the following command to start the server: 4. This should bring you inside the API container. There, run the following command to start the server:
```js ```js
npm run dev npm run dev
``` ```
5. In another terminal, open the project and navigate to the web directory. Then, run the dev server: 5. In another terminal, open the project and navigate to the web directory. Then, run the dev server:
```sh ```sh
cd web cd web
npm install # just in case npm install # just in case
@@ -144,7 +146,6 @@ Once you have your key pair, add your public SSH key to your Unraid server:
<p align="right">(<a href="#readme-top">back to top</a>)</p> <p align="right">(<a href="#readme-top">back to top</a>)</p>
<!-- USAGE EXAMPLES --> <!-- USAGE EXAMPLES -->
## Usage ## Usage
@@ -154,8 +155,6 @@ _For more examples, please refer to the [Documentation](https://docs.unraid.net/
<p align="right">(<a href="#readme-top">back to top</a>)</p> <p align="right">(<a href="#readme-top">back to top</a>)</p>
<!-- ROADMAP --> <!-- ROADMAP -->
<!-- ## Roadmap <!-- ## Roadmap
@@ -169,7 +168,28 @@ See the [open issues](https://github.com/unraid/api/issues) for a full list of p
<p align="right">(<a href="#readme-top">back to top</a>)</p> --> <p align="right">(<a href="#readme-top">back to top</a>)</p> -->
<!-- CONTRIBUTING --> <!-- CONTRIBUTING -->
<!-- ## Contributing ## Contributing
### Work Intent Process
Before starting development work on this project, you must submit a Work Intent and have it approved by a core developer. This helps prevent duplicate work and ensures changes align with the project's goals.
1. **Create a Work Intent**
* Go to [Issues → New Issue → Work Intent](https://github.com/unraid/api/issues/new?template=work_intent.md)
* Fill out the brief template describing what you want to work on
* The issue will be automatically labeled as `work-intent` and `unapproved`
2. **Wait for Approval**
* A core developer will review your Work Intent
* They may ask questions or suggest changes
* Once approved, the `unapproved` label will be removed
3. **Begin Development**
* Only start coding after your Work Intent is approved
* Follow the approach outlined in your approved Work Intent
* Reference the Work Intent in your future PR
---
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**. Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.
@@ -184,30 +204,26 @@ Don't forget to give the project a star! Thanks again!
<p align="right">(<a href="#readme-top">back to top</a>)</p> <p align="right">(<a href="#readme-top">back to top</a>)</p>
### Top contributors: ### Top contributors
<a href="https://github.com/unraid/api/graphs/contributors"> <a href="https://github.com/unraid/api/graphs/contributors">
<img src="https://contrib.rocks/image?repo=unraid/api" alt="contrib.rocks image" /> <img src="https://contrib.rocks/image?repo=unraid/api" alt="contrib.rocks image" />
</a> --> </a>
<!-- LICENSE --> <!-- LICENSE -->
<!-- ## License <!-- ## License
<p align="right">(<a href="#readme-top">back to top</a>)</p> --> <p align="right">(<a href="#readme-top">back to top</a>)</p> -->
<!-- CONTACT --> <!-- CONTACT -->
## Contact ## Contact
[@UnraidOfficial](https://twitter.com/UnraidOfficial) - support@unraid.net.com [@UnraidOfficial](https://twitter.com/UnraidOfficial) - <support@unraid.net.com>
Project Link: [https://github.com/unraid/api](https://github.com/unraid/api) Project Link: [https://github.com/unraid/api](https://github.com/unraid/api)
<p align="right">(<a href="#readme-top">back to top</a>)</p> <p align="right">(<a href="#readme-top">back to top</a>)</p>
<!-- ACKNOWLEDGMENTS --> <!-- ACKNOWLEDGMENTS -->
## Acknowledgments ## Acknowledgments
@@ -217,8 +233,6 @@ Project Link: [https://github.com/unraid/api](https://github.com/unraid/api)
<p align="right">(<a href="#readme-top">back to top</a>)</p> <p align="right">(<a href="#readme-top">back to top</a>)</p>
<!-- MARKDOWN LINKS & IMAGES --> <!-- MARKDOWN LINKS & IMAGES -->
<!-- https://www.markdownguide.org/basic-syntax/#reference-style-links --> <!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->
[contributors-shield]: https://img.shields.io/github/contributors/unraid/api.svg?style=for-the-badge [contributors-shield]: https://img.shields.io/github/contributors/unraid/api.svg?style=for-the-badge
@@ -233,7 +247,6 @@ Project Link: [https://github.com/unraid/api](https://github.com/unraid/api)
[license-url]: https://github.com/unraid/api/blob/master/LICENSE.txt [license-url]: https://github.com/unraid/api/blob/master/LICENSE.txt
[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=for-the-badge&logo=linkedin&colorB=555 [linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=for-the-badge&logo=linkedin&colorB=555
[linkedin-url]: https://www.linkedin.com/company/unraid [linkedin-url]: https://www.linkedin.com/company/unraid
[product-screenshot]: images/screenshot.png
[Nuxt.js]: https://img.shields.io/badge/Nuxt-002E3B?style=for-the-badge&logo=nuxtdotjs&logoColor=#00DC82 [Nuxt.js]: https://img.shields.io/badge/Nuxt-002E3B?style=for-the-badge&logo=nuxtdotjs&logoColor=#00DC82
[Node.js]: https://img.shields.io/badge/node.js-6DA55F?style=for-the-badge&logo=node.js&logoColor=white [Node.js]: https://img.shields.io/badge/node.js-6DA55F?style=for-the-badge&logo=node.js&logoColor=white
[PHP]: https://img.shields.io/badge/php-%23777BB4.svg?style=for-the-badge&logo=php&logoColor=white [PHP]: https://img.shields.io/badge/php-%23777BB4.svg?style=for-the-badge&logo=php&logoColor=white
@@ -241,4 +254,4 @@ Project Link: [https://github.com/unraid/api](https://github.com/unraid/api)
[Unraid-url]: https://unraid.net [Unraid-url]: https://unraid.net
[Nuxt-url]: https://nuxt.com/ [Nuxt-url]: https://nuxt.com/
[Node-url]: https://nodejs.org/ [Node-url]: https://nodejs.org/
[PHP-url]: https://php.net/ [PHP-url]: https://php.net/