Skip to content

Commit c8af00b

Browse files
committed
🎉 Create initial project structure
0 parents  commit c8af00b

File tree

16 files changed

+665
-0
lines changed

16 files changed

+665
-0
lines changed

.github/workflows/docs.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: docs
2+
3+
on:
4+
pull_request:
5+
push:
6+
branches: [main]
7+
8+
jobs:
9+
docs:
10+
name: Build docs and check links
11+
runs-on: ubuntu-latest
12+
steps:
13+
- uses: actions/checkout@v4
14+
- uses: pandoc/actions/setup@v1
15+
- uses: ts-graphviz/setup-graphviz@v2
16+
- uses: actions/setup-python@v5
17+
with:
18+
cache: pip
19+
# Keep in sync with .readthedocs.yaml
20+
python-version-file: .python-version
21+
- run: python -m pip install -e ".[docs]"
22+
- run: python -m sphinx -nb html docs/ docs/_build/html
23+
- run: python -m sphinx -b linkcheck docs/ docs/_build/html

.gitignore

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
.python-version
2+
3+
# Distribution / packaging
4+
*.egg-info/
5+
6+
# Sphinx documentation
7+
docs/_build/
8+
9+
# Jupyter Notebook
10+
.ipynb_checkpoints
11+
12+
# virtualenv
13+
.venv

.pre-commit-config.yaml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# See https://pre-commit.com for more information
2+
# See https://pre-commit.com/hooks.html for more hooks
3+
4+
ci:
5+
autoupdate_schedule: monthly
6+
7+
repos:
8+
- repo: https://github.com/pre-commit/pre-commit-hooks
9+
rev: v5.0.0
10+
hooks:
11+
- id: trailing-whitespace
12+
- id: end-of-file-fixer
13+
- id: check-json
14+
types: [file] # override `types: [json]`
15+
files: \.(json|ipynb)$
16+
- id: check-yaml
17+
- id: check-added-large-files
18+
args: ['--maxkb=1024']
19+
- repo: https://github.com/sphinx-contrib/sphinx-lint
20+
rev: v1.0.0
21+
hooks:
22+
- id: sphinx-lint
23+
types: [rst]
24+
- repo: https://github.com/pycqa/isort
25+
rev: 5.13.2
26+
hooks:
27+
- id: isort
28+
additional_dependencies: ["toml"]
29+
entry: isort --profile=black
30+
name: isort (python)
31+
- repo: https://github.com/psf/black
32+
rev: 24.10.0
33+
hooks:
34+
- id: black
35+
- repo: https://github.com/adamchainz/blacken-docs
36+
rev: "1.19.1"
37+
hooks:
38+
- id: blacken-docs
39+
args: [--line-length=79]
40+
additional_dependencies:
41+
- black
42+
- repo: https://github.com/codespell-project/codespell
43+
rev: v2.3.0
44+
hooks:
45+
- id: codespell
46+
- repo: local
47+
hooks:
48+
- id: linkcheck
49+
entry: sphinx-build -b linkcheck docs _build/html
50+
name: linkcheck
51+
language: system
52+
files: $(git diff --staged --name-only "*")

.python-version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
3.12

.readthedocs.yaml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# .readthedocs.yaml
2+
# Read the Docs configuration file
3+
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4+
5+
# Required
6+
version: 2
7+
8+
# Set the version of Python and other tools you might need
9+
build:
10+
os: ubuntu-22.04
11+
apt_packages:
12+
# graphviz is required for sphinx.ext.graphviz
13+
- graphviz
14+
tools:
15+
python: "3.12"
16+
17+
# Build documentation in the docs/ directory with Sphinx
18+
sphinx:
19+
configuration: docs/conf.py
20+
21+
# If using Sphinx, optionally build your docs in additional formats such as PDF
22+
formats:
23+
- epub
24+
- pdf
25+
26+
# Optionally declare the Python requirements required to build your docs
27+
python:
28+
install:
29+
- method: pip
30+
path: .
31+
extra_requirements:
32+
- docs

CHANGELOG.rst

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
Changelog
2+
=========
3+
4+
Alle nennenswerten Änderungen an diesem Projekt werden in dieser Datei
5+
dokumentiert.
6+
7+
Das Format basiert auf `Keep a Changelog
8+
<https://keepachangelog.com/en/1.0.0/>`_ und dieses Projekt hält sich an
9+
`Calendar Versioning <https://calver.org>`_.
10+
11+
Die erste Zahl der Version ist das Jahr. Die zweite Zahl wird mit jeder Version
12+
erhöht, beginnend bei 1 für jedes Jahr. Die dritte Zahl ist für Notfälle, wenn
13+
wir Zweige für ältere Versionen starten müssen.
14+
15+
.. unreleased
16+
17+
Unreleased
18+
----------
19+
20+
Added
21+
~~~~~
22+
23+
* 🎉 Create initial project structure

