https://github.com/rcedgar/usearch12
Open-source usearch
https://github.com/rcedgar/usearch12
bioinformatics bioinformatics-algorithms computational-biology nucleotide-alignment protein-alignment protein-sequences search-algorithms
Last synced: 3 days ago
JSON representation
Open-source usearch
- Host: GitHub
- URL: https://github.com/rcedgar/usearch12
- Owner: rcedgar
- License: gpl-3.0
- Created: 2024-02-16T16:50:54.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-06-16T00:01:42.000Z (10 months ago)
- Last Synced: 2025-03-29T09:01:34.090Z (24 days ago)
- Topics: bioinformatics, bioinformatics-algorithms, computational-biology, nucleotide-alignment, protein-alignment, protein-sequences, search-algorithms
- Language: C++
- Homepage: https://drive5.com/usearch
- Size: 1.25 MB
- Stars: 108
- Watchers: 5
- Forks: 12
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Usearch implements several popular biological sequence search and clustering algorithms, including USEARCH, UCLUST, UPARSE, UCHIME, UNOISE and SINTAX.
Version 12 is the first open-source version of usearch. Compared to earlier versions, functionality which is sufficiently covered by other open-source projects has been removed. In particular, there is no support for OTU table manipulation or diversity analysis which is well supported by other tools such as [QIIME](https://qiime2.org/) and [DADA2](https://benjjneb.github.io/dada2/). The goal here is to simplify the package as much as reasonably possible to encourage collaborators to join the open-source project.
## Documentation
Docs. web site: [https://rcedgar.github.io/usearch12_documentation/](https://rcedgar.github.io/usearch12_documentation/)
Docs. source: [https://github.com/rcedgar/usearch12_documentation](https://github.com/rcedgar/usearch12_documentation)
## Installation
Download the binary (executable) file for your operating system. There are no dependencies, so that is typically all you need to do. Make sure the execute bit is set if you are using Linux or OSX, and make sure the binary is in your PATH (or, you can type the full path name). For more details see [https://rcedgar.github.io/usearch12_documentation/install.html](https://rcedgar.github.io/usearch12_documentation/install.html).
## Building from source
### Windows
To build using [Microsoft Visual C++](https://visualstudio.microsoft.com/) (MSVC), load the solution file `usearch12.sln` and select `Build` then `Rebuild Solution` from the main menu bar.
To build from the command line, run `./build_win.bash` from a command prompt. This requires that the MSVC build tools are in your PATH. The `build_win.bash` script (1) checks that there are no uncommitted changes to the repo, (2) overwrites `gitver.txt` with the latest commit hash, and (3) runs `MSBuild` to compile and link `usearch12.exe`.
### Linux
The primary development environment is MSVC. The Linux `Makefile` is generated automatically by `build_linux.py` from the MSVC project file `usearch12.vcxproj`. To build on Linux you need `gcc`, `ccache` and `make`.
A pre-generated `Makefile` is included. This means that you can run `make` in the usual way. Generally, this `Makefile` should not be manually edited because changes will be lost the next time it is generated.
Alternatively you can run the `./build_linux.py` script, which (1) checks that there are no uncommitted changes to the repo, (2) overwrites `gitver.txt` with the latest commit hash, (3) generates a new `Makefile` from `usearch12.vcxproj`, and (4) runs `make`. To run this you need `python3` as well.
### OSX
Building for OSX x86 and M-chip is supported by GitHub Actions.
## Older versions of usearch
Binaries for usearch versions 5 though 11 are provided at [https://github.com/rcedgar/usearch_old_binaries/](https://github.com/rcedgar/usearch_old_binaries/), licensed under CC0-1.0 (public domain). There are no plans to provide source code for the older versions.
## Citing usearch
Please cite the appropriate paper(s) listed here: [https://rcedgar.github.io/usearch12_documentation/citation.html](https://rcedgar.github.io/usearch12_documentation/citation.html)