You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: CONTRIBUTING.md
+67-24
Original file line number
Diff line number
Diff line change
@@ -17,21 +17,47 @@ If you are here to suggest a feature, first create an issue if it does not alrea
17
17
If you have been assigned to fix an issue or develop a new feature, please follow these steps to get started:
18
18
19
19
- Fork this repository.
20
-
- Install dependencies by running `$ pnpm install`.
21
-
- We use [pnpm](https://pnpm.io/) v7 for package management.
22
-
- We use [nvm](https://github.com/nvm-sh/nvm) to manage node versions - please make sure to use the version mentioned in `.nvmrc`.
23
-
- Run development server using `pnpm run watch`.
20
+
- Install dependencies
21
+
22
+
```bash
23
+
pnpm install
24
+
```
25
+
26
+
- We use [pnpm](https://pnpm.io/) v9 for package management (run in case of pnpm-related issues).
27
+
28
+
```bash
29
+
corepack enable&& corepack prepare
30
+
```
31
+
32
+
- We use [nvm](https://github.com/nvm-sh/nvm) to manage node versions - please make sure to use the version mentioned in`.nvmrc`
33
+
34
+
```bash
35
+
nvm use
36
+
```
37
+
38
+
- Build all packages.
39
+
40
+
```bash
41
+
pnpm build:all
42
+
```
43
+
44
+
- Run development server.
45
+
46
+
```bash
47
+
pnpm run watch
48
+
```
49
+
24
50
- Implement your changes and tests to files in the `src/` directory and corresponding test files.
25
51
- Document your changes in the appropriate doc page.
26
52
- Git stage your required changes and commit (see below commit guidelines).
27
53
- Submit PR for review.
28
54
29
55
### Editing the docs locally and previewing the changes
30
56
31
-
The documentations for all the TanStack projects are hosted on [tanstack.com](https://tanstack.com), which is a Remix application (https://github.com/TanStack/tanstack.com). You need to run this app locally to preview your changes in the `TanStack/form` docs.
57
+
The documentations forall the TanStack projects are hosted on [tanstack.com](https://tanstack.com), which is a TanStack Start application (https://github.com/TanStack/tanstack.com). You need to run this app locally to preview your changesin the `TanStack/form` docs.
32
58
33
59
> [!NOTE]
34
-
> The Remix app fetches the doc pages from GitHub in production, and searches for them at `../form/docs` in development. Your local clone of `TanStack/form` needs to be in the same directory as the local clone of `TansStack/tanstack.com`.
60
+
> The website fetches the doc pages from GitHub in production, and searches forthem at `../form/docs`in development. Your local clone of `TanStack/form` needs to be in the same directory as the local clone of `TansStack/tanstack.com`.
35
61
36
62
You can follow these steps to set up the docs forlocal development:
- Make sure you've installed the dependencies by running `$ pnpm install` in the repo's root directory.
89
-
- If you want to run the example against your local changes, run `pnpm run watch` in the repo's root directory. Otherwise, it will be run against the latest TanStack Form release.
90
-
- Run `pnpm run dev` in the selected examples' directory.
114
+
- Make sure you've installed the dependencies in the repo's root directory.
115
+
116
+
```bash
117
+
pnpm install
118
+
```
119
+
120
+
- If you want to run the example against your local changes, run below in the repo's root directory. Otherwise, it will be run against the latest TanStack Form release.
121
+
122
+
```bash
123
+
pnpm run watch
124
+
```
91
125
92
-
#### Note on `examples/react-native`
126
+
- Run below in the selected examples' directory.
93
127
94
-
React Native example requires Expo to work. Please follow the instructions from example's README.md file to learn more.
128
+
```bash
129
+
pnpm run dev
130
+
```
95
131
96
132
#### Note on standalone execution
97
133
@@ -103,8 +139,17 @@ You can use Gitpod (An Online Open Source VS Code like IDE which is free for Ope
103
139
104
140
- clone the `TanStack/form` repo.
105
141
- install all the dependencies in `/` and `/docs`.
106
-
- run `npm start` in the root(`/`) to Auto-build files.
107
-
- run `npm run dev` in `/docs`.
142
+
- run below in the root(`/`) to Auto-build files.
143
+
144
+
```bash
145
+
npm start
146
+
```
147
+
148
+
- run below in `/docs`.
149
+
150
+
```bash
151
+
npm run dev
152
+
```
108
153
109
154
[](https://gitpod.io/#https://github.com/TanStack/form)
110
155
@@ -119,7 +164,7 @@ We have very precise rules over how our git commit messages can be formatted. Th
119
164
Each commit message consists of a **header**, a **body** and a **footer**. The header has a special
120
165
format that includes a **type**, a **scope** and a **subject**:
121
166
122
-
```
167
+
```text
123
168
<type>(<scope>): <subject>
124
169
<BLANK LINE>
125
170
<body>
@@ -138,17 +183,15 @@ Must be one of the following:
138
183
- **feat**: A new feature
139
184
- **fix**: A bug fix
140
185
- **docs**: Documentation only changes
141
-
-**style**: Changes that do not affect the meaning of the code (white-space, formatting, missing
142
-
semi-colons, etc)
186
+
- **style**: Changes that do not affect the meaning of the code (white-space, formatting, missing semicolons, etc.)
143
187
- **refactor**: A code change that neither fixes a bug nor adds a feature
144
188
- **perf**: A code change that improves performance
145
189
- **test**: Adding missing or correcting existing tests
146
-
-**chore**: Changes to the build process or auxiliary tools and libraries such as documentation
147
-
generation
190
+
- **chore**: Changes to the build process or auxiliary tools and libraries such as documentation generation
148
191
149
192
### Scope
150
193
151
-
The scope could be anything specifying place of the commit change. For example `useForm`, `useMutation` etc...
194
+
The scope could be anything specifying place of the commit change. For example `form-core`, `react-form` etc...
152
195
153
196
You can use `*` when the change affects more than a single scope.
154
197
@@ -174,11 +217,11 @@ The footer should contain any information about **Breaking Changes** and is also
174
217
175
218
Here is an example of the release type that will be done based on a commit messages:
|`perf(pencil): remove graphiteWidth option`<br><br>`BREAKING CHANGE: The graphiteWidth option has been removed.`<br>`The default graphite width of 10mm is always used for performance reasons.`|~~Major~~ Breaking Release |
| perf(pencil): remove `graphiteWidth` option<br/><br/>BREAKING CHANGE: The `graphiteWidth` option has been removed.<br/>The default graphite width of 10mm is always used for performance reasons. |~~Major~~ Breaking Release |
0 commit comments