I would definitely look at using a framework for building Single Page Web Apps (SPAs) and avoid using PHP or the like to render anything on the backend, which is a very outdated way of doing it. You might find PHP is ok for making the RESTful API to the backend with, but personally I'd avoid it in favour of IWS or something else. Also avoid jQuery, it's also well out of date.
I have used Angular https://angular.io/
, together with Material (which is a CSS/component framework designed to work with it) https://material.angular.io/
In terms of the backend, I always use stored procedures (IMO letting your PHP or whatever middleware layer is loose on the naked database is asking for trouble), if you're on 7.2 or later, you can even build the JSON responses right in the SQL and then you only need a very thin middleware layer (the one I currently use is just a few dozen lines of Typescript).
Having said that, whichever framework you choose, the learning curve can be very, very steep when getting started with web apps. It's incredibly simple to get a basic web app to work, but it's considerably more difficult to scale them up into the sort of complexity required for even a modest enterprise application. It is a huge change to your way of thinking and designing apps.
The complete toolchain and IDE (I use and love VS Code) is free. As for maintenance costs, if you invest in automated builds and automated testing right from the start, I believe this will help (Angular scaffolds test code for you by default when you create new components, although you have to fill in the important bits). However, we are somewhat spoilt on the IBM by its incredible stability, in the web world you are seemingly locked in a constant battle as the ground beneath you is contently shifting, APIs are deprecated, and things need to be kept up to date.
If you want to get a feel for each of the different frameworks, have a look at Stackblitz (https://stackblitz.com/
) this is an amazing tool which allows you to instantly spin up a complete development environment without having to install anything. You can try Ionic, React, Vue, Angular and more - it really is magic!
From: WEB400 <web400-bounces@xxxxxxxxxxxxxxxxxx> on behalf of franz9000@xxxxxxxxx <franz9000@xxxxxxxxx>
Sent: 02 June 2021 04:36
To: 'Web Enabling the IBM i (AS/400 and iSeries)' <web400@xxxxxxxxxxxxxxxxxx>
Subject: [WEB400] IBM i as a webserver with low cost tools
Given task to find framework and tools to migrate existing customer service
site (order entry, maintenance, history, payments, 60 different programs,
all dynamic, heavily edited), and apply new UX dashboard design and
functions to auto fit devices (not too much to ask is it?).
This site has been up 21 years, with couple overhauls, built with a $$ tool
(that I like but will not name..), uses Apache cgi interface. Site does not
fit any pattern like a shopping cart, or lookup portal. Half the site is
pages of data entry (names and addresses, long descriptions, code
selections). Already using CSS, jQuery for autocomplete and other functions,
Primary business requirements are:
No limits on handling business designs like other platforms ( - a great
Annual software maint no more than low end/open source (current annual
maint 10k). The business thinks this savings will pay for project..
They would prefer it not be a strictly RPG site (concern about
maintainability long term) but not ruling it out - have used cgidev2 before.
Realtime updates to IBM I DB2 like an interactive application.
Customer authentication, and secure.
CSS will be replaced.
Power 9 (small) is staying, but without a solution the website will be given
to an external vendor with lots of calls to the system (and customer will be
Eventually this solution will be used to replace office applications.
Average 20 - 30 near simultaneous users but must handle several times that.
Am leaning towards PHP - but have not used since early days of Zend.
Given the annual maint cost limits - is this realistic?
This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) mailing list
To post a message email: WEB400@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
or email: WEB400-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
As an Amazon Associate we earn from qualifying purchases.