Update documentation
This commit is contained in:
parent
ce6e88a347
commit
98d2d92b49
|
@ -633,7 +633,7 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "plate-tool-lib"
|
name = "plate-tool-lib"
|
||||||
version = "0.4.0"
|
version = "0.4.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"csv",
|
"csv",
|
||||||
"getrandom",
|
"getrandom",
|
||||||
|
|
218
README.md
218
README.md
|
@ -1,6 +1,6 @@
|
||||||
# plate-tool
|
# plate-tool
|
||||||
|
|
||||||
A web-based tool for creating assays for your favorite (acoustic) liquid handler.
|
A web-based tool for creating and visualizing picklists for your favorite (possibly acoustic) liquid handler.
|
||||||
|
|
||||||
## Table of Contents
|
## Table of Contents
|
||||||
- [Usage](#Usage)
|
- [Usage](#Usage)
|
||||||
|
@ -14,126 +14,144 @@ you'll be greeted by a message informing you that no plates are selected.
|
||||||
|
|
||||||
To add a new plate, click the "New Plate" button:
|
To add a new plate, click the "New Plate" button:
|
||||||
|
|
||||||
Once you've added at least one source plate and one destination plate,
|
Once you've added at least one source plate and one destination plate,
|
||||||
click one of each to select them.
|
click one of each to select them.
|
||||||
The right-most pane will now display these plates.
|
The right-most pane will now display these plates.
|
||||||
|
|
||||||
### Modifying and deleting plates
|
### Modifying and deleting plates
|
||||||
Suppose you erroneously created a plate, or misspelled its name.
|
Suppose you erroneously created a plate, or misspelled its name.
|
||||||
Double click on that plate in the list (top-left pane) and a new modal will open.
|
Double click on that plate in the list (top-left pane) and a new modal will open.
|
||||||
Here you can rename a plate or delete it.
|
Here you can rename a plate or delete it.
|
||||||
You may also change the format of a plate
|
You may also change the format of a plate
|
||||||
(note that this will not delete any data if you accidentally switch to a smaller format).
|
(note that this will not delete any data if you accidentally switch to a smaller format).
|
||||||
|
|
||||||
### Adding a transfer
|
### Adding a transfer
|
||||||
Now that you have two plates selected,
|
Now that you have two plates selected,
|
||||||
it's time to add a transfer.
|
it's time to add a transfer.
|
||||||
We can see all of the properties of our transfer in the bottom-left pane.
|
We can see all of the properties of our transfer in the bottom-left pane.
|
||||||
You should first name your transfer (this name is only used for your reference, and is not passed to the liquid handler).
|
You should first name your transfer (this name is only used for your reference, and is not passed to the liquid handler).
|
||||||
You can enter your source and destination regions in their respective fields;
|
You can enter your source and destination regions in their respective fields;
|
||||||
the accepted format should be familiar—capital letters for the row and arabic numerals for the column.
|
the accepted format should be familiar—capital letters for the row and arabic numerals for the column.
|
||||||
|
|
||||||
However, it is much easier to click-and-drag the desired region.
|
However, it is much easier to click-and-drag the desired region.
|
||||||
If we click and hold on a well (see right pane), that specifies our start well.
|
If we click and hold on a well (see right pane), that specifies our start well.
|
||||||
Then, we can drag and subsequently release on our desired end well.
|
Then, we can drag and subsequently release on our desired end well.
|
||||||
|
|
||||||
Our selected wells will be highlighted in light blue for our source plate and light red for our destination plate.
|
Our selected wells will be highlighted in light blue for our source plate and light red for our destination plate.
|
||||||
You might also notice that some wells are hatched:
|
You might also notice that some wells are hatched:
|
||||||
this indicates wells that will be used in the transfer.
|
this indicates wells that will be used in the transfer.
|
||||||
Not all selected wells will necessarily be hatched,
|
Not all selected wells will necessarily be hatched,
|
||||||
depending on the transfer type and interleave settings.
|
depending on the transfer type and interleave settings.
|
||||||
|
|
||||||
When all of the settings are to your liking, click the "Save" button.
|
When all of the settings are to your liking, click the "Save" button.
|
||||||
Note that it now appears in the "Transfers" section of the list pane.
|
Note that it now appears in the "Transfers" section of the list pane.
|
||||||
|
|
||||||
### Modifying and deleting transfers
|
### Modifying and deleting transfers
|
||||||
If you already saved a transfer and would like to change it,
|
If you already saved a transfer and would like to change it,
|
||||||
click on its entry in the list.
|
click on its entry in the list.
|
||||||
Now change the properties of the transfer as you did during initial creation.
|
Now change the properties of the transfer as you did during initial creation.
|
||||||
When finished, click the "Save" button to commit these changes.
|
When finished, click the "Save" button to commit these changes.
|
||||||
|
|
||||||
If you no longer need a transfer, select it as above and then click the "Delete" button.
|
If you no longer need a transfer, select it as above and then click the "Delete" button.
|
||||||
|
|
||||||
### Importing and Exporting
|
### Importing and Exporting
|
||||||
|
|
||||||
#### Export as CSV
|
#### Export as CSV
|
||||||
Exporting the transfers we have created to a CSV format is the primary (if not sole) usage of Plate Tool.
|
Exporting the transfers we have created to a CSV format is the primary (if not sole) usage of Plate Tool.
|
||||||
To do so, first note the "File" tab at the top-left of the screen (above the list pane).
|
To do so, first note the "File" tab at the top-left of the screen (above the list pane).
|
||||||
Mouse over this tab, and a few more options will be revealed.
|
Mouse over this tab, and a few more options will be revealed.
|
||||||
We want to export: mouse over export and select "Export as CSV".
|
We want to export: mouse over export and select "Export as CSV".
|
||||||
You will be reminded that this is a one-way export (see JSON export/import below),
|
You will be prompted by your browser to select a location for your file.
|
||||||
and then prompted by your browser to select a location for your file.
|
|
||||||
|
|
||||||
#### Export as JSON (Saving Your Work)
|
As of version `0.4.0`, it is possible to pick a CSV export format:
|
||||||
Currently, it is not possible to export to a format produced by other similar software.
|
Mouse over options, then export, then click "Change CSV export type".
|
||||||
However, you might reasonably want to save a copy of your work
|
In the dialog that opens, select your desired export type.
|
||||||
either as a backup or to share.
|
Currently, plate-tool supports:
|
||||||
Mouse over the "File" tab, then "Export" as above, then alternatively select "Export as JSON".
|
- Normal
|
||||||
Your browser will then prompt you to pick a suitable location to save your work as a file.
|
- This format can be imported by Cellario's cherrypick hook.
|
||||||
(See note 1 below)
|
- Echo Client
|
||||||
|
- This format is useful if you want to run a picklist directly from the
|
||||||
|
Echo Client software.
|
||||||
|
This will export just the transfers between the currently selected plates;
|
||||||
|
I assume you'd be using this feature in a non-automation context
|
||||||
|
and know to load your plates into your Echo yourself.
|
||||||
|
|
||||||
#### Import from JSON (Recovering Your Work)
|
#### Export as JSON (Saving Your Work)
|
||||||
If we want to import one such file, mouse over the "File" tab as before
|
Currently, it is not possible to export to a format produced by other similar software.
|
||||||
and select "Import", and finally click "Import from JSON".
|
However, you might reasonably want to save a copy of your work
|
||||||
This opens a modal where you are prompted to upload (see note 2)
|
either as a backup or to share.
|
||||||
your file; it will then be processed and loaded.
|
Mouse over the "File" tab, then "Export" as above, then alternatively select "Export as JSON".
|
||||||
Keep in mind that this will overwrite any work you currently have open,
|
Your browser will then prompt you to pick a suitable location to save your work as a file.
|
||||||
so you may wish to export first (see above).
|
(See note 1 below)
|
||||||
|
|
||||||
_Note 1_: JSON files are plaintext!
|
#### Import from JSON (Recovering Your Work)
|
||||||
By default there is little whitespace (this makes comprehending them a challenge)
|
If we want to import one such file, mouse over the "File" tab as before
|
||||||
but if we pass it through a "JSON Beautifier" (enter this into your search engine of choice)
|
and select "Import", and finally click "Import from JSON".
|
||||||
it immediately becomes more readable.
|
This opens a modal where you are prompted to upload (see note 2)
|
||||||
It is encouraged (although by no means necessary) to take a look at your export;
|
your file; it will then be processed and loaded.
|
||||||
you will see that the representation here very closely mirrors the representation presented
|
Keep in mind that this will overwrite any work you currently have open,
|
||||||
in Plate Tool.
|
so you may wish to export first (see above).
|
||||||
|
|
||||||
_Note 2_: Use of the word "upload" might imply that your data is leaving your computer.
|
_Note 1_: JSON files are plaintext!
|
||||||
It does not.
|
By default there is little whitespace (this makes comprehending them a challenge)
|
||||||
You are welcome to verify (use your browser's developer tools, it should have a network tab)
|
but if we pass it through a "JSON Beautifier" (enter this into your search engine of choice)
|
||||||
that this application does not "phone home".
|
it immediately becomes more readable.
|
||||||
Your data is stored locally (unless you choose to export it and distribute it yourself).
|
It is encouraged (although by no means necessary) to take a look at your export;
|
||||||
|
you will see that the representation here very closely mirrors the representation presented
|
||||||
|
in Plate Tool.
|
||||||
|
|
||||||
#### Import Transfer from CSV (Using a picklist as a transfer)
|
_Note 2_: Use of the word "upload" might imply that your data is leaving your computer.
|
||||||
If you have a CSV generated by another tool (or plate-tool),
|
It does not.
|
||||||
you can import it as a single transfer.
|
You are welcome to verify (use your browser's developer tools, it should have a network tab)
|
||||||
To do so, mouse over the "File" tab, then "Import", and finally "Import Transfer from CSV".
|
that this application does not "phone home".
|
||||||
When creating transfers via this method, the transfer cannot be edited.
|
Your data is stored locally (unless you choose to export it and distribute it yourself).
|
||||||
This is useful if you have a pre-existing picklist that you would like to visualize in plate-tool.
|
|
||||||
|
|
||||||
You may either manually map plates in a picklist to plates you've already created, or click "Auto" to:
|
#### Import Transfer from CSV (Using a picklist as a transfer)
|
||||||
1. Generate all plates in the picklist
|
If you have a CSV generated by another tool (or plate-tool),
|
||||||
2. Generate transfers for all source:destination pairs.
|
you can import it as a single transfer.
|
||||||
|
To do so, mouse over the "File" tab, then "Import", and finally "Import Transfer from CSV".
|
||||||
|
When creating transfers via this method, the transfer cannot be edited.
|
||||||
|
This is useful if you have a pre-existing picklist that you would like to visualize in plate-tool.
|
||||||
|
|
||||||
_Note_: If you try to use this feature and no plates are available to select,
|
You may either manually map plates in a picklist to plates you've already created, or click "Auto" to:
|
||||||
there was likely an issue parsing your picklist.
|
1. Generate all plates in the picklist
|
||||||
Your browser's console may have guidance as to why parsing failed;
|
2. Generate transfers for all source:destination pairs.
|
||||||
plate-tool was probably expecting a different name for a column than was in your file.
|
|
||||||
|
_Note_: If you try to use this feature and no plates are available to select,
|
||||||
|
there was likely an issue parsing your picklist.
|
||||||
|
Your browser's console may have guidance as to why parsing failed;
|
||||||
|
plate-tool was probably expecting a different name for a column than was in your file.
|
||||||
|
|
||||||
|
_Note_: If you find a picklist that Cellario *can* import that plate-tool cannot,
|
||||||
|
please email me!
|
||||||
|
Odds are your picklist contains a weird edge case I've not considered,
|
||||||
|
and I would like to fix that!
|
||||||
|
|
||||||
### Other Neat Features
|
### Other Neat Features
|
||||||
|
|
||||||
#### Taking Pictures of Plates
|
#### Taking Pictures of Plates
|
||||||
If you double click on a plate
|
If you double click on a plate
|
||||||
(try to avoid clicking a well since that will change your selection)
|
(try to avoid clicking a well since that will change your selection)
|
||||||
plate-tool will do some magic to take a screenshot of your plate
|
plate-tool will do some magic to take a screenshot of your plate
|
||||||
and deposit it in your clipboard for you.
|
and deposit it in your clipboard for you.
|
||||||
You can then paste this into PowerPoint, GIMP, or whereever else
|
You can then paste this into PowerPoint, GIMP, or whereever else
|
||||||
you want a pretty picture of a plate.
|
you want a pretty picture of a plate.
|
||||||
|
I hope this is helpful for arts and crafts.
|
||||||
|
|
||||||
_NOTE:_ I won't guarantee this feature will work in all contexts;
|
_NOTE:_ I won't guarantee this feature will work in all contexts;
|
||||||
it relies on your browser thinking that you have plate-tool open
|
it relies on your browser thinking that you have plate-tool open
|
||||||
in a "secure context" (localhost or https).
|
in a "secure context" (localhost or https).
|
||||||
|
|
||||||
#### Turn off the in-transfer hashes
|
#### Turn off the in-transfer hashes
|
||||||
Have you noticed that when you select a transfer, the wells to
|
Have you noticed that when you select a transfer, the wells to
|
||||||
be used in that transfer have little diagonal lines over them?
|
be used in that transfer have little diagonal lines over them?
|
||||||
Hopefully you have, because this is supposed to happen!
|
Hopefully you have, because this is supposed to happen!
|
||||||
However, if you want to take a Pretty Plate Picture (see above),
|
However, if you want to take a Pretty Plate Picture (see above),
|
||||||
you might want these indicators turned off.
|
you might want these indicators turned off.
|
||||||
|
|
||||||
To disable the indicators, mouse over "Options" (top-left of screen), then "Styles",
|
To disable the indicators, mouse over "Options" (top-left of screen), then "Styles",
|
||||||
then click "Toggle transfer hashes".
|
then click "Toggle transfer hashes".
|
||||||
To turn them back on, do the exact same thing.
|
To turn them back on, do the exact same thing.
|
||||||
|
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
@ -141,7 +159,7 @@ To add a new plate, click the "New Plate" button:
|
||||||
Plate tool is hosted [here](https://ilia.moe/cool-stuff/plate-tool/) for your convenience.
|
Plate tool is hosted [here](https://ilia.moe/cool-stuff/plate-tool/) for your convenience.
|
||||||
However, you're absolutely welcome to host your own instance (even locally).
|
However, you're absolutely welcome to host your own instance (even locally).
|
||||||
Here's how:
|
Here's how:
|
||||||
(_Note:_ ~~If you run Windows you're probably best off doing the following in WSL2~~ You're absolutely fine to install rustup in Powershell, and the subsequent steps should be very similar but likely with different filepaths.)
|
(_Note:_ If you run Windows you're absolutely fine to install rustup in Powershell, and the subsequent steps should be very similar but likely with different filepaths. I haven't personally validated this. )
|
||||||
|
|
||||||
1. Make sure you have a working Rust toolchain
|
1. Make sure you have a working Rust toolchain
|
||||||
1. Installing `rustup` is the easiest way to do this. See [their website](https://rustup.rs/),
|
1. Installing `rustup` is the easiest way to do this. See [their website](https://rustup.rs/),
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "plate-tool-lib"
|
name = "plate-tool-lib"
|
||||||
version = "0.4.0"
|
version = "0.4.1"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
|
|
||||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||||
|
|
Loading…
Reference in New Issue