We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
  • On January 29, 2013, an ad hoc Google Hangout call took place with 10 people from around the world (we maxed out the channel if I recall correctly). The reason was to discuss making the MODX Add-ons/Extras better. It was fun, insightful, and we talked about many areas that touch on the whole Add-on ecosystem.

    The point of this SIG Topic (Special Interest Group) is to find out what's important and can be made better for MODX Add-on developers predominantly, which means it has to be awesome for the consumers of those Add-ons. There are no sacred cows and we are not afraid of making major changes. A lot can and will be improved. smiley

    With that said, the highlights from the call:

    General Topics
    • It's insane that there can be multiple Add-ons with the same name—solution: need better validation on creating new ones
    • we need a better process over all for handling "abandoned" Add-ons
    • maintenance and management of many "core" add-ons like Wayfinder and GetResources could really be handled by a group of vetted and trusted community members, like a peer review team
    • we need strong guidelines and processes to make all this work
    • we can learn from other successful OS projects on this front
    • we need some way to socially vet plugins beyond download counts and simple up/down voting … star ratings?
    • we need a way to promote really awesome plugins, like featured releases that are thoroughly vetted
    • it would be cool to give recognition to prolific or marquee add-on devs … kudos or "points" ?
    • good grief, it's time for a legitimate e-commerce add-on
    • the file manager really needs work, too

    Infrastructure
    • Package management isn't rock solid and occassionally has problems—it shouldn't remotely as frequently fail
    • integrating the Repo/packaging system with Github is an interesting idea to explore (e.g., https://github.com/jquery/plugins.jquery.com)
    • the forum can be overwhelming, so maybe all plugin support belongs elsewhere …
    • … like on Github, where the issues, discussions and documentation can be standardized and a series of best practices developed for all future Add-on developers

    Premium Add-ons
    • lots of MODX devs and site builders have some really cool things they've built for clients that could be released to the community, but the burden of support and preparing them for release is way too high …
    • … but if there was a Marketplace for commercial add-ons at MODX, that might open the floodgates to a lot of cool code getting into the hands of many, many more people—the developers of them would have the promise and carrot of financial rewards for the required initial release and ongoing maintenance and support
    • it's really no different than the Google Play Android store or the iOS App Store

    On Licensing of Premium Add-ons
    • our view at MODX about the viral nature of the GPL is diametrically opposed to "the big three" … if you use public APIs, we're 100% OK with commercially licensed add-ons working in conjunction with a GPL core …
    • … however, if you modify and distribute MODX, that falls under the auspices of the core GPL license, no exceptions
    • we absolutely encourage everyone to consider and release under an open source license, but we also are realistic and understand some won't be able or patient enough to make that work
    • since the GPL is a copyright license, the burden of prosecution/defending that copyright lies with the copyright holder … no one else can enforce those rights on behalf of the copyright holder unless expressly granted otherwise
    • that means for MODX, it's up to MODX to enforce the copyright as it sees fit (see above), and we've not granted enforcement rights to an outside 3rd party

    I hope we can create an environment that makes for an amazing experience for both the consumer of MODX Add-ons and for MODX Add-on developers. What are your thoughts?

    note: if you have a big idea to discuss, please start a new thread in this board … thanks!
      Ryan Thrash, MODX Co-Founder
      Follow me on Twitter at @rthrash or catch my occasional unofficial thoughts at thrash.me
      • 3749
      • 24,544 Posts
      The biggest problem I have with Package Manager is the occasional raft of error messages it puts in the log.

      One thing that I think might help a lot with the current Package Manager is to add a "Cleanup" button to the PM panel that would remove packages from the DB that no longer exist in core/packages, and maybe if there's no version of the package there, also remove any objects with their namespace and/or category.
        Did I help you? Buy me a beer
        Get my Book: MODX:The Official Guide
        MODX info for everyone: http://bobsguides.com/modx.html
        My MODX Extras
        Bob's Guides is now hosted at A2 MODX Hosting
        • 37099
        • 338 Posts
        good grief, it's time for a legitimate e-commerce add-on

        For me that's No. 1.
        • More tutorials and examples of creating packages. I've been struggling with MyComponent off and on now for weeks, just to package a template. If more people can easily understand how to make packages, there will be more packages. I'd like to concentrate on getting a couple dozen fairly basic templates done.
            Studying MODX in the desert - http://sottwell.com
            Tips and Tricks from the MODX Forums and Slack Channels - http://modxcookbook.com
            Join the Slack Community - http://modx.org
            • 39932
            • 483 Posts
            In the interest of Add-on developers and MODX users, it is really important that real documentation be easy to provide with a released Add-on. This should be supported within the MODX Package Manager.

            For many little Extras, a Readme is certainly good enough and the Package Manager grabs it right away. For more complex Add-ons, simply injecting a whole bunch of files into the file system is not necessarily a good idea. Several users of MODX (mostly new) are scared to touch the file system.

            As a User

            There are Add-ons that I have installed to use (especially in my first week or so) that I had to simply discard because I didn't understand how to use them. I know newer users are facing the same issues. Comparing to Joomla or WordPress, it's "not as plug and play". Now, MODX is far better (IMHO) than both of those and I would never want to go back to either, but that is what I hear most common from people that I teach about MODX over Skype, and I have to say that it is a legitimate barrier. A more integrated way to document Add-ons would definitely help a lot.

            As a Developer

            While others may not feel this way, I find myself reluctant to release Add-ons due to this. My Add-ons are already of an abstract nature and as a result, I do not have enough demonstrations or tutorials. The extra work to release screencasts and documentation (and maintain those links) can be quite cumbersome. (Mote: My personal lack of ability to come up with a viable alternative or solution has made my owns Add-ons lackluster at best, and this is something I have been trying to solve for some time.)
            [ed. note: fuzzicallogic last edited this post 11 years, 1 month ago.]
              Website: Extended Dialog Development Blog: on Extended Dialog
              Add-ons: AJAX Revolution, RO.IDEs Editor & Framework (in works) Utilities: Plugin Compatibility List
              Tutorials: Create Cross-Context Resources, Cross-Context AJAX Login, Template-Based Actions, Remove Extensions from URLs

              Failure is just another word for saying you didn't want to try. "It can't be done" means "I don't know how".
              • 3749
              • 24,544 Posts
              Quote from: sottwell at Feb 22, 2013, 12:50 PM
              More tutorials and examples of creating packages. I've been struggling with MyComponent off and on now for weeks, just to package a template. If more people can easily understand how to make packages, there will be more packages. I'd like to concentrate on getting a couple dozen fairly basic templates done.

              In theory, that should be dead simple, but I'm thinking of adding some simpler example config files for packaging just a template, snippet, or plugin. I'll email you some tips.
                Did I help you? Buy me a beer
                Get my Book: MODX:The Official Guide
                MODX info for everyone: http://bobsguides.com/modx.html
                My MODX Extras
                Bob's Guides is now hosted at A2 MODX Hosting
              • I would appreciate it. I'm sure once I get one or two under my belt, it'll all fall into place, but getting started on something new is always troublesome.
                  Studying MODX in the desert - http://sottwell.com
                  Tips and Tricks from the MODX Forums and Slack Channels - http://modxcookbook.com
                  Join the Slack Community - http://modx.org
                  • 38878
                  • 255 Posts
                  IMO I am very interested in this topic and sorry I missed the hangout (had I known I would have moved mountains;). In regards to the premium addons issue and ensuring ongoing support, it's a broader issue than technically how to structure and manage it as it potentially gets into legal issues between buyer and seller and depends mostly on the licensing agreements and enforceability. This is a risk with any software purchase from a provider. Purchasing software, especially when there is an expectation of ongoing support is a dicey business as software development is a relatively low cost business venture, and therefore can tend to be pretty transient.

                  That said, I would not try to "boil the ocean" when scoping the direction for ModX in this regard as this is a much broader and ubiquitous business risk issue. Instead the primary focus in the premium addon space would be better served by 1.) protecting and promoting the brand 2.) set standards for such bits as minimum documentation, packaging, and demonstrations to mitigate and potential damage to it. Holding any source code in escrow if there is in fact IP or source code that the buyer does not get is also an option I have exercised in the past, and could be a barrier of entry for some shady characters and enable modx to help protect the buyer as well as the brand. It's a buyer beware world and I think if valuable feedback, ratings, and standards are in place, the buyer will be better equipped to make a good decision what to buy and what not to buy.

                  The upside is there is obvious opportunity here and intrinsic value to be gained. If there is real revenue potential more talented professional will invest in high quality functionality will will obviously benefit the platform as a whole. Two glaring examples are eCommerce and Forums, both of which are acknowledged high value features that have been historically difficult to deliver due to complexity. Also, there are huge integration opportunities for various media types and other services that will blossom if there is incentive to do so.
                  • We must thread carefully with Prermium Addons. MODx is open source, the Addons need to maintain that path. While it is encouraging to Addon developers, the everyday MODx users (who make up the larger percentage of MODxsphere most be considered in this paradigm). The best model, IMO, will be a scenario where certain features of a Premium Addon is made available to all while the full version is made accessible only to paying users.

                    Still there will exist the need to provide necessary checks to the standard achieved in Premium Addon development via ensuring tested coding standard, proper documentation and appropriate QA/QC.
                      • 38878
                      • 255 Posts
                      Interesting debate. Not sure I agree tho. The platform can be open source but the addons built on the platform which actually produce complete end user functionality will be worth what the developer is willing to invest in them, and investment comes at a cost. The higher quality the functional additions, the more valuable the platform itself becomes. I would argue that professional grade Modx addons are already being developed for a fee, but on a contract basis and not available to the public. There's no repeat-ability in that and the cost for these is high as each is custom. I would prefer these solutions be made available in cooperation and coordinated by the platform provider themselves, or at a minimum, endorsable by them, rather than and slew of "one offs" without any coordination or implementation standards as described earlier in the thread. There will always be the free addons and benefits and risks that come with them.

                      Quote from: ojchris at Feb 23, 2013, 08:14 PM
                      We must thread carefully with Prermium Addons. MODx is open source, the Addons need to maintain that path.