My company are currently in the process of upgrading their existing ECC6 system to the latest S/4HANA version, and as a result, we'll be looking at developing bespoke Fiori apps once the upgrade is completed.
I read through a number of Fiori development resources online and it appears that a myriad of front-end frameworks can be used; we are not limited to SAPUI5.
Notably, there are several projects which utilise popular front-end development frameworks such as React - which are open sourced and come from SAP directly.
https://github.com/SAP/fundamental-react
https://github.com/SAP/ui5-webcomponents
Having also been to a number of SAP user group meetups, I've had first hand experience at creating OData services which can then be exposed and consumed by the front end. The OData is essentially 'front-end-agnostic' at this point.
I have extensive experience of developing front-end applications with React and Angular 2+ which makes me a little biased but, when we have our system upgrade, will it be best practice to develop using SAPUI5? Are we limited to this? Or is it perfectly fine to use React? Are there any examples of companies/ developers using React with SAP? Does anyone have any experience with this? I'd love some feedback so we can move forward with our strategy.
Please also note that we will be using an on-premise version, with no access to the Web IDE or the Cloud Platform.
To me, it's a no brainer - I would suggest to use React as it's a matured and well tested solution which performs very well and can be scaled with ease, with the addition of easy native support via React-Native should we wish to implement bespoke mobile solutions. Not only that, hiring new developers would be fairly easy and more cost effective as React is more commonly used than SAPUI5 in the web development scene.
Our customers will be the business. To them, the applications will look exactly the same if developed using styled React components vs SAPUI5. The only difference (personally) is that it will be a lot easier to develop via React. Are there any implications of using one over the other?
I know that there are various tools that have been developed in the past for frameworks such as React, which make development very easy. I just don't know of anything that compares for SAPUI5.
Modern frameworks like React also support and follow the latest ECMAScript standards & features - which benefits developers, allowing them to write concise and performant code. State management can be handled with ease, with the aid of Redux and the 'out-of-the-box' React Hooks.