lara-zeus / bolt

form builder for your users, with so many use cases
https://larazeus.com/bolt
MIT License
172 stars 31 forks source link

Enable customization of package functionality via service providers #274

Closed mohaphez closed 4 months ago

mohaphez commented 5 months ago

Hi , Thank you for your great plugin

Currently, the package assumes that custom items such as fields and data sources are located in the App\Zeus folder, but I am using a modular structure and would prefer to have these items in one of my module folders.

Unfortunately, there is no way to change or customize the paths and namespaces for these items. I attempted to override the package's Facade classes, such as the Bolt class, but found that neither the interface nor the FacadeAccessor were used or resolved in the provider. Instead, the classes are used directly.

To improve the package's extensibility, I suggest binding these classes as interfaces or accessories via a service provider. This would make it easier for developers to customize and extend the package's functionality.

Additionally, I recommend storing the default paths in a configuration file so that they can be easily changed by developers who want to use a different folder structure. This would make the package more flexible and adaptable to different use cases.

Thank you for your attention to this matter, and I look forward to seeing improvements in the package's extensibility and customizability.