Thank you for your interest in contributing to the Gold Pathfinder ML Project.
This project is developed as part of the MIT Emerging Talent – Experiential Learning Opportunity (ELO2) and follows best practices for scientific collaboration.
We follow a structured workflow using Git, GitHub Issues, milestones, and pull requests.
Before making changes:
- Open an Issue describing what you want to add or fix.
- Assign the Issue to the appropriate milestone.
- Add labels such as
data,documentation, oranalysis.
Name your branch based on the Issue:
feature/data-cleaningfeature/visualizationfix/missing-valuesdocs/update-readme
- Keep code modular and place scripts in
src/ - Add notebooks to
notebooks/ - Place raw data in
data/raw/ - Place cleaned / processed data in
data/processed/
Your PR must include:
- A clear description of what changed.
- Links to related Issues or Milestones.
- Screenshots or plots if visual changes were made.
- All PRs must be reviewed before merging.
- Only merge when CI checks (if enabled) pass.
- Write clean, readable Python.
- Use meaningful variable names.
- Comment complex logic.
- Use PEP8 style guidelines.
- Commit frequently with descriptive messages.
The following is the directory structure of the repository:
ELO2_Gold_Pathfinder_Project/
│
├── README.md # Project overview and instructions
├── CONTRIBUTING.md # Contribution guidelines
│
├── data/
│ ├── raw/ # Raw datasets (unaltered)
│ └── processed/ # Cleaned or processed data
│
├── docs/
│ ├── group_norms.md # Team collaboration norms
│ ├── communication_plan.md # Communication plan
│ ├── constraints.md # Project constraints
│ ├── learning_goals.md # Learning goals and objectives
│ └── meetings/
│ └── meeting_01.md # Meeting notes for first planning session
│
├── notebooks/
│ ├── 01_data_cleaning.ipynb # Data cleaning notebook
│ ├── 02_exploration.ipynb # Exploratory data analysis notebook
│ └── 03_visualization.ipynb # Data visualization notebook
│
├── src/
│ ├── data_preparation.py # Data cleaning and preparation scripts
│ └── visualization.py # Scripts for visualizing data
│
└── reports/
└── milestone_0_reflection.md # Reflection for Milestone 0
README.md: Contains the general project information, instructions, and setup guide.CONTRIBUTING.md: Provides guidelines for contributing to the project.data/: Holds all data-related files. Theraw/folder contains original datasets, andprocessed/contains cleaned or transformed data.docs/: Includes documentation files like team norms, communication plan, project constraints, and meeting notes.notebooks/: Jupyter notebooks used for data cleaning, exploration, and visualization.src/: Python scripts for data processing, cleaning, and visualization.reports/: Contains milestone reports and reflections.
This is ready for your CONTRIBUTING.md file, simply paste it in the appropriate section. Let me know if you need further changes!
- Keep all data cleaning steps reproducible in notebooks or scripts
- Do NOT modify raw data directly
- Always export cleaned data to
data/processed/
We follow the communication norms in docs/communication_plan.md:
- Respectful tone
- Clear, concise messages
- Weekly check-ins (if working with others)
All work in this project is shared under an open, educational license unless otherwise stated.