Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Common Lisp
  3. quri

quri

Common Lisp

A fast, RFC 3986-compliant URI library for Common Lisp, designed as a replacement for PURI.

GitHubGitHub
129 stars28 forks0 contributors

Overview

Yet another URI library for Common Lisp

Use Cases

Not Ideal For

  • Projects in programming languages other than Common Lisp
  • Teams that prefer libraries with automatic percent-encoding/decoding for convenience
  • Applications requiring built-in security validation for URI-based attacks (e.g., injection vulnerabilities)
  • Legacy systems heavily reliant on PURI's implicit behaviors and backward compatibility

Pros & Cons

Pros

RFC 3986 Compliance

Implements the official URI standard strictly, with deviations treated as bugs, ensuring high correctness for web and network programming.

High Performance

Benchmarks show it parses URIs 6.6x faster than PURI and encodes/decodes 3-21.8x faster than alternatives like Hunchentoot and do-urlencode.

UTF-8 and IPv6 Support

Handles international characters correctly and supports IPv6 hostnames (e.g., `ldap://[2001:db8::7]/`), making it suitable for modern, global applications.

Extended Protocol Classes

Provides specialized URI classes for HTTP, HTTPS, FTP, LDAP, and URN schemes, with scheme-specific methods like `uri-query-params` for HTTP.

Low-level Utilities

Includes functions for percent-encoding/decoding and form-urlencoded parameter handling, offering fine-grained control over URI manipulation.

Cons

Explicit Encoding Required

Unlike some libraries, QURI does not encode or decode URIs implicitly, forcing developers to manually handle percent-encoding, which can increase error-proneness.

Breaking Changes in Updates

Version changes like 0.3.0 removed support for numbers in query values, requiring code adjustments and careful migration from older versions or PURI.

Common Lisp Exclusive

Limited to the Common Lisp ecosystem, making it unsuitable for polyglot projects or environments where cross-language compatibility is needed.

Sparse Beginner Documentation

README focuses on API references and benchmarks but lacks extensive tutorials or examples for developers new to URI handling in Common Lisp.

Open Source Alternative To

quri is an open-source alternative to the following products:

P
PURI

PURI is a privacy-focused hardware company that produces laptops and phones with free/libre software and open hardware designs.

Frequently Asked Questions

Quick Stats

Stars129
Forks28
Contributors0
Open Issues8
Last commit1 year ago
CreatedSince 2014

Tags

#uri-parsing#network-programming#rfc-3986#open-source-library#uri#web-development#url-encoding#utf-8#common-lisp

Built With

C
Common Lisp

Included in

Common Lisp2.9k
Auto-fetched 9 hours ago

Related Projects

netaddrnetaddr

A network address manipulation library for Common Lisp

Stars7
Forks0
Last commit1 month ago
cl-slugcl-slug

Small library to make slugs, mainly for URIs, from english and beyond.

Stars2
Forks0
Last commit11 months ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub