seqan3

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

Github星跟踪图

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

build status
codecov
license
latest release
platforms
star
follow

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
  • aims to support any 64-bit architecture running Linux/POSIX; currently big-endian CPU architectures
    like s390x are less supported

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 --recurse-submodules 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                    \
    -lz -lbz2 -lstdc++fs -pthread                               \
  your_file.cpp

主要指标

概览
名称与所有者seqan/seqan3
主编程语言C++
编程语言C++ (语言数: 4)
平台
许可证Other
所有者活动
创建于2016-04-04 12:39:15
推送于2025-05-05 09:16:38
最后一次提交
发布数15
最新版本名称3.4.0-rc.3 (发布于 2025-01-22 12:11:27)
第一版名称3.0.0 (发布于 2019-06-06 20:13:09)
用户参与
星数427
关注者数23
派生数83
提交数7k
已启用问题?
问题数774
打开的问题数30
拉请求数2348
打开的拉请求数1
关闭的拉请求数196
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?