LICENSE

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
Copyright (c) Veit Schiele.
2+
All rights reserved.
3+
4+
Redistribution and use in source and binary forms, with or without modification,
5+
are permitted provided that the following conditions are met:
6+
7+
1. Redistributions of source code must retain the above copyright notice,
8+
this list of conditions and the following disclaimer.
9+
10+
2. Redistributions in binary form must reproduce the above copyright
11+
notice, this list of conditions and the following disclaimer in the
12+
documentation and/or other materials provided with the distribution.
13+
14+
3. Neither the name of Veit Schiele nor the names of its contributors
15+
may be used to endorse or promote products derived from this software
16+
without specific prior written permission.
17+
18+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
19+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20+
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
22+
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23+
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24+
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
25+
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27+
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

README.rst

Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
Schnelleinstieg
2+
===============
3+
4+
Status
5+
------
6+
7+
.. image:: https://img.shields.io/github/contributors/cusyio/neural-network-tutorial.svg
8+
:alt: Contributors
9+
:target: https://github.com/cusyio/neural-network-tutorial/graphs/contributors
10+
.. image:: https://img.shields.io/github/license/cusyio/neural-network-tutorial.svg
11+
:alt: License
12+
:target: https://github.com/cusyio/neural-network-tutorial/blob/main/LICENSE
13+
.. image:: https://readthedocs.org/projects/neural-network-tutorial/badge/?version=latest
14+
:alt: Docs
15+
:target: https://neural-network-tutorial.readthedocs.io/de/latest/
16+
17+
Installation
18+
------------
19+
20+
#. Auschecken:
21+
22+
.. code-block:: console
23+
24+
$ git clone [email protected]:cusyio/neural-network-tutorial.git
25+
26+
#. Installieren von Python-Paketen:
27+
28+
… auf Linux/macOS:
29+
30+
.. code-block:: console
31+
32+
$ python3 -m venv .venv
33+
$ . .venv/bin/activate
34+
$ python -m pip install --upgrade pip
35+
$ python -m pip install -e ".[dev]"
36+
37+
… auf Windows:
38+
39+
.. code-block:: ps1con
40+
41+
C:> py -m venv .venv
42+
C:> .\.venv\Scripts\activate.bat
43+
C:> python -m pip install --upgrade pip
44+
C:> python -m pip install -e ".[dev]"
45+
46+
#. Erstellen der HTML-Dokumentation:
47+
48+
.. note::
49+
pandoc muss installiert sein.
50+
51+
… auf Debian/Ubuntu:
52+
53+
.. code-block:: console
54+
55+
$ sudo apt install pandoc
56+
57+
Zum Erstellen der HTML-Dokumentation führt den folgenden Befehl aus:
58+
59+
.. code-block:: console
60+
61+
$ sphinx-build -ab html docs/ docs/_build/html/
62+
63+
#. Erstellen eines PDF:
64+
65+
Zum Erstellen einer PDF-Dokumentation benötigt ihr zusätzliche Pakete, die
66+
ihr installieren könnt
67+
68+
… auf Debian/Ubuntu mit
69+
70+
.. code-block:: console
71+
72+
$ sudo apt install texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended latexmk
73+
74+
… auf macOS mit
75+
76+
.. code-block:: console
77+
78+
$ brew cask install mactex
79+
80+
🍺 mactex was successfully installed!
81+
$ curl --remote-name https://www.tug.org/fonts/getnonfreefonts/install-getnonfreefonts
82+
$ sudo texlua install-getnonfreefonts
83+
84+
mktexlsr: Updating /usr/local/texlive/2020/texmf-dist/ls-R...
85+
mktexlsr: Done.
86+
87+
Anschließend könnt ihr ein PDF generieren mit:
88+
89+
.. code-block:: console
90+
91+
$ cd docs/
92+
$ make latexpdf
93+
94+
The LaTeX files are in _build/latex.
95+
Run 'make' in that directory to run these through (pdf)latex
96+
97+
98+
Das PDF findet ihr dann in ``docs/_build/latex/pythonbasics.pdf``.
99+
100+
Folgt uns
101+
---------
102+
103+
* `GitHub <https://github.com/cusyio/neural-network-tutorial>`_
104+
105+
Pull-Requests
106+
-------------
107+
108+
Wenn ihr Vorschläge für Verbesserungen und Ergänzungen habt, empfehlen wir euch,
109+
einen `Fork <https://github.com/cusyio/neural-network-tutorial/fork>`_ unseres
110+
`GitHub Repository <https://github.com/cusyio/neural-network-tutorial/>`_ zu
111+
erstellen und eure Änderungen dort zu machen. Bevor ihr Commits macht,
112+
überprüft, ob die pre-commit-Checks erfolgreich durchlaufen:
113+
114+
.. code-block:: console
115+
116+
$ cd neural-network-tutorial
117+
$ pre-commit install

docs/Makefile

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Minimal makefile for Sphinx documentation
2+
#
3+
4+
# You can set these variables from the command line, and also
5+
# from the environment for the first two.
6+
SPHINXOPTS ?=
7+
SPHINXBUILD ?= sphinx-build
8+
SOURCEDIR = .
9+
BUILDDIR = _build
10+
11+
# Put it first so that "make" without argument is like "make help".
12+
help:
13+
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14+
15+
.PHONY: help Makefile
16+
17+
# Catch-all target: route all unknown targets to Sphinx using the new
18+
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19+
%: Makefile
20+
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14.7 KB
Binary file not shown.

0 commit comments

Comments
 (0)