8000 GitHub - lutfia95/seqan3 at 3.0.0
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
forked from seqan/seqan3

The modern C++ library for sequence analysis. Contains version 3 of the library and API docs.

License

Notifications You must be signed in to change notification settings

lutfia95/seqan3

Repository files navigation

SeqAn3 -- the modern C++ library for sequence analysis

SeqAn3 is the new version of the popular SeqAn template library for the analysis of biological sequences. It enables the rapid development of high-performance solutions by providing generic algorithms and data structures for:

  • sequence representation and transformation
  • full-text indexing and efficient search
  • sequence alignment
  • input/output of common file formats

By leveraging Modern C++ it provides unprecedented ease-of-use without sacrificing performance.

Please see the online documentation for more details.

Quick facts

  • C++ header-only library: easy to integrate with your app & easy to distribute
  • liberal open source license: allows integration with any app or library, requires only attribution
  • very high code quality standards: >97% unit test coverage, performance regression tests, ...
  • extensive API documentation & tutorials: more lines of documentation than lines of code

Dependencies

requirement version comment
compiler GCC ≥ 7 no other compiler is currently supported!
build system CMake ≥ 3.4 optional, but recommended
required libs SDSL ≥ 3
Range-V3 ≥ 1.0
optional libs cereal ≥ 1.2.3 required for serialisation and CTD support
zlib ≥ 1.2 required for *.gz and .bam file support
bzip2 ≥ 1.0 required for *.bz2 file support

Usage

We recommend that you use CMake to build your project:

  • Setup-Tutorial
  • Using CMake guarantees that all optional dependencies are automatically detected and activated.

Quick-Setup without CMake:

  • Clone the repository with submodules: git clone --recursive https://github.com/seqan/seqan3.git
  • Add the following to your compiler invocation:
    • the include directories of SeqAn and its dependencies
    • C++17 mode with concepts support
    • Macros indicating the presence of zlib and bzip2 (set only if actually available in your paths!)
  • The command could look like this:
g++-7 -O3 -DNDEBUG -Wall -Wextra                                \
    -std=c++17 -fconcepts                                       \
    -I       /path/to/seqan3/include                            \
    -isystem /path/to/seqan3/submodules/range-v3/include        \
    -isystem /path/to/seqan3/submodules/sdsl-lite/include       \
    -isystem /path/to/seqan3/submodules/cereal/include          \
    -DSEQAN3_HAS_ZLIB=1                                         \
    -DSEQAN3_HAS_BZIP2=1                                        \
  your_file.cpp

About

The modern C++ library for sequence analysis. Contains version 3 of the library and API docs.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 97.8%
  • CMake 2.1%
  • Other 0.1%
0