Skip to main content
NeatUtility

URL Join & Path Normalizer

Web & API100% Client-Side
Ready
TEXT
0 lines0 chars
0 B
About this tool, examples & FAQ

Safely combine base URLs and path segments locally in your browser. Deduplicate double slashes without breaking protocols, resolve relative directory navigation (`../` and `./`), preserve search parameters and hash fragments, and normalize API endpoints.

Key facts

Verified capabilities and limits of this utility
URL StandardsRFC 3986 (Uniform Resource Identifier: Generic Syntax), WHATWG URL Standard
Relative PathsDot segment removal algorithm (RFC 3986 § 5.2.4)
Maximum Input25 KB
Execution Deadline2 s

How to use

  1. Paste your base URL and path segments (one per line, space separated, or as a JSON array).
  2. Select your target operation: Join & Normalize, Path Normalizer, or JSON Breakdown.
  3. Choose your trailing slash policy (Preserve, Always Append, or Never) in the options drawer.
  4. Click Run (or press Ctrl/Cmd + Enter) to immediately synthesize the normalized URL.
  5. Copy the clean URL or export the structured path breakdown into your client SDK.

Example

Join base URL and relative segments with trailing slash preservation

Input

https://api.example.com/v1/
/users/
123/profile/

Example output

https://api.example.com/v1/users/123/profile/

Edge cases

Protocol Slash Preservation

Naive slash deduplication often breaks `https://` into `https:/`. The normalizer carefully protects URI schemes (`http://`, `https://`, `file:///`) while collapsing multiple path slashes.

Directory Traversal with Query Strings

Relative dot resolution (`../`) evaluates only within path segments, safely retaining subsequent query parameters (`?key=value`) and fragments (`#anchor`) at the end of the URL.

Empty Segments and Root Paths

When all path segments resolve back to root or are empty, the normalizer guarantees a single root slash `/` when joined to a domain origin.

How it works

  1. Separates URI protocol schemes and host origins from path components.
  2. Extracts query strings and anchor hashes across all input lines.
  3. Applies RFC 3986 dot-segment resolution to resolve `.` and `..` hierarchy steps.
  4. Deduplicates adjacent slashes and applies chosen trailing slash policies.

Frequently asked questions

Why shouldn't I use simple string concatenation to build URLs?

String concatenation often leads to duplicate slashes (e.g. https://api.com//users), missing slashes, or broken query parameters. Safe joining handles slashes regardless of whether base URLs have them.

Does URL Join preserve search parameters and hashes?

Yes. Query parameters and hash fragments attached to any segment are cleanly preserved and combined at the end of the synthesized URL.

Are input URLs transmitted to remote servers?

No. All joining, parsing, and normalization occur 100% locally in your browser's Web Worker with zero network calls.

References