docs: updated CONTRIBUTING
Added better instructions for making issues/prs
mellbacon committed
May 27, 2023 at 11:47 UTC
298c9138eeec4099344b4b87ca22cd24a81d31aa
1 file changed
+73
-33
CONTRIBUTING.md
+73
-33
@@ -3,78 +3,118 @@
3
Before you get started, please note the following:
4
5
This project was made with [Tauri](https://tauri.app/) and was built with...
6
+
7
- [Svelte](https://svelte.dev/) (Frontend)
8
- [Rust](https://www.rust-lang.org/) (Backend)
9
- [TypeScript](https://www.typescriptlang.org/)
10
11
...and these build dependencies...
12
+
13
- [Yarn](https://yarnpkg.com/)
14
- [Node.js](https://nodejs.org)
15
14
-Note that yarn is the package manager I've decided to use for this project and it's what I have Tauri rely on for building the app at the moment. If you want to use another package manager like npm, you can but youll just need to change yarn to npm in the [tauri config](https://github.com/mellobacon/Nucleus/blob/master/src-tauri/tauri.conf.json) and for any command in these instructions that uses yarn.
16
+Note that yarn is the package manager I've decided to use for this project and it's what I have Tauri rely on for building the app at the moment. If you want to use another package manager like npm, you can but you'll just need to change yarn to npm in the [tauri config](https://github.com/mellobacon/Nucleus/blob/master/src-tauri/tauri.conf.json) and for any command in these instructions that uses yarn.
17
+
18
+## Submitting Issues
19
+
20
+If you found a bug, [submit a bug report](https://github.com/mellobacon/Nucleus/issues/new?assignees=&labels=bug&template=bug_report.md&title=%5BBUG%5D). If you want to discuss a feature you would like to see added, [submit a feature request](https://github.com/mellobacon/Nucleus/issues/new?assignees=&labels=enhancement&template=feature_request.md&title=%5BFEATURE%5D).
21
+
22
+When writing your issue, don't delete the template. You can fill it out and delete parts that do not apply, but don't delete the whole thing. It's there as a guideline and makes it easier for me to understand your request.
23
+
24
+## Submitting PRs
25
+
26
+If you want to contribute to Nucleus via code, doc edits, or otherwise make a pull request. Note that only PRs to the `dev` branch will be reviewed.
27
+
28
+- When making commits, please follow the Conventional Commits guildines outlined [here](https://www.conventionalcommits.org/en/v1.0.0/#specification).
29
+- Your commits must be [signed](https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits).
30
+
31
+- Do not submit a pull request that contains major changes unless an issue has been opened for it first. This way it can be discussed. Any PR that is submitted without an issue being open on it will not be accepted.
32
+
33
+**Note**: Any issue or pull request that contains spam or trolling will be marked as such and closed. Don't do it.
34
+
35
+**Note 2:** Keep in mind I am one person. *Do not beg me to look at your issue or PR.* I will get to it when I get to it. No PR is guarenteed to be merged. As life happens activity will fluctuate but that does not mean this project is abandoned. If this project is no longer being worked on I will say so.
36
+
37
+___
38
+
39
+## Development Guide
40
+
41
+Note: Right now only Windows is supported
42
+
43
+### Prerequisites
44
+
45
+- Rust
46
+- Node 16+
47
+- TypeScript
48
+- Yarn/Npm
49
+
50
+Follow these instructions for installing the prerequisites on Windows:
51
+
52
+1. Download and install [Build Tools for Visual Studio 2022](https://visualstudio.microsoft.com/visual-cpp-build-tools/)
53
+2. If you dont have it already, download and install [webview2](https://developer.microsoft.com/en-us/microsoft-edge/webview2/#download-section)
54
+3. Download and install Rust via `winget` or get it from [here](https://www.rust-lang.org/tools/install).
55
+
56
+```shell
57
+winget install --id Rustlang.Rustup
58
+```
59
+
60
+4. Download and install [nodejs](https://nodejs.org/en/)
61
+
62
+5. Install yarn
63
+
64
+```shell
65
+npm i -g yarn
66
+```
67
+
68
+6. Install [git](https://git-scm.com/download/win)
69
70
## Project Setup
71
72
Clone the repo via...
73
+
74
```bash
75
gh repo clone mellobacon/Nucleus
76
```
77
+
78
or
79
+
80
```bash
81
git clone https://github.com/mellobacon/Nucleus.git
82
```
83
84
If you want to clone from within your editor, copy ```https://github.com/mellobacon/Nucleus.git``` and follow the instructions for cloning a repo for your editor. Alternatively you can [download the zip file](https://github.com/mellobacon/Nucleus/archive/refs/heads/master.zip).
85
29
-Finally install the packages...
30
-```bash
31
-yarn install # Packages are listed in the package.json
32
-```
86
+Navigate to the project...
87
34
-## Running Nucleus
35
-
36
-First build the app. This will bundle the scripts, css, and other required project files.
88
```bash
38
-yarn build
89
+cd Nucleus
90
```
91
41
-Once you have the project built, you can run it via a desktop window or alternatively on a browser window*.
42
-
43
-\**Nucleus is meant to be run on a desktop window. Though it can load and run in a browser, expect weird behavior*
44
-
45
-### To run via a desktop window...
46
-
47
-(*Note on building for desktop: Make sure you have these [prerequisites](https://tauri.app/v1/guides/getting-started/prerequisites) as well as [the Tauri CLI](https://tauri.app/v1/guides/getting-started/tauri-cli)*.)
92
+Finally install the packages...
93
94
```bash
50
-yarn tauri dev
95
+yarn install # Packages are listed in the package.json
96
```
97
53
-### To run via browser...
98
+and build the files...
99
100
```bash
56
-yarn build # Will need to be run if there are file changes
57
-yarn start
101
+yarn build
102
```
103
60
-Navigate to [localhost:8080](http://localhost:8080). You should see the app running in the browser.
61
-
62
-## Compiling Nucleus
104
+This will bundle the scripts, css, and other required project files to be run later.
105
64
-To create an executable file...
65
-```bash
66
-yarn tauri build
67
-```
68
-(*Note: this is for building a single executable for your current OS. To build for other operating systems, read [how to build a Tauri app](https://tauri.app/v1/guides/building/).*)
106
___
107
71
-## Submitting Issues
108
+## Running Nucleus
109
73
-If you found a bug, [submit a bug report](https://github.com/mellobacon/Nucleus/issues/new?assignees=&labels=bug&template=bug_report.md&title=%5BBUG%5D). If you want to discuss a feature you would like to see added, [submit a feature request](https://github.com/mellobacon/Nucleus/issues/new?assignees=&labels=enhancement&template=feature_request.md&title=%5BFEATURE%5D).
110
+With Nucleus set up, follow this guide to run the development environment.
111
75
-***Do not*** submit a pull request that contains major changes unless an issue has been opened for it first. This way it can be discussed.
112
+Once you have the project built, you can run it via a desktop window.
113
77
-Also, when writing your issue, don't delete the issue template. You can fill it out and delete parts that do not apply, but don't delete the whole thing. It's there as a guideline and makes it easier for me to understand your request.
114
+### To run via a desktop window...
115
79
-**Note**: Any issue or pull request that contains spam or trolling will be marked as such and closed. Don't do it.
116
+```bash
117
+yarn tauri dev
118
+```
119
120
+(*Note on building for desktop: Make sure you have these [prerequisites](https://tauri.app/v1/guides/getting-started/prerequisites) as well as [the Tauri CLI](https://tauri.app/v1/guides/getting-started/tauri-cli)*.)
\ No newline at end of file