VoxelMC / dnalg-gleam

A DNA manipulation library written in Gleam.
MIT License
0 stars 0 forks source link
biochemistry bioinformatics cli dna gleam

dnalg

DNAlg is a DNA sequence manipulation library. This is my implementation in Gleam.

For a more portable version of this project, I will rewrite it in Go whenever I choose to learn Go.

Plans

Usage

To use dnalg, run it in the command line. The easiest way to use it is by piping in a DNA sequence and pipe the output to a file.

You can also use the -i flag to specify an input file and the -o flag to specify an output file.

cat input.txt > dnalg [subcommand] > output.txt

The input can be a text file, or in FASTA format. I will look at adding support for .dna and .gb files in the future.

Subcommands

silent-mutate

silent-mutate will silently mutate any restriction sites within the provided DNA sequence.

dnalg silent-mutate [-r|--restriction string]

Roadmap

You can find the roadmap for this project here: ROADMAP.md

Contributing

Running the project

gleam run   # Run the project
gleam test  # Run the tests

Adding functionality

Module management

Module structure is as follows:

This is done to keep the code clean and avoid circular dependencies. Try to have modules in actions/ only import from core/ and commands/ only import from core/ or actions/ where possible.


All rights reserved. © 2024, Trevor Fox