Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

NCI Chromatic - Cancer Genomes with WebAssembly:

https://chromatic.nci.nih.gov/



That's so cool, thanks for sharing! Do you know where I can find more info about how it was built/which portion of the app uses WebAssembly?


This provides access to hundreds of public and tens of thousands of restricted access cancer genomes (and often the matching "normal" samples): so you can see and visually verify mutations. Interestingly, too, you can check out germline polymorphisms which might predispose someone to get cancer.

Basically all the work is done in the browser : gzip decompression, custom parsing of sequencing alignment, png generation, etc. Lots of data are pushed to the client at load time like gene location information for genome build "hg38" (the latest). Server only provides reference sequence and sample genomic alignment "slices" for the region of interest. So, all the state is handled in the browser, server only provides trivial "wget" requests.

It is mostly wasm (source is C compiled with emcc). The front page is the requisite html/javascript start page. Pages are created in wasm code and pushed to JS for updating the DOM. Lots of calls to emscripten_run_script("your javascript here"). DOM manipulation straight from Rust/Go/C would be cool but it is not here yet.

Upside is server simplicity and security ... and no downloading and setting up complicated software.

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5987889/

Code is done by the government so it's public domain. (Your tax dollars at work !)


Nice, I'll check it out! It's really exciting to hear of others using WebAssembly for genomics.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: