ehuang1126 / Zebrafish-Facility-Tracker

GNU General Public License v3.0
0 stars 0 forks source link

Zebrafish Facility Tracker

Gene editing zebrafish gets extremely complicated very quickly. Different lines need many different generations of crossing and breeding, to the point where just a few different targeted genes can require hundreds of tanks, creating a logistical nightmare. This database aims to ease this issue by organizing and tracking all of the logistical data that goes into managing a fish facility. With this program, users will be able to keep track of every clutch of every generation of every line, and use this data to create new interesting lines for study.

Startup Guide

  1. Clone this repo and navigate to it in your terminal.
  2. Make sure you have node.js downloaded.
  3. In the main directory, create a directory called data.
  4. Move your input file named input.xlsx (make sure it is in the format listed below) to the data directory.
  5. Run npm install and then run npm start.
  6. Go to the settings tab and import your data. You may need to close and reopen the database if the data does not show up.

Input Format

  1. Download this Excel sheet. This is an example import spreadsheet. The important parts are the sheet and column headers, so you can copy and just replace the data with your own data.
  2. In the racks sheet, enter each rack with a unique ID and the size of each rack. This defines the locations you can use, so please enter this carefully.
  3. In the genotypes sheet, enter your different genotypes.
  4. In the tanks sheet, enter the tanks you want to track with locations defined in the racks sheet.
    • Genotype ID(s) and DOB(s) are each 1 column. If you have more than 1 genotype in a tank, you can separate them within the same cell by comma
  5. Please don't change the column names for any UID, rack, row, column, room, DOB, or genotype column.
  6. Make sure UIDs are numbers and DOBs are in yyyy-mm-dd (recommended) or mm/dd/yyyy (not officially supported) format (no need to add zeroes before)
  7. Other than the mentioned columns above, feel free to prune the genotypes/tanks sheets or leave cells empty
  8. You can also add any columns to track any additional data in the genotypes and tanks pages, as long as the column names are not SQL keywords and do not contain special characters (underscore is fine).
    • For example, "fish_exists" would be fine as a column header but "exists" would not be.
    • Spaces will automatically be replaced with underscores.

Installation Troubleshooting

Workflow

Creating a new cross:

  1. Go to the crossing page to set up the parents and create the new genotype.
  2. Cross the fish.
  3. Make a new Tank on the tanks page for these new fish.
  4. Add the corresponding new genotype to this new Tank.

Contribution


Copyright 2023 Kevin Shin, Evan Huang, Cyna Shirazinejad
The contents of this repository are licensed under the GNU General Public License Version 3.