PHPackages                             talesoft/tale-uri - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. talesoft/tale-uri

ActiveLibrary

talesoft/tale-uri
=================

A basic, lightweight PSR-7 and PSR-17 compatible URI implementation

0.2.0(7y ago)118MITPHPPHP &gt;=7.1.0

Since Jan 22Pushed 7y ago3 watchersCompare

[ Source](https://github.com/Talesoft/tale-uri)[ Packagist](https://packagist.org/packages/talesoft/tale-uri)[ Docs](http://docs.talesoft.codes/php/tale/uri)[ RSS](/packages/talesoft-tale-uri/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (2)Dependencies (3)Versions (3)Used By (0)

[![Packagist](https://camo.githubusercontent.com/6b14d1af87587dfbff8163e160ab40510e1c37bf3fe6e8994fc8332e5fbc79ba/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f74616c65736f66742f74616c652d7572692e7376673f7374796c653d666f722d7468652d6261646765)](https://packagist.org/packages/talesoft/tale-uri)[![License](https://camo.githubusercontent.com/738f783bbf21ae30cbefe4ed1b27225d423f3954332ee09a24b7e938c5f6d2ca/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f54616c65736f66742f74616c652d7572692e7376673f7374796c653d666f722d7468652d6261646765)](https://github.com/Talesoft/tale-uri/blob/master/LICENSE.md)[![CI](https://camo.githubusercontent.com/6feb47bd8c30a74841d492abc5251bebc567c2c0ba16bda1650d97223ffbf54a/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f54616c65736f66742f74616c652d7572692e7376673f7374796c653d666f722d7468652d6261646765)](https://travis-ci.org/Talesoft/tale-uri)[![Coverage](https://camo.githubusercontent.com/9baa310308e6ba1b710a8e59e2ac8ce40af03b84f3759d897e4db79178236f2f/68747470733a2f2f696d672e736869656c64732e696f2f636f6465636c696d6174652f636f7665726167652f54616c65736f66742f74616c652d7572692e7376673f7374796c653d666f722d7468652d6261646765)](https://codeclimate.com/github/Talesoft/tale-uri)

Tale Uri
========

[](#tale-uri)

What is Tale Uri?
-----------------

[](#what-is-tale-uri)

This is a basic and lightweight implementation of the `Psr\Http\Message\UriInterface` and the `Psr\Http\Message\UriFactoryInterface`.

It doesn't add any extra methods, they are straight and direct implementations without any overhead.

It's useful in cases where you simply just want URI abstraction, but not a full HTTP layer with it. It's also useful for library authors for testing with dependencies on `Psr\Http\Message\UriInterface`

Installation
------------

[](#installation)

```
composer req talesoft/tale-uri
```

Usage
-----

[](#usage)

Check out the [Functions File](https://github.com/Talesoft/tale-uri/blob/master/src/functions.php)to see all things this library does.

### Parse and modify URIs easily

[](#parse-and-modify-uris-easily)

```
use function Tale\uri_parse;

$uri = uri_parse('https://google.com/search');
//$uri is a strict implementation of PSR-7's UriInterface

echo $uri->getScheme(); //"https"
echo $uri->getHost(); "google.com"
echo $uri->getPath(); //"/search"

echo $uri->withHost("talesoft.codes"); "https://talesoft.codes/search"
```

### Create an URI factory for DI containers

[](#create-an-uri-factory-for-di-containers)

```
use Psr\Http\Message\UriFactoryInterface;
use Tale\UriFactory;

$container->add(UriFactory::class);

//...

$uriFactory = $container->get(UriFactoryInterface::class);

$uri = $uriFactory->createUri('https://example.com#test');

echo $uri->getFragment(); //"test"
```

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity46

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~3 days

Total

2

Last Release

2660d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/75a80e0830e63c723808d021d3a1648a2643db60f4ac2e40842da05f227f956b?d=identicon)[TorbenKoehn](/maintainers/TorbenKoehn)

---

Top Contributors

[![TorbenKoehn](https://avatars.githubusercontent.com/u/1403556?v=4)](https://github.com/TorbenKoehn "TorbenKoehn (13 commits)")

---

Tags

factorypsr-17psr-7uriurluri

### Embed Badge

![Health badge](/badges/talesoft-tale-uri/health.svg)

```
[![Health](https://phpackages.com/badges/talesoft-tale-uri/health.svg)](https://phpackages.com/packages/talesoft-tale-uri)
```

###  Alternatives

[guzzlehttp/psr7

PSR-7 message implementation that also provides common utility methods

8.0k1.0B3.1k](/packages/guzzlehttp-psr7)[league/uri

URI manipulation library

1.1k206.4M276](/packages/league-uri)[league/uri-interfaces

Common tools for parsing and resolving RFC3987/RFC3986 URI

538204.9M23](/packages/league-uri-interfaces)[neos/flow

Flow Application Framework

862.0M450](/packages/neos-flow)[phpro/http-tools

HTTP tools for developing more consistent HTTP implementations.

28137.8k](/packages/phpro-http-tools)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

255.2k](/packages/aedart-athenaeum)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
