Skip to content
This repository was archived by the owner on Mar 13, 2024. It is now read-only.

Commit 0e51916

Browse files
committed
add structure.rst, reformat README
1 parent ff667c5 commit 0e51916

File tree

7 files changed

+79
-16
lines changed

7 files changed

+79
-16
lines changed

README.rst

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,9 @@ python3-pip-skeleton-cli
33

44
|code_ci| |docs_ci| |coverage| |pypi_version| |license|
55

6-
This skeleton module (inspired by `jaraco/skeleton
7-
<https://blog.jaraco.com/skeleton/>`_) is a generic Python project structure
8-
which provides a means to keep tools and techniques in sync between multiple
9-
Python projects.
6+
``python3-pip-skeleton-cli`` provides the documentation
7+
and a command line tool to enable the adoption of python3-pip-skeleton_
8+
into a new or existing Python project.
109

1110
============== ==============================================================
1211
PyPI ``pip install python3-pip-skeleton``
@@ -15,7 +14,16 @@ Documentation https://DiamondLightSource.github.io/python3-pip-skeleton-cli
1514
Releases https://github.com/DiamondLightSource/python3-pip-skeleton-cli/releases
1615
============== ==============================================================
1716

18-
It integrates the following tools:
17+
The related python3-pip-skeleton_ repository contains the source
18+
code that can be merged into new or existing projects, and pulled from to
19+
keep them up to date. It can also serve as a working example for those who
20+
would prefer to cherry-pick.
21+
22+
python3-pip-skeleton_ is inspired by `jaraco/skeleton
23+
<https://blog.jaraco.com/skeleton/>`_.
24+
It provides a generic Python project structure
25+
and allows developers to keep tools and techniques in sync between multiple
26+
Python projects. It integrates the following tools:
1927

2028
- pip and setuptools_scm for version management
2129
- Pre-commit with black, flake8 and isort for static analysis
@@ -26,20 +34,17 @@ It integrates the following tools:
2634
- which verifies all the things that CI does
2735
- If you use VSCode, it will run black, flake8, isort and mypy on save
2836

29-
The related skeleton_ repo for this module contains the source
30-
code that can be merged into new or existing projects, and pulled from to
31-
keep them up to date. It can also serve as a working example for those who
32-
would prefer to cherry-pick.
3337

34-
.. _skeleton: https://github.com/DiamondLightSource/python3-pip-skeleton
38+
.. _python3-pip-skeleton: https://github.com/DiamondLightSource/python3-pip-skeleton
39+
40+
Quick start
41+
-----------
3542

36-
This ``python3-pip-skeleton-cli`` repo contains the
37-
docs and a command line tool to ease the adoption of this skeleton into a
38-
new project like this::
43+
To create a new project based on skeleton::
3944

4045
python3-pip-skeleton new /path/to/be/created --org my_github_user_or_org
4146

42-
and existing projects::
47+
or to adopt skeleton into existing projects::
4348

4449
python3-pip-skeleton existing /path/to/existing/repo --org my_github_user_or_org
4550

docs/developer/how-to/run-tests.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
.. _using pytest:
2+
13
Run the tests using pytest
24
==========================
35

docs/user/explanations/decisions/0003-docs-structure.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
.. _documentation structure:
2+
13
3. Standard documentation structure
24
===================================
35

docs/user/explanations/decisions/0004-why-src.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
.. _src:
2+
13
4. Use a source directory
24
=========================
35

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
Skeleton Project Structure
2+
==========================
3+
4+
The skeleton project has the following folders at the root level.
5+
6+
src
7+
---
8+
9+
This folder contains the source code for the project. Typically this
10+
contains a single folder with the package name for the project and the
11+
folder contains python modules files.
12+
13+
See `src` for details.
14+
15+
tests
16+
-----
17+
18+
This folder holds all of the tests that will be run by pytest, both locally
19+
and in CI.
20+
21+
See `using pytest`
22+
23+
docs
24+
----
25+
26+
This folder contains the source for sphinx documentation.
27+
28+
See `documentation structure` for details.
29+
30+
.github
31+
-------
32+
33+
Configuration for the Continuous Integration Workflow on
34+
github
35+
36+
VSCode specific folders
37+
-----------------------
38+
39+
.devcontainer
40+
~~~~~~~~~~~~~
41+
42+
Configuration for running the developer container for this project
43+
in VSCode.
44+
45+
.vscode
46+
~~~~~~~
47+
48+
VSCode settings for this project.
49+
50+
- enable static analysis in the editor
51+
- enables python debugging.

docs/user/explanations/why-use-skeleton.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Why use a skeleton structure?
1+
Why Use a Skeleton Structure?
22
=============================
33

44
Many projects start from some kind of template. These define some basic

docs/user/index.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,9 @@ side-bar.
4343
:caption: Explanations
4444
:maxdepth: 1
4545

46-
explanations/decisions
46+
explanations/structure
4747
explanations/why-use-skeleton
48+
explanations/decisions
4849

4950
+++
5051

0 commit comments

Comments
 (0)