Comments (11)
Oh... I forgot - my idea before was to add a console command i.e. "laminas-cli create::module" (but first we need to finish up laminas-cli)
from laminas-mvc.
For anyone interested in using LaminasSkeletonModule, I refactored the original ZendSkeletonModule to Laminas.
You can find it here: https://github.com/djnotes/LaminasSkeletonModule
I hope someone from Laminas forks it to be under Laminas organization, so that broken links in the docs get fixed.
from laminas-mvc.
@weierophinney @michalbundyra @Xerkus
The module skeleton was not ported to laminas, what is the alternative now?
3 sections in the quick start guide are based on the module skeleton:
from laminas-mvc.
@froschdesign There is no alternative, I believe it should be ported to Laminas as it is used in many examples (as you pointed). Of course it should be also updated at this time to our best practises at this time, imo.
from laminas-mvc.
I don't think we need skeleton module. Ultimately, module is just a Module
class that can then provide additional features, where config provider and onBootstrap
listeners are the only used features in most cases.
Application module provided with mvc skeleton already have the baseline sample structure for the module:
├── config
│ └── module.config.php
├── src
│ ├── Controller
│ │ └── IndexController.php
│ └── Module.php
├── test
│ └── Controller
│ └── IndexControllerTest.php
└── view
├── application
│ └── index
│ └── index.phtml
├── error
│ ├── 404.phtml
│ └── index.phtml
└── layout
└── layout.phtml
When module is a standalone package then regular php package structure is needed which varies depending on the features used, like testing framework, code quality tools, CI and so on.
I believe best course of action is to update docs to remove references to skeleton module.
from laminas-mvc.
my idea before was to add a console command i.e. "laminas-cli create::module"
This will correspond with current (user) feedback.
It helps all sides: when used by the user and when writing the documentation.
from laminas-mvc.
BTW, what's the status with this task? I think the documentation still wrong and the laminas-cli it's not included in the getting started documentation... I guess it's not yet finished??
from laminas-mvc.
Also does laminas-cli replace the laminas/laminas-mvc-console component? since this one looks deprecated, but it's included in the composer create project process.
Thanks in advance
from laminas-mvc.
Also does laminas-cli replace the laminas/laminas-mvc-console component?
Yes and no. Laminas-mvc-console is killed entirely as cli is significantly different from an http application and laminas-mvc primary goal is handling http requests. Console functionality in applications is replaced by something else like symfony/console
laminas-cli is a common way for the laminas based applications to register and expose cli functionality implemented with symfony/console.
In my opinion, laminas-cli is more of a tooling setup. For the cli functionality that is an actual production functionality - like entrypoints for queue workers or for tasks performing business logic, I would personally go with a separate symfony console application instance.
from laminas-mvc.
A rewrite of the page is needed to remove all references to the skeleton module.
from laminas-mvc.
@djnotes
Thanks for your help on this and the reminder but we are on the way to add CLI support for creating a module.
You can help too and share your ideas and wishes: laminas/laminas-cli#88
from laminas-mvc.
Related Issues (20)
- Unit tests for delegator factories
- Typo in 3.3 QuickStart Tutorial HOT 4
- 3.x Quick-Start module.config snippet needs improvement. HOT 4
- AbstractRestfulController: return response instead of array HOT 2
- Plea for Ukraine HOT 7
- Removal of `container-interop/container-interop`
- AbstractRestfulController::patch returns array, not mixed HOT 3
- Implement and abstract controller that implement RequestHandlerInterface HOT 3
- Provide migration documentation for deprecated built-in middleware HOT 2
- Implement a application event dispatcher reset HOT 3
- Dependency Dashboard
- The documentation for AbstractRestfulController is incomplete
- InjectTemplateListener using different templates for single action
- [RFC]: Removal of `Application#bootstrap` and `Application#init` HOT 4
- VS-Code error AbstractController in line 150: Cannot use ::class with dynamic class name HOT 1
- [laminas-mvc-view] Drop or update the Url View Helper Factory
- [laminas-mvc-view] Remove the Doctype view helper factory
- Register module in the application
- Add autoloading for module to composer.json
- `ControllerManager` service alias change breaks `laminas-mvc-console` HOT 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from laminas-mvc.