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.
- 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
 
| requirement | version | comment | |
|---|---|---|---|
| compiler | GCC | ≥ 12 | |
| Clang | ≥ 17 | tested with -stdlib=libc++ | 
|
| IntelOneAPI | ≥ 2024.0 | ||
| build system | CMake | ≥ 3.20 | optional, but recommended | 
| optional libs | cereal | ≥ 1.3.1 | required for serialisation and CTD support | 
| zlib | ≥ 1.2 | required for *.gz and .bam file support | 
|
| bzip2 | ≥ 1.0 | required for *.bz2 file support | 
We recommend that you use CMake to build your project:
- Setup-Tutorial
 - Using CMake guarantees that all optional dependencies are automatically detected and activated.