Algorithms

Browse free open source Algorithms and projects for Mac and BSD below. Use the toggles on the left to filter open source Algorithms by OS, license, language, programming language, and project status.

  • Enterprise-grade ITSM, for every business Icon
    Enterprise-grade ITSM, for every business

    Give your IT, operations, and business teams the ability to deliver exceptional services—without the complexity.

    Freshservice is an intuitive, AI-powered platform that helps IT, operations, and business teams deliver exceptional service without the usual complexity. Automate repetitive tasks, resolve issues faster, and provide seamless support across the organization. From managing incidents and assets to driving smarter decisions, Freshservice makes it easy to stay efficient and scale with confidence.
    Try it Free
  • Find Hidden Risks in Windows Task Scheduler Icon
    Find Hidden Risks in Windows Task Scheduler

    Free diagnostic script reveals configuration issues, error patterns, and security risks. Instant HTML report.

    Windows Task Scheduler might be hiding critical failures. Download the free JAMS diagnostic tool to uncover problems before they impact production—get a color-coded risk report with clear remediation steps in minutes.
    Download Free Tool
  • 1
    Technical analysis library with indicators like ADX, MACD, RSI, Stochastic, TRIX... includes also candlestick pattern recognition. Useful for trading application developpers using either Excel, .NET, Mono, Java, Perl or C/C++.
    Leader badge
    Downloads: 14,239 This Week
    Last Update:
    See Project
  • 2
    Clipper

    Clipper

    Polygon and line clipping and offsetting library (C++, C#, Delphi)

    This library is now obsolete and no longer being maintained. It has been superceded by my Clipper2 library - https://github.com/AngusJohnson/Clipper2.
    Leader badge
    Downloads: 4,891 This Week
    Last Update:
    See Project
  • 3

    lpsolve

    Mixed Integer Linear Programming (MILP) solver.

    Mixed Integer Linear Programming (MILP) solver lp_solve solves pure linear, (mixed) integer/binary, semi-cont and special ordered sets (SOS) models.lp_solve is written in ANSI C and can be compiled on many different platforms like Linux and WINDOWS This project is moved to github: https://lp-solve.github.io/
    Leader badge
    Downloads: 1,719 This Week
    Last Update:
    See Project
  • 4
    Armadillo

    Armadillo

    fast C++ library for linear algebra & scientific computing

    * Fast C++ library for linear algebra (matrix maths) and scientific computing * Easy to use functions and syntax, deliberately similar to Matlab / Octave * Uses template meta-programming techniques to increase efficiency * Provides user-friendly wrappers for OpenBLAS, Intel MKL, LAPACK, ATLAS, ARPACK, SuperLU and FFTW libraries * Useful for machine learning, pattern recognition, signal processing, bioinformatics, statistics, finance, etc. * Downloads: http://arma.sourceforge.net/download.html * Documentation: http://arma.sourceforge.net/docs.html * Bug reports: http://arma.sourceforge.net/faq.html * Git repo: https://gitlab.com/conradsnicta/armadillo-code
    Leader badge
    Downloads: 2,462 This Week
    Last Update:
    See Project
  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • 5
    libmng -THE reference library for reading, displaying, writing and examining Multiple-Image Network Graphics. MNG is the animation extension to the popular PNG image-format.
    Leader badge
    Downloads: 1,111 This Week
    Last Update:
    See Project
  • 6
    threadpool is a cross-platform C++ thread pool library. It provides a convenient way for dispatching asynchronous tasks and can be easily customized. threadpool is based on the high-quality Boost source libraries.
    Leader badge
    Downloads: 105 This Week
    Last Update:
    See Project
  • 7
    dlib C++ Library
    Dlib is a C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ to solve real world problems.
    Leader badge
    Downloads: 61 This Week
    Last Update:
    See Project
  • 8
    CRC RevEng

    CRC RevEng

    Arbitrary-precision CRC calculator and algorithm finder

    CRC RevEng is a portable, arbitrary-precision CRC calculator and algorithm finder. It calculates CRCs using any of the 113 preset algorithms, or a user-specified algorithm to any width. It calculates reversed CRCs to give the bit pattern that produces a desired forward CRC. CRC RevEng also reverse-engineers any CRC algorithm from sufficient correctly formatted message-CRC pairs and optional known parameters. It comprises powerful input interpretation options. Compliant with Ross Williams' Rocksoft(tm) model of parametrised CRC algorithms.
    Leader badge
    Downloads: 86 This Week
    Last Update:
    See Project
  • 9
    Kalibr Allan

    Kalibr Allan

    IMU Allan standard deviation charts

    kalibr_allan is a utility repository that provides scripts and tools for calculating IMU noise parameters for use in Kalibr and other IMU filtering systems. While manufacturers typically provide “white noise” values in IMU datasheets, the bias instability and random walk parameters must be determined experimentally. This project enables users to compute those values using Allan variance analysis from recorded IMU data. The workflow involves recording IMU measurements with the device stationary, converting ROS bag files into MATLAB-compatible formats, and then running MATLAB scripts to generate Allan deviation plots. These plots are analyzed to determine noise density and random walk parameters for both gyroscopes and accelerometers. The repository also includes example data and plots from real sensors such as the XSENS MTI-G-700, Tango Yellowstone Tablet, and ASL-ETH VI-Sensor, providing reference points for interpretation.
    Downloads: 7 This Week
    Last Update:
    See Project
  • The Most Powerful Software Platform for EHSQ and ESG Management Icon
    The Most Powerful Software Platform for EHSQ and ESG Management

    Addresses the needs of small businesses and large global organizations with thousands of users in multiple locations.

    Choose from a complete set of software solutions across EHSQ that address all aspects of top performing Environmental, Health and Safety, and Quality management programs.
    Learn More
  • 10
    X For You Feed Algorithm

    X For You Feed Algorithm

    Algorithm powering the For You feed on X

    X For You Feed Algorithm is the open-sourced core recommendation system that powers the For You feed on X (the social network formerly known as Twitter), and it represents one of the first times a major social platform has published production-level ranking code for public review and experimentation. The repository contains the full pipeline that ingests user engagement and content candidate data, processes it through retrieval, hydration, filtering, scoring, and selection layers, and ultimately ranks posts to show what appears in a user’s feed. At its heart, the system uses a transformer-based model adapted from xAI’s Grok architecture to predict probabilities for various user actions (such as likes, replies, reposts, clicks, and negative signals), then combines those into a weighted final score that drives ranking.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 11
    Exclusively Dark Image Dataset

    Exclusively Dark Image Dataset

    ExDARK dataset is the largest collection of low-light images

    The Exclusively Dark (ExDARK) dataset is one of the largest curated collections of real-world low-light images designed to support research in computer vision tasks under challenging lighting conditions. It contains 7,363 images captured across ten different low-light scenarios, ranging from extremely dark environments to twilight. Each image is annotated with both image-level labels and object-level bounding boxes for 12 object categories, making it suitable for detection and classification tasks. The dataset was created to address the lack of large-scale low-light datasets available for research in object detection, recognition, and enhancement. It has been widely used in studies of low-light image enhancement, deep learning approaches, and domain adaptation for vision models. Researchers can also explore its associated source code for low-light image enhancement tasks, making it an essential resource for advancing work in night-time and low-light visual recognition.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 12
    MOA - Massive Online Analysis

    MOA - Massive Online Analysis

    Big Data Stream Analytics Framework.

    A framework for learning from a continuous supply of examples, a data stream. Includes classification, regression, clustering, outlier detection and recommender systems. Related to the WEKA project, also written in Java, while scaling to adaptive large scale machine learning.
    Downloads: 33 This Week
    Last Update:
    See Project
  • 13
    TARQUIN

    TARQUIN

    MRS/NMR analysis software

    Analysis software for MRS/NMR data. Allows processing and fitting to be performed in a fully automatic workflow.
    Leader badge
    Downloads: 34 This Week
    Last Update:
    See Project
  • 14
    PLEASE NOTE that we are in the process of moving to GitHub: https://github.com/jasypt/jasypt Jasypt (Java Simplified Encryption) is a java library which allows the developer to add basic encryption capabilities to his/her projects with minimum effort, and without the need of having deep knowledge on how cryptography works. PLEASE NOTE that we are in the process of moving to GitHub: https://github.com/jasypt/jasypt
    Downloads: 17 This Week
    Last Update:
    See Project
  • 15
    Grey Wolf Optimizer for Path Planning

    Grey Wolf Optimizer for Path Planning

    Grey Wolf Optimizer (GWO) path planning/trajectory

    The Grey Wolf Optimizer for Path Planning is a MATLAB-based implementation of the Grey Wolf Optimizer (GWO) algorithm designed for UAV path and trajectory planning. It allows simulation of both two-dimensional and three-dimensional UAV trajectory planning depending on parameter setups. The tool provides built-in functions to configure different UAV environments and supports multiple optimization objectives. It includes progress visualization to help monitor the optimization process during simulations. Users can adjust objective function weights and experiment with multiple heuristic search strategies to explore optimal solutions. This project demonstrates applications in multi-agent and multi-UAV cooperative path planning, making it useful for research and educational purposes in the field of intelligent optimization and robotics.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 16
    The Algorithms Python

    The Algorithms Python

    All Algorithms implemented in Python

    The Algorithms-Python project is a comprehensive collection of Python implementations for a wide range of algorithms and data structures. It serves primarily as an educational resource for learners and developers who want to understand how algorithms work under the hood. Each implementation is designed with clarity in mind, favoring readability and comprehension over performance optimization. The project covers various domains including mathematics, cryptography, machine learning, sorting, graph theory, and more. With contributions from a large global community, it continually grows and improves through collaboration and peer review. This repository is an ideal reference for students, educators, and developers seeking hands-on experience with algorithmic concepts in Python.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 17

    ViennaCL

    Linear algebra and solver library using CUDA, OpenCL, and OpenMP

    ViennaCL provides high level C++ interfaces for linear algebra routines on CPUs and GPUs using CUDA, OpenCL, and OpenMP. The focus is on generic implementations of iterative solvers often used for large linear systems and simple integration into existing projects.
    Leader badge
    Downloads: 23 This Week
    Last Update:
    See Project
  • 18
    JavaBlock
    Free Java Flowchart simulator / interpreter
    Leader badge
    Downloads: 38 This Week
    Last Update:
    See Project
  • 19
    Javascript Clipper

    Javascript Clipper

    Boolean operations and offsetting library in Javascript

    The Javascript Clipper library performs clipping and offsetting for both lines and polygons. All four boolean clipping operations are supported - intersection, union, difference and exclusive-or. Polygons can be of any shape including self-intersecting polygons. Javascript Clipper is a port of Angus Johnson's Clipper library: https://sourceforge.net/projects/polyclipping LIVE DEMO: http://jsclipper.sourceforge.net/6.4.2.2/main_demo.html LIVE DEMO (FPoint): http://jsclipper.sourceforge.net/6.4.2.2_fpoint/main_demo.html Information and examples: http://jsclipper.sourceforge.net/6.4.2.2 Information and examples (FPoint): http://jsclipper.sourceforge.net/6.4.2.2_fpoint Donate Javascript Clipper Project: https://sourceforge.net/p/jsclipper/wiki/Donations/ Use cases: * Over 1500 schools in the UK uses Javascript Clipper in Digimap for Schools service. Read more: https://mobilegeo.wordpress.com and http://digimapforschools.edina.ac.uk/cosmo-free/osmapper
    Downloads: 7 This Week
    Last Update:
    See Project
  • 20
    AhoCorasickDoubleArrayTrie

    AhoCorasickDoubleArrayTrie

    An extremely fast implementation of Aho Corasick algorithm

    AhoCorasickDoubleArrayTrie is a Java implementation of the Aho–Corasick multi-pattern matching algorithm that is optimized using a Double-Array Trie data structure. It is designed for fast keyword scanning across large texts, where you want to search for many patterns simultaneously and efficiently. The core idea is to build an automaton from a dictionary of patterns, then stream through input text to emit matches with minimal overhead. By using a double-array trie representation, the project emphasizes performance and memory efficiency compared to simpler pointer-heavy trie structures, which can matter a lot for large dictionaries or latency-sensitive services. This makes it a strong fit for tasks like content filtering, entity/term spotting, dictionary-based annotation, or high-throughput log/text processing. In short, it’s a specialized, speed-focused library for industrial-strength multi-keyword matching in Java.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    TextTeaser

    TextTeaser

    TextTeaser is an automatic summarization algorithm

    textteaser is an automatic text summarization algorithm implemented in Python. It extracts the most important sentences from an article to generate concise summaries that retain the core meaning of the original text. The algorithm uses features such as sentence length, keyword frequency, and position within the document to determine which sentences are most relevant. By combining these features with a simple scoring mechanism, it produces summaries that are both readable and informative. Originally inspired by research and earlier implementations, textteaser provides a lightweight solution for summarization without requiring heavy machine learning models. It is particularly useful for developers, researchers, or content platforms seeking a simple, rule-based approach to article summarization.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    YAPF

    YAPF

    A formatter for Python files

    YAPF is a Python code formatter that automatically rewrites source to match a chosen style, using a clang-format–inspired algorithm to search for the “best” layout under your rules. Instead of relying on a fixed set of heuristics, it explores formatting decisions and chooses the lowest-cost result, aiming to produce code a human would write when following a style guide. You can run it as a command-line tool or call it as a library via FormatCode / FormatFile, making it easy to embed in editors, CI, and custom tooling. Styles are highly configurable: start from presets like pep8, google, yapf, or facebook, then override dozens of options in .style.yapf, setup.cfg, or pyproject.toml. It supports recursive directory formatting, line-range formatting, and diff-only output so you can check or fix just the lines you touched.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    Yangshun Lago

    Yangshun Lago

    Data Structures and Algorithms library in TypeScript and JavaScript

    Lago is a study-oriented library of classic data structures and algorithms implemented in JavaScript with an emphasis on readability and learning. Instead of aiming to be a production runtime, it serves as a reference you can step through to understand how arrays, stacks, queues, linked lists, trees, heaps, graphs, and sorting/searching routines actually work. The implementations favor clarity over micro-optimizations, making them approachable for learners who are new to algorithmic thinking or coming from non-CS backgrounds. Because the code is idiomatic JavaScript, it also helps front-end engineers strengthen fundamentals without switching languages. The repository’s structure lets you browse topic by topic and compare trade-offs such as time versus space complexity. It’s a handy companion to interview prep lists: after reading a concept, you can open the matching Lago implementation and trace it line by line.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    The JTS Topology Suite is an API for modelling and manipulating 2-dimensional linear geometry. It provides numerous geometric predicates and functions. JTS conforms to the Simple Features Specification for SQL published by the Open GIS Consortium.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 25
    Monia Suite
    La suite logicielle Monia est destinée à l'apprentissage de l'algorithmique en français. Elle permet de fabriquer un exécutable à partir d'un organigramme, en passant par un programme procédural écrit en pseudo-langage.
    Leader badge
    Downloads: 10 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next