Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zofe/rapyd-module-installer
module installer for rapyd-livewire laravel application
https://github.com/zofe/rapyd-module-installer
crud laravel modules rapyd
Last synced: 3 months ago
JSON representation
module installer for rapyd-livewire laravel application
- Host: GitHub
- URL: https://github.com/zofe/rapyd-module-installer
- Owner: zofe
- License: mit
- Created: 2022-11-28T16:27:31.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-06-14T08:07:01.000Z (7 months ago)
- Last Synced: 2024-10-08T05:03:20.941Z (3 months ago)
- Topics: crud, laravel, modules, rapyd
- Language: PHP
- Homepage:
- Size: 26.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Rapyd Modular Management for Laravel
This package provides a streamlined approach to managing modular components within a Laravel application, particularly when used in conjunction with the [Rapyd Admin](https://github.com/zofe/rapyd-admin) package.
With this tool, you can easily install standalone modules—whether public or private—directly into your Laravel project's `Modules/` directory, rather than the `vendor/` directory. This approach ensures that each module is seamlessly integrated into your project, enhancing maintainability and modularity.
## Key Features
- **Modular Installation**: Install modules into the `Modules/` directory to keep them as part of your project's structure.
- **Simplified Process**: Use composer to add modules effortlessly. For instance, running `composer install myvendor@mymodule-module` will place the module in your `Modules/` directory.## Important Notes
- The "update" and "remove" logic for modules installed via composer using this installer is deliberately not implemented.
- Running `composer remove myvendor@mymodule-module` will not delete the module's folder or any of your changes from the project.This package is designed to facilitate the modular management of your Laravel application, ensuring that each module remains a coherent part of your development environment.
## Creating Your Own Module
To create your own module for a Laravel application using Rapyd Admin, you can define a custom composer package. Below is an example of a `composer.json` file for a generic module:
```json
{
"name": "yourvendor/yourmodule",
"description": "A custom module for a Laravel application",
"license": "mit",
"type": "rapyd-module",
"authors": [
{
"name": "Your Name",
"email": "[email protected]"
}
],
"require": {
"php": "^8.2",
"illuminate/config": "^11.0",
"illuminate/contracts": "^11.0"
},
"config": {
"allow-plugins": {
"zofe/rapyd-module-installer": true
}
},
"extra": {
"laravel": {
"providers": [
"App\\Modules\\YourModule\\YourModuleServiceProvider"
]
}
},
"minimum-stability": "stable",
"prefer-stable": true
}
```Basic folder structure for the module:
```
Livewire/
├─ Component.php
Views/
├─ component_view.blade.php
├─ routes.php
├─ config.php
├─ composer.json```
## Notes
*## Public available modules
[zofe/demo-module](https://github.com/zofe/demo-module) rapyd demo