Waterloo iGEM 2025 Math and Modelling
├── README.md
├── models
│ ├── subsubteam1
│ │ ├── model1
│ │ ├── model2
│ │ ├── README.md
│ │ └── requirements.txt / environment.yml
│ ├── subsubteam2
│ │ ├── etc...
│ ├── etc...
For each subsubteam, create your own requirements.txt within the models folder.
Try to make sure the Python version is consistent with the rest of the team. eg. Python 3.11
To make requirements.txt, use the following command:
$ pip freeze > requirements.txt
or this if you are using conda:
$ conda env export > requirements.txt
or
$ conda env export > environment.yml
To create a virtual environment, use the following command:
$ python -m venv .venv
or if you are using conda:
$ conda create --name 'name of environment' python=3.11
To install packages from requirements.txt, use the following command:
$ pip install -r requirements.txt
or this if you are using conda (the above works as well):
$ conda env update --file requirements.txt
or
$ conda env update --file environment.yml
To run the environment, use the following command:
$ cd 'path where .venv is located'
$ source .venv/bin/activate
or on Windows:
$ cd 'path where .venv is located'
$ .venv\Scripts\activate
or if you are using conda:
$ conda activate 'name of environment'
To run Jupyter Notebook, use the following command:
$ jupyter notebook
or if you are using vscode editor for Jupyter Notebook:
- remeber to install the Jupyter extension for vscode
- select the correct kernel for your notebook
- run the notebook
If you need GPU access for whatever reason, use google colab.
Each person working on their own branch: eg. name/branch_abbreviations/branch_name
- name: your name
- branch_abbreviations: the abbreviation of your subsubteam
- branch_name: the name of your branch
- eg.
wallace/hy/hydrogel_ODE
- Go to the Uwaterloo iGEM 2025 GitHub and click the "Fork" button in the top right corner.
- In your forked repo, copy the link of the repo and clone it to your local machine:
$ git clone 'link of your forked repo'
or
$ git clone 'ssh link of your forked repo'
- Go to the cloned repo:
$ cd uwaterloo-igem-2025
- Add the original repo as a remote:
$ git remote add upstream "https://github.com/igem-waterloo/uwaterloo-igem-2025"
or
$ git remote add upstream "ssh link of original repo"
- Check if the remote is added:
$ git remote -v
- You should see something like this:
origin https://github.com/[your acc]/uwaterloo-igem-2025 (fetch)
origin https://github.com/[your acc]/uwaterloo-igem-2025 (push)
upstream https://github.com/igem-waterloo/uwaterloo-igem-2025 (fetch)
upstream https://github.com/igem-waterloo/uwaterloo-igem-2025 (push)
- Make sure you are on the main branch:
$ git checkout main
- Pull the latest changes from the original repo:
$ git pull upstream main (update from original repo)
or
$ git pull origin main (update from your forked repo)
- Create a new branch:
$ git checkout -b 'name/branch_abbreviations/branch_name'
You are now on the new branch. You can check if you are on the new branch by running:
$ git branch
- You should see something like this:
* name/branch_abbreviations/branch_name
main
- Make sure you are on the new branch:
$ git checkout 'name/branch_abbreviations/branch_name'
- Your usual workflow:
$ git add . or $ git add 'file name'
$ git commit -m "your commit message (don't put random things)"
$ git push origin 'name/branch_abbreviations/branch_name'
- Go to your forked repo on GitHub.
- Click on the "Pull requests" tab.
- Click on the "New pull request" button.
- Select the branch you want to merge into the original repo.
- Select the branch you want to merge from.
- Click on the "Create pull request" button.
- Add a title and description for your pull request.
- Click on the "Create pull request" button.
- Wait for the review from the original repo.
- Once the review is done, you can merge the pull request.