Skip to content

Commit 9cac4e8

Browse files
committed
docs: update README and contribution guidelines
1 parent 2a0cb65 commit 9cac4e8

2 files changed

Lines changed: 158 additions & 1 deletion

File tree

CONTRIBUTING.md

Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
# Contributing
2+
3+
Thanks for helping improve `step-up`.
4+
5+
## Development Setup
6+
7+
Clone the repository and install dependencies:
8+
9+
```bash
10+
git clone https://github.com/LeMaterial/step-up.git
11+
cd step-up
12+
uv sync --dev
13+
```
14+
15+
Install the pre-commit hook:
16+
17+
```bash
18+
uv run pre-commit install
19+
```
20+
21+
Run the full local check suite:
22+
23+
```bash
24+
uv run pre-commit run --all-files
25+
```
26+
27+
## Common Commands
28+
29+
Format code:
30+
31+
```bash
32+
uv run ruff format
33+
```
34+
35+
Lint code:
36+
37+
```bash
38+
uv run ruff check
39+
```
40+
41+
Fix lint issues where possible:
42+
43+
```bash
44+
uv run ruff check --fix
45+
```
46+
47+
Run tests:
48+
49+
```bash
50+
uv run pytest
51+
```
52+
53+
Run tests with coverage:
54+
55+
```bash
56+
uv run pytest --cov=step_up
57+
```
58+
59+
## Signed Commits
60+
61+
Commits must be signed before they can be merged into protected branches.
62+
63+
To create a GPG key:
64+
65+
```bash
66+
gpg --full-generate-key
67+
```
68+
69+
List your secret keys and copy the key ID:
70+
71+
```bash
72+
gpg --list-secret-keys --keyid-format=long
73+
```
74+
75+
Configure Git to sign commits globally with that key:
76+
77+
```bash
78+
git config --global user.signingkey <KEY_ID>
79+
git config --global commit.gpgsign true
80+
```
81+
82+
Export the public key and add it to GitHub under
83+
`Settings -> SSH and GPG keys -> New GPG key`:
84+
85+
```bash
86+
gpg --armor --export <KEY_ID>
87+
```
88+
89+
After global signing is enabled, normal commits are signed automatically:
90+
91+
```bash
92+
git commit -m "Your commit message"
93+
```
94+
95+
To sign one commit explicitly:
96+
97+
```bash
98+
git commit -S -m "Your commit message"
99+
```
100+
101+
Verify the latest commit signature:
102+
103+
```bash
104+
git log --show-signature -1
105+
```
106+
107+
## Before Opening A Pull Request
108+
109+
Run:
110+
111+
```bash
112+
uv run pre-commit run --all-files
113+
```
114+
115+
If Ruff modifies files, stage the changes and run the command again.
116+
117+
Make sure commits are signed. The `main` branch is expected to require signed
118+
commits and passing status checks before changes can be merged.

README.md

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,41 @@
11
# step-up
2-
A benchmark for 2D to 3D conformer generation models
2+
3+
A benchmark for 2D to 3D conformer generation models.
4+
5+
## Getting Started
6+
7+
This project uses [`uv`](https://docs.astral.sh/uv/) for Python, dependency, and
8+
environment management.
9+
10+
```bash
11+
git clone https://github.com/LeMaterial/step-up.git
12+
cd step-up
13+
uv sync --dev
14+
```
15+
16+
Run the test suite:
17+
18+
```bash
19+
uv run pytest
20+
```
21+
22+
Run formatting and lint checks:
23+
24+
```bash
25+
uv run ruff format --check
26+
uv run ruff check
27+
```
28+
29+
## Usage
30+
31+
The benchmark is in early development. As functionality is added, reusable code
32+
will live under the `step_up` Python package and can be run through `uv`:
33+
34+
```bash
35+
uv run python
36+
```
37+
38+
## Contributing
39+
40+
See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup, pre-commit hooks,
41+
and contribution checks.

0 commit comments

Comments
 (0)