https://github.com/maniaba/asset-connect
AssetConnect is a file management library for CodeIgniter 4 that allows you to associate files with any entity in your application.
https://github.com/maniaba/asset-connect
asset-management codeingiter codigniter4 file-upload filemanagement php83
Last synced: 3 days ago
JSON representation
AssetConnect is a file management library for CodeIgniter 4 that allows you to associate files with any entity in your application.
- Host: GitHub
- URL: https://github.com/maniaba/asset-connect
- Owner: maniaba
- License: mit
- Created: 2025-07-02T21:20:25.000Z (11 months ago)
- Default Branch: develop
- Last Pushed: 2026-04-28T16:23:31.000Z (21 days ago)
- Last Synced: 2026-04-28T18:22:20.651Z (21 days ago)
- Topics: asset-management, codeingiter, codigniter4, file-upload, filemanagement, php83
- Language: PHP
- Homepage: https://maniaba.github.io/asset-connect/
- Size: 1.16 MB
- Stars: 8
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
- Agents: AGENTS.md
Awesome Lists containing this project
README
# AssetConnect for CodeIgniter 4
[](https://github.com/maniaba/asset-connect/actions/workflows/phpunit.yml)
[](https://github.com/maniaba/asset-connect/actions/workflows/phpstan.yml)
[](https://github.com/maniaba/asset-connect/actions/workflows/deptrac.yml)
[](https://github.com/maniaba/asset-connect/actions/workflows/psalm.yml)
[](https://github.com/maniaba/asset-connect/actions/workflows/docs.yml)

[](http://codeigniter.com/)

AssetConnect is a file management library for CodeIgniter 4 that allows you to associate files with any entity in your application.
It provides a robust, flexible solution for handling file uploads, storage, and retrieval with powerful features like collections, custom properties, and secure access control.
## Requirements
- PHP 8.3 or higher
- CodeIgniter 4.6 or higher
- CodeIgniter Queue
## Example Usage
```php
// Add an asset to a user
$asset = $user->addAsset('/path/to/file.jpg')
->withCustomProperties([
'title' => 'Profile Picture',
'description' => 'User profile picture'
])
->toAssetCollection();
// Get all assets for a user
$assets = $user->getAssets();
// Get the URL to an asset
$url = $user->getFirstAsset()->getUrl();
// Delete assets from a specific collection
$user->deleteAssets(ImagesCollection::class);
```
## Documentation
Comprehensive documentation is available at [https://maniaba.github.io/asset-connect/](https://maniaba.github.io/asset-connect/).
Find yourself stuck using the package? Found a bug? Do you have general questions or suggestions for improving the media library? Feel free to create an issue on GitHub, we'll try to address it as soon as possible.
## Testing
Run the test suite with:
```bash
composer test
```
For more detailed testing options:
```bash
# Run with code coverage
composer test -- --coverage-html=build/coverage
# Run static analysis
composer analyze
```
## Changelog
All notable changes to this project are documented in the [CHANGELOG.md](CHANGELOG.md) file.
## Contributing
Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for details on how to contribute to this project.
## Security
If you discover a security vulnerability, please send an email to [maniaba@outlook.com](mailto:maniaba@outlook.com) instead of using the issue tracker. All security vulnerabilities will be promptly addressed.
## License
The MIT License (MIT). Please see [License File](LICENSE.md) for more information.