Skip to main content

Algoflex

Sharpen your algorithm skills — right from the terminal.

Algoflex is a lightweight, terminal-based platform for practicing algorithms and improving problem-solving skills. It provides a curated collection of coding problems, fast feedback, and progress tracking — all without leaving your command line.

Algoflex Home Screen

Features

  • Lightweight & offline-first — Practice algorithms without relying on an internet connection.
  • Cross-platform — Runs on Linux, macOS, and Windows.
  • Curated problem set — A focused collection of algorithm and data structure problems designed to strengthen fundamental problem-solving skills.
  • Keyboard-driven interface — Navigate quickly and efficiently without a mouse. Mouse input is supported as well.
  • Progress tracking — Track your performance, compare solve times, and identify areas for improvement.
  • Multiple languages — Solve problems using Python or Rust.

Algorithm & Data Structures

Algoflex's curated problem set covers a range of fundamental algorithms and data structures, including:

  • Arrays & Strings
  • Linked Lists
  • Stacks & Queues
  • Hashing
  • Trees & Binary Search Trees
  • Heaps & Priority Queues
  • Graphs
  • Searching & Sorting
  • Greedy Algorithms
  • Dynamic Programming
  • Backtracking
  • Recursion
  • Intervals
  • Bit Manipulation

The problem set is designed to reinforce core concepts, develop problem-solving patterns, and provide progressively challenging practice.

Installation

Algoflex requires Python 3.12 or later and runs on Linux, macOS, and Windows.

To solve problems in Rust, you must also have Rust 1.97 or later installed on your system. See the official Rust installation guide for instructions.

Using uv

Install Algoflex as a standalone tool with Astral's uv:

uv tool install algoflex

Using pip

Alternatively, install Algoflex with pip:

pip install algoflex

Getting Started

Once installed, launch Algoflex from your terminal:

algoflex

Choose a problem, write your solution, run the tests, and review your results.

Supported Languages

Algoflex currently supports:

  • Python 3.12+
  • Rust 1.97+

Screenshots

Attempt Screen

Algoflex Attempt Screen

Algoflex Search Screen

Dashboard

Algoflex Dashboard

Development

Algoflex uses uv for project management. Make sure you have installed uv.

To set up Algoflex for local development, clone the repo, install dependencies and set up git pre commit hooks using:

git clone https://github.com/ndero/algoflex.git
cd algoflex
make setup

Run the test suite with:

make test

Build and run algoflex locally with:

make run

License

Algoflex is licensed under the MIT License.

See the LICENSE file for the full license text.

Metadata

Release files for algoflex 1.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for algoflex 1.1.1
File Size Uploaded
algoflex-1.1.1.tar.gz 124.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for algoflex 1.1.1
File Interpreter ABI Platform
algoflex-1.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 359.6 kB

Release files / algoflex-1.1.1.tar.gz

Download URL algoflex-1.1.1.tar.gz
Size 124.2 kB
Tags Source
SHA-256 checksum
How to use checksums
8ae4ad6e9e68e3ba37559f2e0b69b0092d4b3a2aaedfe579fe90f311c8733e33
BLAKE2b-256 checksum
How to use checksums
22e9f246d9dd1e81801bee96505fced799775f95ae50b9ab78f42f2ee66bc313
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / algoflex-1.1.1-py3-none-any.whl

Download URL algoflex-1.1.1-py3-none-any.whl
Size 235.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
49820cbee605d17b66b419a1736f0aa0c68bd0a22732692feee6f8f6dd25eb3d
BLAKE2b-256 checksum
How to use checksums
8b1d0ebc51e0828711e52e96ddc4610c4f24d8054f2e0309d0392b147806d86a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

1.2.0

2 release files

1.1.3

2 release files

This release

1.1.1 This release

2 release files

1.1.0

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.2.0

2 release files

0.1.18

2 release files

0.1.15

2 release files

0.1.13

2 release files

0.1.11

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page