awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
medialize avatar

medialize/URI.js

0
View on GitHub↗
6,228 stars·471 forks·JavaScript·MIT·11 viewsmedialize.github.io/URI.js↗

URI.js

URI.js is a full-featured JavaScript library for parsing, building, normalizing, and mutating URLs and their components programmatically. It provides a mutable-component object model that exposes each URL part as a separate object with getter and setter methods, enabling direct manipulation of schemes, hosts, paths, query strings, and fragments. The library implements strict RFC 3986 compliance for encoding, decoding, and normalization of URI components, and includes a template expansion engine that substitutes variables using operator-specific rules.

The library distinguishes itself through comprehensive support for internationalized domain names via Punycode conversion, allowing encoding and decoding between Unicode and ASCII-compatible representations. It also includes IPv6 address normalization tools that compress and expand addresses by handling zero-segment shorthand and leading-zero removal. URI.js manages query parameters and fragment data as key-value stores with add, remove, check, and update operations, and provides relative URL resolution to convert relative paths to absolute URLs or compute relative paths between two URLs.

Beyond its core capabilities, the library offers URL normalization and comparison to standardize URLs and check semantic equality, along with URL classification to determine whether a URL is absolute, relative, an IP address, a domain name, or a URN. It supports path segment manipulation through an array-like interface, second-level domain parsing, and URL extraction from text. The library also provides common base path finding and URI component encoding and decoding with special handling for query string spaces.

Features

  • URL Data Parsing - Provides a complete JavaScript library for parsing, building, and mutating URLs programmatically.
  • URL Resolvers - Resolves relative URLs to absolute paths based on a given base URL.
  • URL Fragment Managers - Manages query parameters and fragment data with add, remove, check, and update operations.
  • URL Normalizers - Standardizes URLs by canonicalizing components and checking semantic equality.
  • Punycode Conversion - Converts between Unicode and ASCII-compatible Punycode for internationalized domain names.
  • URL Component Object Models - Provides a mutable-component object model for direct manipulation of URL parts.
  • URI Compliance Layers - Implements strict RFC 3986 compliance for encoding, decoding, and normalization of URI components.
  • URL Relative Path Resolvers - Resolves relative URLs to absolute paths and computes relative paths between two URLs.
  • RFC 3986 URI Encoders and Decoders - Encodes and decodes URI components with strict RFC 3986 compliance and query string space handling.
  • URI Template Mappings - Expands URI templates by substituting variables with data values using operator-specific rules.
  • Expansion Engines - Ships a full RFC 6570 template expansion engine for substituting variables in URI patterns.
  • Query Parameter Manipulators - Adds, removes, and normalizes query parameters individually or in bulk.
  • Query Parameter Stores - Manages query parameters as a dictionary with add, remove, and update operations.
  • URL Construction - Serializes individual URL components back into complete URL strings.
  • URL Component Replacements - Modifies individual URL parts like query string, path, or domain without full reconstruction.
  • Text Domain Internationalizations - Encodes and decodes Unicode domain names and email addresses using Punycode.
  • Address Compressors - Shortens IPv6 addresses by replacing zero segments with '::' for compact representation.
  • Address Normalization Tools - Compresses and normalizes IPv6 addresses for canonical representation.
  • Address Normalizers - Ships IPv6 address compression and expansion utilities for canonical representation.
  • Canonical Form Converters - Converts IPv6 addresses to canonical form by expanding shorthand and removing leading zeros.
  • Punycode Decoders - Converts Punycode-encoded strings back into Unicode for human-readable display.
  • Unicode Encoders - Converts Unicode domain names and email addresses into ASCII-compatible Punycode encoding.
  • URI Template Expanders - Expands URI templates by substituting variables with data values using operator-specific rules.
  • Fragment Data Serializers - Provides a key-value interface for encoding structured data into URL fragments.
  • Parsing Utilities - URL mutation library.
  • String Manipulation - Utility for URL manipulation.
  • String Utilities - URL mutation and manipulation library.
  • URL and Network Utilities - Comprehensive URL conversion and manipulation library.
  • Utility Libraries - Comprehensive URL parsing and manipulation library.
  • 路由和链接(Routing And URLs) - Listed in the “路由和链接(Routing And URLs)” section of the Awesome Frontend awesome list.

