Skip to content

Commit af677e6

Browse files
authored
Add project overview of files and directories (#74)
* Remove obsolete "Knowning the Tools Config Files" section. * Describe files and directories of the project.
1 parent b0bb8c5 commit af677e6

4 files changed

Lines changed: 112 additions & 46 deletions

File tree

changelog.d/74.doc.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Explain project overview of files and directories
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
.. _dir-overview:
2+
3+
Project Overview
4+
================
5+
6+
This project is organized into several key directories and files that serve specific purposes. Understanding the structure of the project is essential for effective development and contribution.
7+
8+
9+
Directory Structure
10+
--------------------
11+
12+
The repository of this project contains the following directories:
13+
14+
* :file:`.github/`
15+
16+
Contains GitHub-specific files, such as issue templates and workflows.
17+
18+
* :file:`.ipython/`
19+
20+
Contains IPython configuration files, which are used for interactive development.
21+
22+
* :file:`.vscode/`
23+
24+
Contains Visual Studio Code configuration files, including settings and extensions specific to the project.
25+
26+
* :file:`changelog.d/`
27+
28+
Contains directories for :ref:`news fragments <add-newsfragments>` that are used to generate the :ref:`changelog <build-changelog>`.
29+
30+
* :file:`devel/`
31+
32+
Contains development-related files, including scripts and configurations for setting up the :ref:`development environment <devel-helpers>`.
33+
34+
* :file:`docs/`
35+
36+
Contains the documentation for the project, including guides for developers and users.
37+
38+
* :file:`etc/`
39+
40+
Contains configuration files for the project.
41+
42+
* :file:`src/`
43+
44+
Contains the source code of the project, organized into modules and packages.
45+
46+
* :file:`tests/`
47+
48+
Contains :ref:`unit tests <run-testsuite>` for the project.
49+
50+
File Structure
51+
--------------
52+
53+
The repository also contains several important files:
54+
55+
* :file:`.coveragerc`
56+
57+
Configuration file for the coverage tool, which is used to measure :ref:`code coverage <interprete-coverage>` during testing.
58+
59+
* :file:`.dockerignore`
60+
61+
Specifies files and directories that should be ignored by Docker when building images.
62+
63+
* :file:`.editorconfig`
64+
65+
Configuration file for code editors to maintain consistent coding styles across different editors.
66+
67+
* :file:`.gitignore`
68+
69+
Specifies files and directories that should be ignored by Git.
70+
71+
* :file:`.pytest.ini`
72+
73+
Configuration file for the :term:`Pytest` testing framework, which is used for :ref:`running tests <run-testsuite>`.
74+
75+
* :file:`.ruff.toml`
76+
77+
Configuration file for Ruff, a linter and formatter for Python code.
78+
79+
* :file:`CHANGELOG.rst`
80+
81+
The main changelog file, which is generated from the news fragments in :file:`changelog.d/`.
82+
83+
* :file:`Dockerfile`
84+
85+
The Dockerfile used to build the Docker image for the project.
86+
87+
* :file:`LICENSE`
88+
89+
The license file for the project, specifying the terms under which the code can be used and distributed.
90+
91+
* :file:`pyproject.toml`
92+
93+
The main configuration file for the project based on :pep:`621`.
94+
It contains metadata about the project, specifies dependencies, build system requirements, and other project metadata.
95+
96+
* :file:`README.rst`
97+
98+
The main README file for the project.
99+
100+
* :file:`towncrier.toml`
101+
102+
Configuration file for Towncrier, the tool used to :ref:`generate the changelog <build-changelog>` from news fragments.
103+
104+
* :file:`uv.lock`
105+
106+
A lock file generated by the package manager, which specifies the exact versions of dependencies used in the project.
107+
108+
* :file:`uv.toml`
109+
110+
Configuration file for the package manager, specifying project dependencies and settings.

docs/source/developer/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ This guide provides all the necessary information for contributing to the projec
99

1010
overview
1111
design
12+
directory-overview
1213

1314
.. toctree::
1415
:maxdepth: 2
@@ -35,5 +36,4 @@ This guide provides all the necessary information for contributing to the projec
3536
:maxdepth: 2
3637
:caption: Appendix
3738

38-
know-tools-config
3939
knowing-github-setup

docs/source/developer/know-tools-config.rst

Lines changed: 0 additions & 45 deletions
This file was deleted.

0 commit comments

Comments
 (0)