Albert Cardona<p>What can you do with a <a href="https://qoto.org/tags/CATMAID" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CATMAID</span></a> server? Say, let's look at the <a href="https://qoto.org/tags/Drosophila" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Drosophila</span></a> (vinegar fly, often referred to as fruit fly) larval central nervous system, generously hosted by the <a href="https://qoto.org/tags/VirtualFlyBrain" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>VirtualFlyBrain</span></a> <a href="https://l1em.catmaid.virtualflybrain.org/?pid=1&zp=108250&yp=82961.59999999999&xp=54210.799999999996&tool=tracingtool&sid0=1&s0=2.4999999999999996&help=true&layout=h(XY,%20%7B%20type:%20%22neuron-search%22,%20id:%20%22neuron-search-1%22,%20options:%20%7B%22annotation-name%22:%20%22papers%22%7D%7D,%200.6" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="ellipsis">l1em.catmaid.virtualflybrain.o</span><span class="invisible">rg/?pid=1&zp=108250&yp=82961.59999999999&xp=54210.799999999996&tool=tracingtool&sid0=1&s0=2.4999999999999996&help=true&layout=h(XY,%20%7B%20type:%20%22neuron-search%22,%20id:%20%22neuron-search-1%22,%20options:%20%7B%22annotation-name%22:%20%22papers%22%7D%7D,%200.6</span></a>) or the <a href="https://qoto.org/tags/Platynereis" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Platynereis</span></a> (a marine annelid) server from the Jekely lab <a href="https://catmaid.jekelylab.ex.ac.uk/" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="">catmaid.jekelylab.ex.ac.uk/</span><span class="invisible"></span></a></p><p>First, directly interact by point-and-click: open widgets, find neurons by name or annotations, fire up a graph widget and rearrange neurons to make a neat synaptic connectivity diagram, or an adjacency matrix, or look at neuron anatomy in 3D. Most text–names, numbers–are clickable and filterable in some way, such as regular expressions.</p><p>Second, interact from other software. Head to r-catmaid <a href="https://natverse.org/rcatmaid/" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="">natverse.org/rcatmaid/</span><span class="invisible"></span></a> (part of the <a href="https://qoto.org/tags/natverse" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>natverse</span></a> suite by Philipp Schlegel <span class="h-card"><a href="https://qoto.org/@uni_matrix" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>uni_matrix</span></a></span>, Alex Bates and others) for an R-based solution from the Jefferis lab at the <a href="https://qoto.org/tags/MRCLMB" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>MRCLMB</span></a>. Includes tools such as <a href="https://qoto.org/tags/NBLAST" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NBLAST</span></a> for anatomical comparisons of neurons (see paper by Marta Costa et al. 2016 <a href="https://www.sciencedirect.com/science/article/pii/S0896627316302653" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">sciencedirect.com/science/arti</span><span class="invisible">cle/pii/S0896627316302653</span></a> ).</p><p>If R is not your favourite, then how about <a href="https://qoto.org/tags/python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>python</span></a>: the <a href="https://qoto.org/tags/navis" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>navis</span></a> package, again by the prolific <span class="h-card"><a href="https://qoto.org/@uni_matrix" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>uni_matrix</span></a></span>, makes it trivial, and works also within <a href="https://qoto.org/tags/Blender" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Blender</span></a> too for fancy 3D renderings and animations. An earlier, simpler version was <a href="https://qoto.org/tags/catpy" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>catpy</span></a> by <span class="h-card"><a href="https://qoto.org/@csdashm" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>csdashm</span></a></span> <a href="https://github.com/ceesem/catpy" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="">github.com/ceesem/catpy</span><span class="invisible"></span></a> , who also has examples on access from <a href="https://qoto.org/tags/matlab" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>matlab</span></a>.</p><p>Third, directly from a <a href="https://qoto.org/tags/psql" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>psql</span></a> prompt. As in, why not? <a href="https://qoto.org/tags/SQL" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>SQL</span></a> is quite a straightforward language. Of course, you'll need privileged access to the server, so this one is only for insiders. Similarly privileged is from an <a href="https://qoto.org/tags/ipython" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ipython</span></a> prompt initialized via <a href="https://qoto.org/tags/django" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>django</span></a> from the command line, with the entire server-side API at your disposal for queries.</p><p>Fourth, and one of my favourites: from the <a href="https://qoto.org/tags/javascript" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>javascript</span></a> console in the browser itself. There are a handful of examples here <a href="https://github.com/catmaid/CATMAID/wiki/Scripting" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/catmaid/CATMAID/wik</span><span class="invisible">i/Scripting</span></a> but the possibilities are huge. Key utilities are the "fetchSkeletons" macro-like javascript function <a href="https://github.com/catmaid/CATMAID/wiki/Scripting#count-the-number-of-presynaptic-sites-and-the-number-of-presynaptic-connectors-on-an-axon" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/catmaid/CATMAID/wik</span><span class="invisible">i/Scripting#count-the-number-of-presynaptic-sites-and-the-number-of-presynaptic-connectors-on-an-axon</span></a> and the NeuronNameService.getInstance().getName(<skeleton_id>) function. </p><p>Notice every <a href="https://qoto.org/tags/CATMAID" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CATMAID</span></a> server has its /apis/, e.g., at <a href="https://l1em.catmaid.virtualflybrain.org/apis/" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="ellipsis">l1em.catmaid.virtualflybrain.o</span><span class="invisible">rg/apis/</span></a> will list all GET or REST server access points. Reach to them as you please. See the documentation: <a href="https://catmaid.readthedocs.io/en/stable/api.html" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="ellipsis">catmaid.readthedocs.io/en/stab</span><span class="invisible">le/api.html</span></a></p><p>In short: the data is there for you to reach out to, interactively or programmatically, and any fine mixture of the two as you see fit.</p>