PHPackages                             nacosvel/datasource-manager - 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. nacosvel/datasource-manager

ActiveLibrary

nacosvel/datasource-manager
===========================

Nacosvel DataSource Manager.

01PHP

Since Nov 6Pushed 1y ago1 watchersCompare

[ Source](https://github.com/nacosvel/datasource-manager)[ Packagist](https://packagist.org/packages/nacosvel/datasource-manager)[ RSS](/packages/nacosvel-datasource-manager/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Nacosvel DataSource Manager
===========================

[](#nacosvel-datasource-manager)

[![GitHub Tag](https://camo.githubusercontent.com/0b407fc4dca887c8db17fdf814b7b26883c1cf7f1d0793079a4eeb7d4d8984d5/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f7461672f6e61636f7376656c2f64617461736f757263652d6d616e61676572)](https://github.com/nacosvel/datasource-manager/tags)[![Total Downloads](https://camo.githubusercontent.com/da6a8c449f915082370e9afaaaad62345e38cf1b3f72bffe38718f30252c0ac8/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6e61636f7376656c2f64617461736f757263652d6d616e616765723f7374796c653d666c61742d737175617265)](https://packagist.org/packages/nacosvel/datasource-manager)[![Packagist Version](https://camo.githubusercontent.com/8182206bf80f3053d06688d8154223b59d59b47a5f7006a08d5842057b922e06/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6e61636f7376656c2f64617461736f757263652d6d616e61676572)](https://packagist.org/packages/nacosvel/datasource-manager)[![Packagist PHP Version Support](https://camo.githubusercontent.com/f38dda98987e045e2ccd42a64de1824136374980d991e0a74dd99a416083d11e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f6e61636f7376656c2f64617461736f757263652d6d616e61676572)](https://github.com/nacosvel/datasource-manager)[![Packagist License](https://camo.githubusercontent.com/00b6b3a668ad191c67591c13c47bb5ec29cf80b9bac32380ed8ee7776be4cbfe/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f6e61636f7376656c2f64617461736f757263652d6d616e61676572)](https://github.com/nacosvel/datasource-manager)

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

[](#installation)

You can install the package via [Composer](https://getcomposer.org/):

```
composer require nacosvel/datasource-manager
```

文档
--

[](#文档)

因不同框架的容器对象不同，需要借助 `nacosvel/container-interop` 完成容器交互。

```
use Nacosvel\Container\Interop\Discover;

class AppServiceProvider extends ServiceProvider
{
    public function boot(): void
    {
        Discover::container();
    }

}
```

> 不同框架实现方式可能不一致，可以在服务提供者中实现容器发现功能。
>
> 具体操作查看 [nacosvel/container-interop](https://github.com/nacosvel/container-interop/blob/main/README.md)

将数据库管理对象绑定到 `Nacosvel\Contracts\DatabaseManager\DatabaseManagerInterface` 接口。

```
use Illuminate\Support\ServiceProvider;
use Nacosvel\Container\Interop\Discover;
use Nacosvel\Contracts\DatabaseManager\DatabaseManagerInterface;
use Nacosvel\DataSourceManager\DatabaseManager;
use Nacosvel\DataSourceManager\TransactionManager;

class AppServiceProvider extends ServiceProvider
{
    public function boot()
    {
        $this->app->bind(DatabaseManagerInterface::class, function () {
            return new DatabaseManager($this->app['db']);
        });
        $this->app->bind('TM', function ($app) {
            return new TransactionManager($app[DatabaseManagerInterface::class], new class() {
                protected mixed $connection;

                public function beginTransaction(): string
                {
                    return 'beginTransaction';
                }

                public function __invoke(mixed $connection): static
                {
                    $this->connection = $connection;
                    return $this;
                }

                public function __call(string $method, array $parameters)
                {
                    return call_user_func_array([$this->connection, $method], $parameters);
                }
            });
        });
        Discover::container();
        // app('TM')->beginTransaction();// beginTransaction
    }

}
```

License
-------

[](#license)

Nacosvel DataSource Manager is made available under the MIT License (MIT). Please see [License File](LICENSE) for more information.

###  Health Score

14

—

LowBetter than 2% of packages

Maintenance31

Infrequent updates — may be unmaintained

Popularity1

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity16

Early-stage or recently created project

 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/2da9b458375a1b7972b7c4d26a5bf8f3e48db305e8805da36f253956f33c5568?d=identicon)[jundayw](/maintainers/jundayw)

---

Top Contributors

[![jundayw](https://avatars.githubusercontent.com/u/16873970?v=4)](https://github.com/jundayw "jundayw (25 commits)")

### Embed Badge

![Health badge](/badges/nacosvel-datasource-manager/health.svg)

```
[![Health](https://phpackages.com/badges/nacosvel-datasource-manager/health.svg)](https://phpackages.com/packages/nacosvel-datasource-manager)
```

PHPackages © 2026

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