With the news on last Friday of the Microsoft Open Source Portals for Dynamics 365 becoming available, Adoxio has now launched their fork of that code as xRM Portals Community Edition. There is a lot to explore with this release of the open source portals and the xRM Portals Community Edition, what does it include, who is it best suited for, what are the long term goals, what are the gaps and how you can get your hands on it.
Let’s start with what the open source release includes and what is in xRM Portals Community Edition.
Open Source Portals, available on the Microsoft Download Center:
- Microsoft Dynamics 365 Portals Solutions
- Microsoft Dynamics 365 Portals Source
- Self-hosted Installation Guide for Portals
xRM Portals Community Edition takes the components of the open source portals that are licensed under MIT, which is only the portals source, and made it available as a project on GitHub for the community, be it partners or individual developers to contribute, extend and fix issues in an easy and open fashion. Adoxio has decided to help facilitate this as the original portal experts for Dynamics 365/CRM, with the major goal of the project being to help provide a way for existing customers of legacy versions of Adxstudio a way to upgrade and move to online portals from Microsoft.
Note that the solutions still need to be downloaded directly from Microsoft on the download center as they are not licensed under MIT and are only provided as managed solutions. This does have an impact in limiting certain aspects of the project in terms of the communities ability to make fixes beyond the portals source code. With the history and experience of being a developer implementing portals I can tell you this isn’t a blocker that is going to prevent changes that maybe necessary, it will just involve some creative problem solving and possible re-engineering of certain components. Again this might not always be necessary to re-engineer components until a layering approach is not a support scenario for the necessary modifications or fixes required.
It is important to realize that with this release of open source portals there are some major caveats and gaps that certain use cases of the portals may cause issues for upgrades.
- Problem: This is a one time only release by Microsoft
Solution: xRM Portals Community Edition is maintained by partners like Adoxio as well other community members allowing for bug fixes and a maintained version of the open source release.
- Problem: Not supported directly by Microsoft.
Solution: xRM Portals Community Edition is supported by partners like Adoxio and updates will be provided for free by the community. Adoxio offers a number of different support options as well as the project is open to other Dynamics partners to contribute and provide their own support options.
- Problem: Does not include all Adxstudio Portals solutions/portals like Event Management, Retail and 311/Government Service Requests
Potential Solution: Partners will be offering comparable solutions that are compatible with the online version of portals or even compatible with open source portals for on premise.
The gap in the CRM solutions cannot be understated. If you are an Adxstudio Portals customer currently using Event Management, Retail Portal components like shopping cart or payment, as well as any component of the 311/Government Portal service request functionality then you will need to consider your future upgrade path. These solutions or starter portals are not available as part of Dynamics 365 portals or the open source portals release so there is currently no supported path forward for these scenarios without looking at additional partner based solutions.
With xRM Portals Community Edition everyone now has the capability to build this functionality right into their own custom version of the portal as well or whatever other customizations they deem necessary for their requirements. Even old Adxstudio functionality that isn’t actively turned on in the online product still remains in the code base and likely could be activated once properly validated and updated as necessary. You will notice that the commerce, and areas like Service311 remain in the code base and do compile but are missing their dependent schema due to not all legacy solutions being maintained.
Any change or investigation into functionality that is not already activated though should be met with caution as it is an investment and something that will need to be self maintained by the customer and/or partner as a result. xRM Portals Community Edition will be kept in a supportable fashion so extensions that cause significant modifications will be done external from the core project as to not disrupt the supportability of using the code base as an upgrade path. This does not prevent an extension library type approach that so many of Adxstudio Portals partners have taken over the years and hugely familiar to them.
Who is it for?
Now aware of the caveats and gaps we can more closely understand who this release and xRM Portals Community Edition is targeted at. First and foremost it is for those legacy Adxstudio customers that need an upgrade path to online portals from Microsoft. Up until now the only approach has been to re-implement all of the functionality manually. If you used a legacy Adxstudio portals starter portal that is still included in the Microsoft Dynamics 365 portal (Community, Partner, Customer, Basic/Starter) then the scripts and solutions included in the release will allow you to start testing that upgrade process. Further documentation on this upgrade process should be forthcoming in the next few weeks as well.
The other most popular use case of xRM Portals Community Edition is the use for those customers staying with on premises Dynamics instances. xRM Portals Community Edition contains the capability to support both Server-to-Server authentication (suggested for online instances) and the old connection string with a service account based authentication (used for on premises instances). Also because you have access to the source code, you can deploy it anywhere. This allows on premises customers to build and host their own portal while connecting to their on premises servers.
Finally those looking to pull out certain functionality or are interested in continuing to build a custom developed portal for specific business use can utilize a fork of xRM Portals Community Edition as a starting point for their development. It is a great way to kick start your project and just requires you to follow the MIT license requirements. This is also a way for previous Adxstudio Portals ISVs to continue maintaining their components as closely as possible to how they operate today with legacy Adxstudio Portals and their customers to get new enhanced functionality.
A word of caution to all. Online portals are the future of portals from Microsoft. While xRM Portals Community Edition will be maintained by Adoxio and has the potential to be community driven it will not have the backing or insights of the Microsoft Dynamics product group. If you are considering a long term portal solution and want to have the support of Microsoft for issues/fixes as well as new features and enhancements then you strongly need to look at online solutions. xRM Portals Community Edition is for those upgrading and those understanding of the investments they are making in an open source solution. This not to say xRM Portals Community Edition is not a viable solution just to be aware of the gaps, caveats and limitations of it.
What does the future hold for open source portals?
Many ask why Microsoft has made this release, how in earth could they give away the source for something they purchased and are continuing to iterate on. There are a number of reasons in terms of providing an upgrade path, providing support and an option to on premises customers, allowing legacy ADX ISVs a way to maintain their customizations, and provide a custom code solution for those that demand the capability to implement functionality that requires server code access.
There are major changes ahead for the online portals product after this release. If you look at the code base (MasterPortal) as well as the core Adxstudio library (Adxstudio.Xrm) there are major dependencies to libraries that Microsoft has since deprecated. Both Microsoft.Xrm.Portals as well as Microsoft.Xrm.Client are foundation libraries that the portal relies on for all of its operations. With the deprecated libraries it is very likely that the first modification Microsoft is making to their new branch of the portals code will be to remove the dependencies on these libraries and potentially others. There are major additions as well as improvements in areas like entity permissions and caching the team at Microsoft probably also wants to make to help bring new experiences and a more reliable product to end users. This release marks a point in time where it still follows the old Adxstudio structure and model which may significantly be changing for future releases. Perhaps even a move to ASP.NET Core with .NET Standard lies in the future if you are looking far out (Dynamics/CRM SDK is only around 75% compatible currently with .NET Standard so a little ways to go, and has major dependencies to non .NET Standard based libraries).
The same changes can be made to xRM Portals Community Edition or a future branch of it, to keep it in step with the online Microsoft version of the product. This is no small undertaking though in terms of effort, and will need the backing of the community to do so. The release of the source leaves the power in the hands of the community to make those choices or completely different ones that serve their own use cases the best. Microsoft has really put the power of portals for Dynamics in our hands, shared all the knowledge, and functionality that was developed over many years and experiences at Adxstudio.
Looking to learn more or participate in the community edition?
- GitHub project for xRM Portals Community Edition
- Understanding Microsoft Portal Options for Dynamics 365 – Adoxio
- About xRM Portals Community Edition – Adoxio
- CRM Tip of the Day’s George Doubinski wrote a great post on open source portals availability – Tip #962: Microsoft Portals Source Code Is Available
- YouTube Webinar by Adoxio – Wondering what to do with your Adxstudio Portal?