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: docs/contributing.md
+44-12Lines changed: 44 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,25 +1,33 @@
1
1
# Contributing
2
2
3
+
We welcome contributions from the community to help improve FastAPI Maintenance.
4
+
3
5
First, you might want to see the basic ways to [help FastAPI Maintenance package and get help](help.md).
4
6
5
7
## Developing
6
8
7
9
If you already cloned the <ahref="https://github.com/msamsami/fastapi-maintenance"class="external-link"target="_blank">fastapi-maintenance repository</a> and you want to deep dive in the code, here are some guidelines to set up your environment.
8
10
9
-
### Virtual Environment with `uv`
11
+
### Install `uv`
12
+
13
+
We use `uv` for Python dependency management. If you don't have `uv` installed, follow the instructions on the <ahref="https://docs.astral.sh/uv/guides/install-python"class="external-link"target="_blank">official uv website</a>.
14
+
15
+
Once `uv` is installed, navigate to the cloned repository.
16
+
17
+
### Set up Virtual Environment
10
18
11
-
We use `uv` for Python package management. To set up your development environment:
19
+
To set up your development virtual environment with `uv`:
12
20
13
-
```console
21
+
```bash
14
22
uv venv
15
-
source .venv/bin/activate # On Windows: .venv\Scripts\activate
23
+
source .venv/bin/activate
16
24
```
17
25
18
-
### Install Development Dependencies
26
+
### Install Dependencies
19
27
20
-
After activating the environment, install the required development packages:
28
+
After activating the environment, install the required package and development dependencies:
21
29
22
-
```console
30
+
```bash
23
31
uv sync --all-extras --all-groups
24
32
```
25
33
@@ -29,17 +37,15 @@ This installs all the dependencies in your environment.
29
37
30
38
There is a script that you can run that will format and clean all your code:
31
39
32
-
```console
40
+
```bash
33
41
bash scripts/format.sh
34
42
```
35
43
36
-
It will also auto-sort all your imports.
37
-
38
44
## Tests
39
45
40
46
We use pytest for testing. To run the tests and generate coverage reports:
41
47
42
-
```console
48
+
```bash
43
49
bash scripts/test.sh
44
50
```
45
51
@@ -53,7 +59,7 @@ First, make sure you set up your environment as described above, that will insta
53
59
54
60
During local development, you can build the documentation site and check for any changes with live-reloading:
55
61
56
-
```console
62
+
```bash
57
63
mkdocs serve
58
64
```
59
65
@@ -68,3 +74,29 @@ The documentation uses <a href="https://www.mkdocs.org/" class="external-link" t
68
74
All the documentation is in Markdown format in the directory `./docs`.
69
75
70
76
Many of the tutorials have blocks of code. In most cases, these blocks of code are actual complete applications that can be run as is.
77
+
78
+
## Making Contributions
79
+
80
+
### Coding Standards
81
+
82
+
We try to maintain high code quality standards to ensure consistency across the project:
83
+
84
+
- Follow PEP 8 guidelines.
85
+
- Write meaningful tests for new features or bug fixes.
86
+
87
+
### Creating a Pull Request
88
+
89
+
After making your changes:
90
+
91
+
- Push your changes to your fork.
92
+
- Open a pull request with a clear description of your changes.
93
+
- Update the documentation if necessary.
94
+
95
+
### Code Reviews
96
+
97
+
Your contributions will go through our review process:
98
+
99
+
- Address any feedback from code reviews.
100
+
- Once approved, your contributions will be merged into the main branch.
101
+
102
+
Thank you for contributing to FastAPI Maintenance 🚀
0 commit comments