audit-labs/tutorials

Learn how to perform data analysis, scripting, automation, and more! data-analysis learning scripting tutorials

Commit 3f27f26ef6

3f27f26ef6c390bddb6e32e17419071b59950431

parent: 54aaa07bf2

Unregistered key

cmc <hello@cleberg.net> · 2026-01-27 22:29 UTC
committer: <noreply@github.com>

Add environment, CI, CONTRIBUTING and CODEOFCONDUCT

Layout: unified · split

.github/workflows/run-notebooks.yml added +39
@@ -0,0 +1,39 @@
1name: Execute Notebooks
2
3on:
4 push:
5 branches: [ main ]
6 pull_request:
7 branches: [ main ]
8 workflow_dispatch:
9
10jobs:
11 run-notebooks:
12 runs-on: ubuntu-latest
13 steps:
14 - uses: actions/checkout@v4
15
16 - name: Set up Python
17 uses: actions/setup-python@v4
18 with:
19 python-version: '3.10'
20
21 - name: Install dependencies
22 run: |
23 python -m pip install --upgrade pip
24 pip install -r requirements.txt
25
26 - name: Execute notebooks
27 run: |
28 mkdir -p executed
29 for nb in $(git ls-files '*.ipynb'); do
30 echo "Executing $nb"
31 jupyter nbconvert --to notebook --inplace --execute "$nb" --ExecutePreprocessor.timeout=600
32 jupyter nbconvert --to html "$nb" --output "executed/$(basename "$nb" .ipynb).html"
33 done
34
35 - name: Upload executed notebooks (HTML)
36 uses: actions/upload-artifact@v4
37 with:
38 name: executed-notebooks
39 path: executed/
\ No newline at end of file
CODEOFCONDUCT.md added +14
@@ -0,0 +1,14 @@
1# Contributor Covenant Code of Conduct
2
3This project adheres to the Contributor Covenant code of conduct. By participating, you agree to respect the community and follow these standards.
4
5Expected behavior
6- Be respectful and considerate in all communications.
7- Use inclusive language and be mindful of others' perspectives.
8- Report unacceptable behavior to the maintainers at hello@cleberg.net (or open an issue in this repository).
9
10Unacceptable behavior
11- Harassment or discriminatory language.
12- Personal attacks, threats, or sustained disruption.
13
14For a full version, you can adopt the complete Contributor Covenant (https://www.contributor-covenant.org/). If you want, I can include the full text and additional contact information.
\ No newline at end of file
CONTRIBUTING.md added +19
@@ -0,0 +1,19 @@
1# Contributing to audit-labs/tutorials
2
3Thanks for your interest in contributing! Contributions can include new tutorial notebooks, improvements to existing notebooks, documentation, CI improvements, and environment files.
4
5Recommended workflow
61. Fork the repository.
72. Create a feature branch: `git checkout -b feature/your-feature`.
83. Make your changes (keep each notebook focused and add explanatory markdown).
94. If adding dependencies, update `environment.yml` and `requirements.txt`.
105. Run notebooks locally and ensure they execute (or add tests / CI changes).
116. Commit with descriptive messages and open a pull request describing your changes.
12
13Coding / notebook guidelines
14- Keep notebooks self-contained and add a top-level markdown header explaining purpose.
15- Avoid embedding large, proprietary datasets; include links or small sample data.
16- Use `nbstripout` or `pre-commit` if you want to strip outputs before committing (optional).
17- When changing dependencies, mention version rationale in the PR description.
18
19If you're unsure about scope, open an issue first to discuss the plan.
\ No newline at end of file
environment.yml added +17
@@ -0,0 +1,17 @@
1name: audit-tutorials
2channels:
3 - conda-forge
4dependencies:
5 - python=3.10
6 - pip
7 - pandas>=2.3.3
8 - numpy>=1.26
9 - matplotlib>=3.10
10 - seaborn>=0.13
11 - openpyxl
12 - jupyterlab
13 - ipykernel
14 - nbconvert
15 - nbclient
16 - pip:
17 - papermill
\ No newline at end of file
requirements.txt added +10
@@ -0,0 +1,10 @@
1pandas>=2.3.3
2numpy>=1.26
3matplotlib>=3.10
4seaborn>=0.13
5openpyxl
6jupyterlab
7ipykernel
8nbconvert
9nbclient
10papermill
\ No newline at end of file