Welcome to the Observing Unci Maka repository, part of the Environmental Data Science Innovation and Impact Lab (ESIIL) at CU Boulder. This repository serves as the central hub for our working group, hosting our project description, member bios, codebase, and more.
This working group brings together Tribal members, scientists, students and NASA remote sensing researchers to formulate new methods of using existing earth observation data to identify, monitor, and address environmental injustices in Tribal communities. We have two in-person meetings that we are using to gather preliminary insights to how NASA datasets could be used to address important socio-environmental issues near Tribally-managed lands as well as landscapes that sustain cultural resources that are important for Indigenous Ways of Being and Knowing.
Project Deliverables - Updated May 2026
We welcome contributions from all group members. To maintain the quality and integrity of the repository, please adhere to the following guidelines:
A repository for the development of code and workflows for the Observing Unci Maka ESIIL working group.
Instructions adapted from Earth Data Science.org
Note: if you already have Python installed you may skip ahead to #3
- Download the correct (e.g., Windows, MacOS, or Linux) miniconda from: https://docs.anaconda.com/miniconda/
Run the installer by double-clicking on the downloaded file and follow the steps below.
Note that even though the installation is for Miniconda, the installer uses the word Anaconda in these options. You will also see a message in red text that selecting “Add Anaconda to my PATH environment variable” is not recommended; continue with this selection to make using conda easier in Git Bash.
Run the installer by double-clicking on the downloaded file and by following the steps below:
This installation will provide you with both Git and Bash within the Git Bash program.
Install Git and Bash for MacOS
The default shell in all versions of Mac OS X is Bash, so no need to install anything. You access Bash from the Terminal (found in /Applications/Utilities).
More instructions for what Bash is and how to use it can be found on the EarthDataScience.org tutorial
Cloning the repository essentially sets up a folder on your local machine that is a copy of the GitHub repository. Any changes you make in this folder (i.e., writing new code) can be “pushed” to the GitHub repository for all to see.
Note: Further instructions for cloning repositories can be found at this link
Note: I (Max here) like using GitHub Desktop because it is straightforward and requires less from the terminal. However, both of the below options are good

\

cd <path-to-local-directory>
git clone <repository url>
For our work, we have a “.yaml” file, which is a Python environment file that can be used to install all the dependencies we will need for coding. Updates to this file with new packages, etc., allows us to keep a consistent environment for everyone working on the project. You may have to periodically reinstall the environment as we make changes (adding new packages).
** To setup the environment for the first time:**
cd <path-to-local-repo>
ls
You should see the list of files, etc., in the repo including our “py-unci-maka.yaml”
conda env create --file=py-unci-maka.yaml
conda activate py-unci-maka
python -m ipykernel install --user --name=py-unci-maka
jupyter-lab
Note: this will open JupyterLab in your default browser window. When you start a JupyterLab, make sure you ‘cd’ (change directory) into the GitHub repo you cloned on your local machine. This will ensure you have easy access to all the files and code in the repository.
*To update your ‘py-unci-maka’ environment:*
Note: These steps are for updating the environment you’ve created. As we develop code, we will periodically be updating the “.yaml” file with new Python packages. To update the conda environment, or to make sure you are using the most recent version, follow these steps…
- Make sure the GitHub repository is up to date:
- If using GitHub Desktop:
- Open GitHub Desktop
- Make sure your in the correct repository (“observing-Unci-Maka”)
- In the top right, click “Pull”
![]()
Note: this action makes sure that the repository on your local machine is the most up-to-date. For example, if others have made changes to the rpeository since you last worked on it, these changes will be visible once you “pull” them. Similarly, you can “Push” changes to the repository when you have made edits on your local machine.
- If using Terminal/Bash
- First, create a personal access token following these instructions
- Open Terminal/Bash
- Change directory into the local GitHub repository (where you cloned it on your machine)
cd <path-to-local-repo>- Check the origin. When prompted, enter your GitHub username and then copy and paste the Personal Access Token for your password
git remote -v git fetch origin- Pull the latest version of the repository
git pull- Now, you can update your conda environment in terminal/bash:
conda activate py-unci-maka conda env update --file py-unci-maka.yaml --prune
*To push local changes to GitHub:*
The website is built from the docs/ folder. Every time you change a file there, the website updates automatically.
Create a new .md file inside docs/ (like methods.md). It will become a new page on your site.
Put the file in docs/assets/ and add it to a page with
.
————————————– Hope this Helped! ————————— ————————————————– —————————————– ————————————————————- ————————————————
This section of the repository will include all the code developed for the project. You can structure it as follows:
————————————– Hope this Helped! ————————— ————————————————– —————————————– ————————————————————- ————————————————
If you encounter any issues or have questions about how to contribute, please refer to the ESIIL Support Page or contact the repository maintainers directly.
As a new working group, you’ll want to make this repository your own. Here’s how to get started:
Edit This Readme: Replace the placeholder content with information about your specific project. Ensure that the introduction, project overview, and objectives clearly reflect your group’s research focus.
Update Group Member Bios: Add details about each group member’s expertise, role in the project, and professional background. Include links to personal or professional web pages to foster community engagement and collaboration.
Organize Your Code: Structure your codebase in a way that is logical and accessible. Use directories and clear naming conventions to make it easy for all members to find and contribute to different parts of the project.
Document Your Data: Include a data directory with README files explaining the datasets, sources, and any preprocessing steps. This will help new members understand and work with the project’s data effectively.
Outline Your Methods: Create a detailed METHODS.md file where you describe the methodologies, software, and tools you will be using in your research. This transparency will support reproducibility and collaborative development.
Set Up Project Management: Utilize the ‘Issues’ and ‘Projects’ features on GitHub to track tasks, discuss ideas, and manage your workflow. This can help in maintaining a clear view of progress and priorities.
Add a License: Choose and include an appropriate open-source license for your project, ensuring that the broader community understands how they can use and contribute to your work.
Create Contribution Guidelines: Establish a CONTRIBUTING.md file with instructions for members on how to propose changes, submit issues, and contribute code.
HI SHANNON!!!
Review and Merge Workflow: Decide on a workflow for reviewing and merging changes. Will you use branch protection? Who will have merge privileges? Document this process to avoid confusion.
Establish Communication Channels: Beyond GitHub, set up additional communication channels like Slack, Discord, or email lists for quick and informal discussions.
Remember, the goal is to make your repository clear, accessible, and useful for all current and future members of your working group. Happy researching!