Work Package #45013
Flexible plugin integration (TODO: Reviews)
Status: | Resolved | Start date: | 2012-04-09 | |
---|---|---|---|---|
Priority: | Should have | Due date: | 2013-04-20 | |
Assigned To: | Marc Neuhaus | % Done: | 100% |
|
Category: | General / Project | Spent time: | 103.00 hours | |
Target version: | 1.0 beta 1 | Estimated time: | 120.00 hours |
Description
Flexible plugin integration¶
- Target Audience: developers and integrators who want to use Neos
- Responsible: Marc Neuhaus
- Implemented by: Marc Neuhaus, Bastian Waidelich
- Amount: 20 work days
- Version: must have for 1.0
- Planned Implementation Timeframe: week 9 to 15, 2013
Motivation¶
About ten years ago when Kasper presented the first version of the Extension Kickstarter that was a little sensation and resulted in a boost of contributions. Without it's extensibility and without the good old pibase TYPO3 would probably not be as popular as it is today.
For Neos we want to provide a solid plugin foundation right from the start.
Goal¶
Neos already contains a plugin TypoScript object but the current implementation is very basic to say the least. We need to work on that in order to make it very easy for people to write plugins and/or to turn Flow packages into a Neos plugin without having to mess with the original package code.
What has been started at #40599 will be used as base for this.
Deliverables¶
- MUST: Polished Backend UX (as described in #40599)
- MUST: "touchless" integration of Flow packages
- MUST: stable plugin API (provide a PluginService that can be used everywhere in order to fetch data about certain plugins & plugin views)
- MUST: documentation (developer guide, integrator guide, step-by-step example)
- MUST: solid test coverage
- COULD: example plugin showing off all relevant features of the API
Subtasks
Related issues
History
#1 Updated by Bastian Waidelich over 2 years ago
- Subject changed from [WIP] Stable Plugin Integration API -> TODO discuss to [WIP] Flexible plugin API
- Category set to General / Project
- Assigned To set to Bastian Waidelich
#2 Updated by Sebastian Kurfuerst over 2 years ago
Hey Bastian,
thanks for your work on this! I'd like to go through this list with you again, to make the goals and deliverables more clear here :-) Just ping me when you have some time!
Greets, Sebastian
#3 Updated by Bastian Waidelich over 2 years ago
- Assigned To changed from Bastian Waidelich to Marc Neuhaus
#4 Updated by Bastian Waidelich over 2 years ago
- Subject changed from [WIP] Flexible plugin API to Flexible plugin API
#5 Updated by Bastian Waidelich over 2 years ago
- Subject changed from Flexible plugin API to Flexible plugin integration
#6 Updated by Sebastian Kurfuerst over 2 years ago
- Status changed from New to Accepted
#7 Updated by Sebastian Kurfuerst over 2 years ago
- File typo3neos-distribution-base-45013.pdf added
- Due date set to 2013-04-16
- Start date changed from 2013-01-31 to 2013-03-04
- Estimated time set to 120.00
Has been discussed with Jan-Hendrik from the EAB on 12.02.2013; and has been accepted on 15.02.2013 by the EAB.
(The attached PDF is a snapshot of this work package at the time of acceptance.)
So, Marc and Bastian, you can schedule this work package in your day-to-day calendar and implement it then -- can't wait to see it in Neos 1.0 :-)
Another side-note: Please do not forget to add comments to this work package and update "% done" while you are working on this package.
Greets, Sebastian
#8 Updated by Marc Neuhaus over 2 years ago
I've created a Distribution that i'll use to work on this Workpackage:
https://github.com/mneuhaus/Workpackage.Flexible-plugin-integration
And i've created a really barebone Package for 'Contact Persons' that is in no way optimized as a Neos Plugin.
The goal is to integrate this as neatly as possible without any Neos specific changes.
#9 Updated by Aske Ertmann over 2 years ago
Would it make sense to set the due date to the end of week 15?
#10 Updated by Bastian Waidelich over 2 years ago
Aske Ertmann wrote:
Would it make sense to set the due date to the end of week 15?
FYI: You can't set the due date in this very issue. I set it by adding the due date to all open child issues
#11 Updated by Marc Neuhaus over 2 years ago
This workpackage is ready to be reviewed :)
Here are all related Changesets in the flexible-plugin-integration topic:
https://review.typo3.org/#/q/status:open+branch:master+topic:flexible-plugin-integration,n,z
Video Demonstration:¶
http://www.youtube.com/watch?v=s67T1vA0myc
Test it yourself:¶
I created a complete Distribution to make the testing simple:
https://github.com/mneuhaus/Workpackage.Flexible-plugin-integration
You can easily set it up like this:
composer create-project -s dev workpackage/flexible-plugin-integration fpi cd fpi ./flow gerrit:update ./flow doctrine:migrate ./flow site:import --package-key TYPO3.NeosDemoTypo3Org ./flow user:create admin joh316 max mustermann <pre>
#12 Updated by Sebastian Kurfuerst about 2 years ago
- Subject changed from Flexible plugin integration to Flexible plugin integration (TODO: Reviews)
#13 Updated by Bastian Waidelich over 1 year ago
- Plugin Views
- Automatic link resolving
- A standard Flow controller as Plugin
Documentation of the plugin integration (#46322) is still somewhat sparse and could use some fine tuning
#14 Updated by Marc Neuhaus over 1 year ago
- Status changed from Accepted to Resolved