Skip to content

Commit 7c51cc0

Browse files
committed
update contributing docs
1 parent 2ed36d2 commit 7c51cc0

7 files changed

Lines changed: 169 additions & 39 deletions

File tree

docs/contributing/creating-prs.mdx

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
---
2+
title: Creating PRs
3+
description: How to propose code changes to Magnitude
4+
icon: hammer
5+
---
6+
7+
## Accepted PRs
8+
9+
Before you dive into making code changes, you should understand whether your work is likely to get merged!
10+
11+
Generally accepted PRs:
12+
- Bugfixes (for known or newly identified issues)
13+
- [Open issues](https://github.com/magnitudedev/magnitude/issues), especially issues that are affecting or blocking multiple people.
14+
15+
However, if there's something else you plan to implement - feel free to create an issue for it or run it by us on Discord first. You can wing it and create the PR too, but no guarantees it will be accepted.
16+
17+
<Info> If you're ever not sure if a PR is likely to get accepted, feel free to ping us on Discord. Keep in mind that even a working implementation of a feature or resolving an issue may recieve additional scrutiny based on conventions or quality. </Info>
18+
19+
Other general guidelines:
20+
- Changes in `magnitude-test` are more likely to be accepted quickly as the surface area to gain feature-parity with other test runners is quite large.
21+
- Changes to `magnitude-core` may also be accepted but may want to run these past us on Discord first.
22+
23+
24+
## PR Creation Process
25+
26+
To make a contribution to Magnitude, follow this process:
27+
28+
<Steps>
29+
<Step title="🍴 Create a fork for your PR">
30+
First, fork the Magnitude monorepo on GitHub into a version that lives on your account. This will enable you to push changes onto your fork that you can use to create PRs into the main repo.
31+
32+
1. Go to https://github.com/magnitudedev/magnitude
33+
2. Click "Fork", name it whatever, then "Create fork"
34+
3. Clone your fork locally
35+
</Step>
36+
<Step title="⚙️ Set up Magnitude monorepo">
37+
Follow the [Development Setup](/contributing/setup) instructions.
38+
</Step>
39+
<Step title="🛠️ Make a change">
40+
Create changes and push them to your fork, adhering to the conventions listed below.
41+
</Step>
42+
<Step title="📬 Submit a PR">
43+
[Create a PR](https://github.com/magnitudedev/magnitude/pulls) in the Magnitude repository requesting to merge from the appropriate branch on your fork.
44+
45+
Follow instructions below for what should be included in your [PR Description](#pr-description).
46+
</Step>
47+
<Step title="📝 Follow the review process">
48+
We regularly keep an eye out for new PRs - and may leave comments about any additional changes you may need to make in order for your PR to be merged.
49+
50+
Once we've taken a look - if the PR looks good, it'll be merged and you'll officially be a Magnitude contributor 😎
51+
52+
Upon the next release, your changes will be live and everyone can enjoy your contributions! 🎉
53+
54+
55+
</Step>
56+
</Steps>
57+
58+
<Info>PRs will be reviewed and accepted on a case-by-case basis. Submitting a PR does not guarantee that your work will be merged.</Info>
59+
60+
## PR Checklist
61+
62+
There's a few things you should be sure to do in any PR. Please follow these steps to help your PR get merged smoothly.
63+
64+
### ✅ Manually verify your own changes
65+
You should confirm your changes are working as expected, for example by using yalc to publish and test locally (see [local testing](/contributing/setup#local-testing)).
66+
67+
### ✅ Add a clear description
68+
If you've implemented a new feature, give example usage that demonstrates what changes you've made. You should also describe what you've done to confirm that your changes are working as expected (any manual testing).
69+
70+
### ✅ Create a `changeset` describing your changes:
71+
72+
Once you've made your other changes, run this from monorepo root:
73+
```
74+
bun changeset add
75+
```
76+
In this menu, add a comment describing your change. Unless it's a big change and you've received confirmation that your change should be a `major` or `minor` version bump, ensure that your changeset is marked as `patch`.
77+
78+
Commit this changeset file. This will ensure that the next release is tracking your change and will credit you as the author for the change.
79+
80+
### ✅ Update docs
81+
82+
If you've made a dev-facing change and there is an appropriate place in the docs that needs updating, feel free to do so.
83+
84+
This is not required, but we appreciate it!

docs/contributing/introduction.mdx

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,37 @@
11
---
22
title: Contributing to Magnitude
3-
description: "Let's build the future of testing together!"
3+
description: "Let's build some cool sh*t"
44
icon: book-open
55
---
66

7-
Magnitude aims to be the ultimate AI-powered testing framework, and our open source community enables us to grow and improve.
7+
Magnitude aims to be the best browser agent available, and our open source community enables us to grow and improve.
88

99
If you have a suggestion that you'd like to implement or want to help improve or fix an existing issue, we are open to contributions!
1010

1111
Read on to learn how to build the Magnitude repo locally and make changes, or how to suggest improvements.
1212

1313
<CardGroup cols={1}>
14-
<Card
15-
title="Development Setup"
16-
icon="wrench"
17-
href="/contributing/setup"
18-
>
19-
Learn how to set up the Magnitude codebase
20-
</Card>
14+
2115
<Card
2216
title="Making Suggestions"
2317
icon="lightbulb"
2418
href="/contributing/suggestions"
2519
>
2620
How to suggest improvements to Magnitude
2721
</Card>
22+
<Card
23+
title="Creating PRs"
24+
icon="hammer"
25+
href="/contributing/creating-prs"
26+
>
27+
How to start creating and merging Magnitude code changes
28+
</Card>
29+
<Card
30+
title="Development Setup"
31+
icon="wrench"
32+
href="/contributing/setup"
33+
>
34+
Learn how to set up the Magnitude codebase
35+
</Card>
2836
</CardGroup>
2937

docs/contributing/setup.mdx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,9 @@ To install bun:
3333
git clone https://github.com/magnitudedev/magnitude.git
3434
```
3535

36-
Since the initial install will fail due to the missing (unbuilt) dependency `magnitude-core`, do this:
37-
36+
Then run:
3837
```sh
39-
bun i && bun run build && bun i
38+
bun i && bun run build
4039
```
4140

4241
The monorepo now has dependencies installed and is built.

docs/docs.json

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"theme": "maple",
55
"description": "Open source AI agents for web testing",
66
"logo": "/logo.svg",
7-
"favicon": "/favicon.png",
7+
"favicon": "/logo.svg",
88
"icons": {
99
"library": "lucide"
1010
},
@@ -104,8 +104,9 @@
104104
"group": "Contributing",
105105
"pages": [
106106
"contributing/introduction",
107-
"contributing/setup",
108-
"contributing/suggestions"
107+
"contributing/suggestions",
108+
"contributing/creating-prs",
109+
"contributing/setup"
109110
]
110111
}
111112
]

docs/favicon.png

-391 Bytes
Binary file not shown.

docs/logo.svg

Lines changed: 58 additions & 24 deletions
Loading

docs/style.css

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
.nav-logo {
2+
height: 48px !important;
3+
max-height: 48px !important;
4+
}

0 commit comments

Comments
 (0)