Star history

Star history chart for medialize/uri.jsStar history chart for medialize/uri.js

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to URI.js

Similar open-source projects, ranked by how many features they share with URI.js.
  • sindresorhus/query-stringsindresorhus avatar

    sindresorhus/query-string

    6,904View on GitHub↗

    This is a suite of JavaScript utilities for the bidirectional conversion and manipulation of URL components and query parameters. It provides a mechanism for parsing URL query strings into data objects and serializing those objects back into URL-encoded strings. The library includes functions for filtering, isolating, and modifying parameters within a full URL or query string. It supports the construction of complete web links by combining base addresses with formatted query parameters. The toolset covers data transformation primitives such as alphabetical key sorting, input sanitization, an

    JavaScript
    View on GitHub↗6,904
  • tridactyl/tridactyltridactyl avatar

    tridactyl/tridactyl

    6,246View on GitHub↗

    Tridactyl is a Vim-like Firefox extension that provides a comprehensive keyboard-driven interface for browsing, tab management, and page interaction. It replaces traditional mouse-based navigation with Vim-style keybindings, an ex-mode command line, and a hint overlay system for selecting and interacting with page elements. The extension is built around a core infrastructure that includes a modal command parser, a keybinding configuration system, and a content-script command bridge for executing commands in page context. The extension distinguishes itself through its deep integration with Fir

    TypeScriptfirefoxhacktoberfestvim
    View on GitHub↗6,246
  • masterminds/sprigMasterminds avatar

    Masterminds/sprig

    4,692View on GitHub↗

    Sprig is a comprehensive library of helper functions designed to extend the Go text template engine. It provides a wide array of custom functions that can be injected into the engine to enable complex data manipulation and logic directly within templates. The project offers specialized capabilities for cryptography, including the generation of private keys, X.509 certificates, and secure password hashes. It also includes advanced logic extensions for semantic versioning comparison, ternary evaluations, and the resolution of environment variables from the host operating system. The library co

    Gogotemplatetemplates
    View on GitHub↗4,692
  • snd/url-patternsnd avatar

    snd/url-pattern

    588View on GitHub↗

    easier than regex string matching patterns for urls and other strings. turn strings into data or data into strings.

    CoffeeScript
    View on GitHub↗588
See all 30 alternatives to URI.js→

Frequently asked questions

What does medialize/uri.js do?

URI.js is a full-featured JavaScript library for parsing, building, normalizing, and mutating URLs and their components programmatically. It provides a mutable-component object model that exposes each URL part as a separate object with getter and setter methods, enabling direct manipulation of schemes, hosts, paths, query strings, and fragments. The library implements strict RFC 3986 compliance for encoding, decoding, and normalization of URI components, and includes a…

What are the main features of medialize/uri.js?

The main features of medialize/uri.js are: URL Data Parsing, URL Resolvers, URL Fragment Managers, URL Normalizers, Punycode Conversion, URL Component Object Models, URI Compliance Layers, URL Relative Path Resolvers.

What are some open-source alternatives to medialize/uri.js?

Open-source alternatives to medialize/uri.js include: sindresorhus/query-string — This is a suite of JavaScript utilities for the bidirectional conversion and manipulation of URL components and query… tridactyl/tridactyl — Tridactyl is a Vim-like Firefox extension that provides a comprehensive keyboard-driven interface for browsing, tab… masterminds/sprig — Sprig is a comprehensive library of helper functions designed to extend the Go text template engine. It provides a… snd/url-pattern — easier than regex string matching patterns for urls and other strings. turn strings into data or data into strings. tmenier/flurl — Flurl is a .NET fluent URL builder and HTTP client wrapper designed for constructing complex web addresses and sending… codeigniter4/codeigniter4 — CodeIgniter is a PHP web framework built on the Model-View-Controller pattern, designed for building full-stack web…