Thank you for considering contributing to our training materials. This guide offers general information about the structure of the project as well as a high-level overview of a workflow that is put in place to streamline the contribution process.
If you want to get in touch, choose one of the following methods based on the problem that you are facing:
- reach out via Slack to chat about the contents of this repository or seek support;
- join the Google Group to stay up to date with the project and discuss any of its aspects;
- drop us an email if you need to ask a private question or raise a concern; and
- open a GitHub issue to report a problem with this learning resource.
For problems related to the underlying software -- the FAT Forensics Python package -- please raise issues and contribute pull requests in its dedicated GitHub repository fat-forensics/fat-forensics.
The main educational component is a collection of Jupyter Notebooks that can be found in the notebooks
directory.
They are prefixed with a number (#-xxx.ipynb
) specifying their order.
The notebooks are complemented by:
README.md
-- describes the notebooks and auxiliary files;requirements.txt
-- captures the Python packages and their versions required to execute the notebooks; andfatf_ecml.py
-- implements bespoke Python functions to streamline the contents of the notebooks.
Additionally, the notebooks offer badges/buttons to launch them through Binder and Colab.
The former copies the entire GitHub repository, hence no additional environment setup is needed;
however, the latter only grabs the selected notebook, therefore the fatf_ecml.py
script has to be downloaded explicitly, and the fatf_ecml.initialise_colab
function called to configure the execution environment.
Non-computational resources supporting this training module are:
- video recordings of the tutorial published as a YouTube playlist; and
- slides provided as a collection of PDFs.
See the dedicated webpage for more details.
Note that code is licenced under BSD 3-Clause, and text is licenced under CC BY-NC-SA 4.0.
Before contributing to the repository, please open an issue to report and discuss the problem you encounter.
Please include the versions of your operating system, Python and packages (pip list
) to make the debugging easier.
If possible, include the error trace and a minimal example that can be used to reproduce the problem.
Contribute your changes to a dedicated branch in a fork of the repository. When ready, open a pull request to initiate the process of integrating your contributions into the codebase. Please note that the notebooks are tested with a GitHub Action; it checks whether the output of the notebook cells can be reproduced by executing them.