tomachinz

tomachinz/aminosee

AminoSeeNoEvil (or just AminoSee) is a DNA visualisation that assigns a unique colour hue to each amino acid and start/stop codon in the sequence, and then projects it into 2D and 3D space using an infinite mathematics space-filling function called the "Hilbert curve". This is done to preserve sequence proximity such that 90% of the DNA that is close to its neighbour - such as genes - are also closeby in the image at different resolutions. Genomics researchers can convert any file containing ASCII blocks of DNA (tested with popular formats Fasta, GBK, and also just .txt) into an image. A unique visualisation of DNA / RNA residing in text files, AminoSee is a way to render arbitrarily large files - due to support for streamed processing - into a static size PNG image. Special thanks and shot-outs to David Hilbert who invented it in 1891! Computation is done locally, and the files do not leave your machine. A back-end terminal daemon cli command that can be scripted is combined with a front-end GUI in Electron, AminoSee features asynchronous streaming processing enabling arbitrary size files to be processed. It has been tested with files in excess of 4 GB and does not need the whole file in memory at any time. Due to issues with the 'aminosee *' command, a batch script is provided for bulk rendering in the dna/ folder. Alertively use the GUI to Drag and drop files to render a unique colour view of RNA or DNA stored in text files, output to PNG graphics file, then launches an WebGL browser that projects the image onto a 3D Hilbert curve for immersive viewing, using THREEjs. Command line options allow one to filter by peptide.

JavaScript
7
0
GNU General Public License v2.0
Total donated
Undistributed
Share with your subscribers:

Recipients

How the donated funds are distributed

Support the dependencies of tomachinz/aminosee

Account's avatar
neu CLI for Neutralinojs
Account's avatar
Fast HTTP benchmarking tool written in Node.js
Account's avatar
A bcrypt library for NodeJS.
Account's avatar
fs-extra contains methods that aren't included in the vanilla Node.js fs package. Such as recursive mkdir, copy, and remove.
Account's avatar
A simple zero-configuration command-line http server
Account's avatar
A light-weight module that brings Fetch API to node.js
Account's avatar
256 colors, keys and mouse, input field, progress bars, screen buffer (including 32-bit composition and image loading), text buffer, and many more... Whether you just need colors and styles, build a simple interactive command line tool or a complexe terminal app: this is the absolute terminal lib for Node.js!
Account's avatar
JavaScript 3D library
Account's avatar
Asynchronous BDD & continuous integration for node.js
Account's avatar
Full xterm terminal, in your browser
Account's avatar
Higher-order functions and common patterns for asynchronous code
Account's avatar
resolve which handles browser field support in package.json
Account's avatar
browser-side require() the node way
Account's avatar
Cross platform child_process#spawn and child_process#spawnSync
Account's avatar
The official JavaScript implementation of Cucumber.
Account's avatar
Cypress is a next generation front end testing tool built for the modern web
Account's avatar
A simple static file server middleware
Account's avatar
construct pipes of streams of events
Account's avatar
Modern native Git hooks
Account's avatar
Make any Node ReadableStream emit "keypress" events
Account's avatar
parse argument options
Account's avatar
Node.js native addon build tool
Account's avatar
A simple and powerful async abstraction lib for easily writing Node.js code.
Account's avatar
A command line utility to read version from package.json and attach it into your module as a property
Account's avatar
An extremely lightweight method for running tests.
Account's avatar
A javascript library for multi-touch gestures
Account's avatar
2D Hilbert curve coordinate encoder/decoder
Account's avatar
JSON.stringify with fixed maximum character width.
Account's avatar
Parallax Engine that reacts to the orientation of a smart device.
Account's avatar
The official JavaScript client for the Phoenix web framework.
Account's avatar
Manage CLI application encrypted preferences.
Account's avatar
XMLHttpRequest for Node
Account's avatar
Carlo is a framework for rendering Node data structures using Chrome browser.
Account's avatar
A lightweight graphical user interface for changing variables in JavaScript.
Account's avatar
Get the cursor's current position in your terminal.
Account's avatar
Convert millisecond durations to English and many other languages.
Account's avatar
Various lazy loaders.
Account's avatar
A lean, modular web server for rapid full-stack development
Account's avatar
Fork pseudoterminals in Node.JS
Account's avatar
git merge driver for automatically merging lockfiles

Support the repos that depend on this repository

Top contributors

tomachinz's profile
tomachinz
1123 contributions
dependabot-preview[bot]'s profile
dependabot-preview[bot]
28 contributions
dependabot-support's profile
dependabot-support
4 contributions

Recent events

Kivach works on the Obyte network, and therefore you can track all donations.

No events yet