+1-888-365-2779
Try Now
More in this section

Forums / Upcoming Features / Sitefinity Add-ons

Sitefinity Add-ons

7 posts, 0 answered
  1. Mariush
    Mariush avatar
    43 posts
    Registered:
    08 Aug 2014
    16 Jun
    Link to this post

    Hi all,

    We are starting a new major initiative in Sitefinity that aims to enable developers to package certain pieces of website functionality into reusable components (Add-ons). Generally, it will work the following way:

    1. Export any piece of the website data using the Data Export functionality

    2. Combine the exported data with any files from your project (sources, binaries, static assets, etc.) and create it as a package

    3. Install the add-on package to the target instance

    4. Activate the add-on from the Sitefinity backend (there will be a new interface for this)

    To get an idea about the new screens in the backend, you can have a look at http://l77ps2.axshare.com/

     

    Here's some more details. 

     

    What can be included in the addon

    We are trying to cover a broad range of scenarios here and allow you to place any piece of your website, i.e. any piece of exported data types and files that exist in your project.

     

    Packaging and dependencies

    The add-ons will be packaged and installed as nuget packages, which will allow to utilize the dependency management of Microsoft NuGet. The packages will have a special structure with placeholders for Sitefinity-specific data, that will be handled in a special way by Sitefinity after the nuget is installed. 

     

    Customization and upgrades of installed packages

    Once installed, the add-ons will allow some level of customization to suit the needs of the target site they are installed to.

    We will also offer upgrades, based on the versioning and upgrade mechanism of MS NuGet. On upgrade, Sitefinity will be also upgrading the previously exported data structures. 

    We are still figuring out the details what should and shouldn't be customized and how to balance between ease of customization and security of upgrades, so any feedback, ideas and suggestions on the topic will be most welcome.

     

    Please share your thoughts, ideas and questions. Also, you'd help us a lot if you share a few minutes to fill in the following 8-question survey:

    https://www.surveymonkey.com/r/FMZS5DT

     

  2. Jonathan
    Jonathan avatar
    119 posts
    Registered:
    19 Dec 2012
    17 Jun
    Link to this post
    This sounds interesting.  Will there be an online repo?  But to be honest I hope that Sitefinity can really focus on eCommerce ... :)
  3. Hardy
    Hardy avatar
    21 posts
    Registered:
    27 Sep 2012
    11 Jul in reply to Mariush
    Link to this post

    I have filled in the survey, thanks for that.

    In my opinion there are two critical points that will make or break this feature:

    1. Dependencies
    2. Upgrades

    Dependencies

    The dialog at http://l77ps2.axshare.com/#p=export allows the user to select "Pages". What I don't see is how dependencies of the selected pages will be treated. What happens to the page templates the page depends on? If they are included but there is already a page template with the same name on the target site, what happens then? What about templates of the widgets that are included with the page? Are they included? All of them? Only some of them? Who decides?

    I picked "Pages" as an example but this applies equally to any other content types on the page.

    Upgrades

    IMO the most problematic aspect here is content or database migrations. Is it possible for add-on developers to hook into an event during upgrade and execute any code required to migrate the database to a new schema? What if this fails? Is it easy to retry or rollback? Can an add-on developer get access to the version number of the currently installed version and make choices depending on the result?

    Generally, Sitefinity upgrades of sites with many customizations are hard enough as it is and this should not get worse due to upgrade problems in add-ons. If this isn't solved thoroughly we'll simply ignore add-ons, as the amount of pain we've been going through while doing upgrades over the past years is much higher than the minor convenience benefits that add-ons might bring.

    Kind regards,

    Hardy

  4. Mariush
    Mariush avatar
    43 posts
    Registered:
    08 Aug 2014
    15 Aug in reply to Hardy
    Link to this post

    Hi,

    For the initial version, developers need to take care of dependencies between pages and page templates by themselves - i.e. if Page A requires template X, add-on developers should take care to export both. 

    The page templates dependencies will be handled by ID and only custom created page templates will be exported for packaging, so there should be no conflict with the templates existing on the target instance.

    Widget templates that live in the database are included. The widget templates on the file system will be included when picked by add-on developers.

    About the events hookup and querying the DB version - we don't have this in the initial version, but we are certainly going to consider it. Our priority with Add-ons is to reduce the complexity of upgrading, so whatever needs to be done to achieve that, will be done.

     

     

  5. Darrin Robertson
    Darrin Robertson avatar
    105 posts
    Registered:
    18 Jul 2004
    18 Sep in reply to Mariush
    Link to this post
    How is this feature coming on?
     Do you expect to release the first phase of it in the next release of Sitefinity?
  6. Mariush
    Mariush avatar
    43 posts
    Registered:
    08 Aug 2014
    19 Sep in reply to Darrin Robertson
    Link to this post

    Darrin Robertson said:How is this feature coming on?
     Do you expect to release the first phase of it in the next release of Sitefinity?

    Hi Darrin,

    Thank you for your interest. Yes, the first phase of these capabilities will be available in next Sitefinity release in October  :)

    Mariush 

     

  7. Darrin Robertson
    Darrin Robertson avatar
    105 posts
    Registered:
    18 Jul 2004
    21 Sep in reply to Mariush
    Link to this post

    That's good to know Mariush

    Is it possible to get a beta release of 9.2 so I can look and experiment with the feature?

7 posts, 0 answered