This is the documentation for concrete5 version 5.6 and earlier. View Current Documentation

This is a guide to those who've created their own packaged concrete5 block or application, and would like to submit it to the add-ons section of the marketplace . If you are unsure of what packages are, or need instructions on how to create a one, you should look here.  If you are wanting to submit a packaged theme, please check the theme guidelines.

Add-On Requirements:

  1. Your package must install properly.  Please also try uninstalling, and then reinstalling.  They must be in the package format, and should not be just zipped blocks.

  2. Your package must include a valid 97x97 thumbnail image, with transparent corners like the others in the marketplace.  This is in addition to block icons, if your package contains blocks.  Here's a photoshop marketplace icon template for helping you make icons with round corners.

  3. Your package must have a properly spelled title, description, and a handle that does not conflict with any others in the marketplace. Currently these should all be in English.

  4. Your package must accurately note the proper minimum concrete5 version required to run it.

  5. Your package, all of its blocks & themes, must have unique file and class handles. This is to help insure that all of concrete5's addons will work well together.  Avoid creating generic-sounding packages.  If you can't come up with a unique quality that distinguishes your package, prepend your username to your named classes and package.  Instead of "NewBlock,"  "BobNewBlock," and so on.

  6. Your package's outer directory should include no spaces, no capital letters, and no dashes. Only underscores are allowed. The name of this directory should be the name of your package, only with no capitalization, and underscores instead of spaces. (e.g. If your package is "An Image Browser" your directory should be "an_image_browser", not "image_browser" or "image-browser."

  7. If you'd like to include any 3rd party libraries, you should only do so if their licenses allow you to!  And in that case, you must credit them and include their licenses.  Unless you've specified otherwise, packages in the concrete5 marketplace will be released with an MIT license. If you intend to sell your add-on, you need to provide a license. (feel free to modify our commercial add on license to match your location and make it easy for everyone!)

  8. Any useful text content that your blocks render on a page should be present in sitewide search results-- this means your block controller is using the getSearchableContent() function to pass this data to the Index Search Engine job. Please see the Search Documentation for more information.

  9. Your package shouldn't contain any extraneous files.

  10. Please format your code with proper indentations, and try to keep it as readable as possible. Helpful code comments are a plus. 

  11. Don't use overrideCoreByPackage. Although this is a useful function for doing work in the developer-client world, marketplace devs need to rely on the core of concrete5 being the same across all systems.

When you're package meets these requirements, and you've done some solid testing on it, you can submit it to the concrete5 marketplace.  After we've approved your package, we'll give you edit rights for your add-ons pages on concrete5.org so that you can manage it better (new versions, documentation, help requests, etc). 

Loading Conversation