Skip to content

Commit 8acd1d1

Browse files
authored
Readme improvements (#8)
1 parent bf5eeb9 commit 8acd1d1

File tree

1 file changed

+14
-10
lines changed

1 file changed

+14
-10
lines changed

README.md

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ This project contains sample code for a Python CLI app. It attempts to create a
1414
[^1]: [Boring Python: dependency management](https://www.b-list.org/weblog/2022/may/13/boring-python-dependencies/)
1515
[^2]: [Boring Python: code quality](https://www.b-list.org/weblog/2022/dec/19/boring-python-code-quality/)
1616

17-
## Features
17+
## Features
1818

1919
The following libraries and frameworks are configured and working out of the box.
2020

@@ -33,7 +33,13 @@ The following libraries and frameworks are configured and working out of the box
3333
- [EditorConfig](https://editorconfig.org/): Generic editor config.
3434
- Some niceties for [VS Code](https://code.visualstudio.com/) (see below).
3535

36-
## Development environment
36+
## ⚙️Setup
37+
38+
Do either of the following.
39+
40+
- __Use this template__ button on GitHub to create a new project
41+
- __Open in a codespace__ button on GitHub to start playing with the project
42+
- Download, copy, or clone the project
3743

3844
### Visual Studio Code
3945

@@ -43,8 +49,6 @@ The fastest route to productivity will come from opening this project remotely i
4349

4450
Once the container is ready, the project will be buildable, lintable, and testable. Linting and formatting will be automatically done as you save. Check the _Problems_ tab for lint issues. Test cases will be automatically discovered in the _Testing_ tab. You can run all the tests or start debugging from here.
4551

46-
Alternatively, you can open the project in [Codespaces](https://github.com/features/codespaces) directly from GitHub. This will provide an identical Dev Container, but through VSCode on the browser. This is the fastest method to get your development environment up and running. However, the web editor is not as smooth as the native one.
47-
4852
If running locally instead, you will need Python3 with [hatch](https://github.com/pypa/hatch) (`pip install hatch`). In this scenario, it might be worthwhile to do the point VSCode to the Python interpreter of the dev environment in the project (`hatch run dev:python -c "import sys;print(sys.executable)"`).
4953

5054
### Other editors
@@ -65,7 +69,7 @@ pip install hatch
6569
pip install pre-commit && pre-commit install-hooks
6670
```
6771

68-
## Development cycle
72+
## 💻Development cycle
6973

7074
- Run your CLI app
7175

@@ -79,7 +83,7 @@ hatch run my-cli --help
7983
hatch run dev:lint
8084
```
8185

82-
- Run all tests and get coverage
86+
- Run all tests
8387

8488
```shell
8589
hatch run test:test
@@ -93,7 +97,7 @@ pre-submit run --all-files
9397

9498
Check out the example app code to get accustomed to the setup. You will need to change any name that starts with “my”, like _my description_.
9599

96-
## Continuous integration
100+
## 🤖Continuous integration
97101

98102
There is a robust CI pipeline already setup. It contains the following jobs.
99103

@@ -103,17 +107,17 @@ There is a robust CI pipeline already setup. It contains the following jobs.
103107

104108
Make sure your integration flow includes pull requests. Merge PRs only when the CI is successful, and you will have a good integration setup. Commit to main directly, and you will become a sad developer.
105109

106-
## Dependency management
110+
## 📦Dependency management
107111

108112
All dependencies are pinned to a specific version. Dependabot will send occasional pull requests to update dependencies to available versions. Merge them only when CI is passing.
109113

110114
This is not a strict implementation of reproducible builds, since indirect dependencies are not locked to specific versions. If an indirect dependency has a new version that is incompatible with our app, it might break our integration. This will be remedied with a lock file once _hatch_ supports locking dependencies.
111115

112-
## Questions, Feedback, and Contributions
116+
## 👋Help and contributions
113117

114118
I hope you will find this template useful. You can create an issue if you have a question, or if something is not working right for you. PRs are welcome if you would like to fix or add anything.
115119

116-
## Final thoughts and todos
120+
## 🚩Roadmap
117121

118122
The project scaffolds a basic CLI application. You can build upon this for your own, or you can also strip the CLI parts altogether to build a different type of Python package. Actual templatign a la [Cookiecuter](https://www.cookiecutter.io/) could be useful.
119123

0 commit comments

Comments
 (0)