Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 10 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,22 @@ A well-written README makes your RAP project accessible and easy for others to u
-->
# Work in Progress - RAP demonstration repository for Python

Welcome to the RAP (Reproducible Analytical Pipeline) demonstration repository! This repository is designed for beginners to practice RAP principles, experiment with code, and learn best practices for reproducible, automated, and transparent analytical pipelines in Python.
Welcome to the RAP (Reproducible Analytical Pipeline) demonstration repository! This repository is designed for beginner to intermediate coders to practice RAP principles, experiment with code, and learn best practices for Reproducible Analytical Pipelines in Python.

**This repository is still in development**

## Getting Started

1. **Fork the repository:**
- Go to the GitHub page for this repository.
- Click the "Fork" button in the top right to create your own copy.
- Clone your forked repository:
- Forking means creating your own copy of this project on GitHub. Go to the [GitHub page](https://github.com/ONSdigital/python_rap_demo) for this repository (if you are not there already) and click the "Fork" button in the top right.
- After forking, go to your new repository (it will be at `https://github.com/<your-username>/python_rap_demo`).
- Click the green "Code" button and copy the URL shown under "Clone".
- Open a terminal (Command Prompt) and run:
```cmd
git clone https://github.com/<your-username>/python_rap_demo.git
cd python_rap_demo
```
- **Tip:** To check you are in the project root, run `dir` and make sure you see files like `README.md` and folders like `src` and `data`.

2. **Set up your environment:**
- Create and activate a virtual environment:
Expand Down Expand Up @@ -62,7 +64,8 @@ This will:
- Load configuration from user_config.yaml
- Read input data from health_data.csv
- Clean and process the data
- Write outputs and generate a markdown report in outputs
- Write the cleaned data to `data/outputs/cleaned/health_data_cleaned.csv`
- Write outputs and generate a markdown report in `data/outputs/reports/`
- You should see a message confirming the report was generated.

Explore the existing code and add your own to the `src/` folder.
Expand All @@ -76,16 +79,14 @@ All exercises for RAP learning are in the `exercises/` folder. These are not par
- Add new modules
- Use config files
- Write unit tests
- Set up and customize pre-commit hooks
- Set up and customise pre-commit hooks
- Apply RAP principles in real code

**Do not edit files in `src/` unless instructed by an exercise.**

### Understanding the purpose of each file and folder

Information about different files and folders can be found throughout the pipeline:
- Files: Contain information on what they are and what they are used for in a RAP in the file itself, except .secrets.baseline. .secrets.baseline information can be found in the `docs` folder
- Folders: Contain a README to explain what the folder is for and typical files it contains
- Folders: Contain a markdown (.md) file to explain what the folder is for and typical files it contains.
- Scripts: Fully documented with docstrings and comments.

### Create and run tests
Expand All @@ -97,10 +98,6 @@ Run tests with:
pytest tests
```

## Contributing

This repo is for learning and experimentation. If you want to contribute improvements, please read `CONTRIBUTING.md`.

## AI declaration

AI has been used in the production of this content.
Expand Down