Skip to content

Commit 46bbef5

Browse files
committed
Update contribution guide
1 parent cb45015 commit 46bbef5

File tree

1 file changed

+20
-34
lines changed

1 file changed

+20
-34
lines changed

.github/CONTRIBUTING.md

Lines changed: 20 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -127,74 +127,60 @@ license your work under the terms of the [Apache 2.0 License](../LICENSE).
127127

128128
## Code guidelines
129129

130-
### Python
130+
We use [`uv`](https://docs.astral.sh/uv/) to manage the Python project, and [`just`](https://github.com/casey/just) as a task runner. See their resepctive documentation for details on how to install. To manage the JavaScript package you will also need to install [NodeJS](https://nodejs.org/)
131131

132-
We use [`nox`](https://nox.thea.codes/en/stable/) to test and lint Python code.
132+
Python code is linted using `ruff`, JavaScript code is linted using `prettier`. Run the linters with
133133

134134
```sh
135-
pip install nox
135+
just lint
136136
```
137137

138-
Code is linted using `black`, `flake8`, and `isort`. Run the linters with
138+
You can alternatively lint just the Python or JavaScript source with
139139

140140
```sh
141-
nox -s lint
141+
just lint-py
142+
just lint-js
142143
```
143144

144-
Many formatting issues can be fixed automatically by `black` and `isort`. Run
145-
them with
145+
Many formatting issues can be fixed automatically by `ruff` or `prettier` respectively. Run them with
146146

147147
```sh
148-
nox -s format
148+
just format
149149
```
150150

151151
Finally you can run the Python tests locally for a particular version of Python
152152
with
153153

154154
```sh
155-
nox -s test-3.8
155+
just python_version=3.10 test-py
156156
```
157157

158-
and similarly for other versions.
158+
and similarly for other versions. Run the JavaScript unit tests with
159159

160-
### JS
161-
162-
Prettier to format JavaScript code as configured in `.prettierrc`. You can lint
163-
your code with
164-
165-
```bash
166-
npm run lint
160+
```sh
161+
npm test
162+
# or
163+
just test-js
167164
```
168165

169-
and format it automatically with
166+
Run all tests with
170167

171-
```bash
172-
npm run format
168+
```sh
169+
just test
173170
```
174171

175-
### Run tests
176-
177-
Run `npm run test` before committing to ensure your changes pass our tests.
178-
179172
## Building dash-bootstrap-components locally
180173

181-
To build _dash-bootstrap-components_ locally, first install the Python
182-
development dependencies
183-
184-
```sh
185-
python -m pip install -r requirements-dev.txt
186-
```
187-
188-
Then install JavaScript dependencies
174+
First install JavaScript dependencies
189175

190176
```sh
191177
npm install
192178
```
193179

194-
You can now build Python, R and Julia packages with
180+
Then build with
195181

196182
```sh
197-
npm run build
183+
just build
198184
```
199185

200186
## License

0 commit comments

Comments
 (0)