As another voluntary project I am looking at supporting the local Deanery (73 Parishes) with some very basic book keeping software to manage simple Parish Accounts. There is no budget for using something that can already provide this functionality online as the costs across 73 Parishes is potentially high and disproprtionate to the requirement. The functionality required is extremely simple compared with the vast array of requirements supported by an online accounting package.
This started as a simple feasibility exercise and I drafted up some basic casbook forms and views in an evening using php/html/js/css. This gave me something to demonstrate quickly, test requirements and establish whether the idea would work. So far, I can make an entry in the cashbook (all fields validated) and display back the accounts resulting. The prototype site has responsive design and basic accessibility features I build into all my work. So far so good.
However, I am a bit of a perfectionist and like the odd pet project so while the client thinks abut this (over Christmas) I have continued with the development. Having made a non-functional prototype the next steps are:
- Allow editing or deleting of entries
- Create individual cashbooks for up to 73 or more Parishes (the prototype assumes 1 Parish)
- Close a financial year
- Surround the whole package with login security and associated functionality (manage passwords etc) and access controls
- Provide a firewall
- Provide an admin interface
- Provide backup and restore functionality (as a long time user of Akeeba I intended to use theor stand alone backup package for php sites)
- Decide whether to store and retriebe the data from spreadsheets (CSV files to be accurate) or use a database
To put this into context I am a basic php coder but can achieve a lot with that level of expertise and use of Google. I have built a few sites on a similar basis before.
However, this project requires a but of a step up with security and based on past experience I knew I could wrap the project into a Joomla! site where much of what I needed would be supported 'out of the box' - user management and all associated functionality, backup and restore via Akeeba. Firewall and other facilities also via Akeeba. So last night I set off on this path and I have been investigating writing a Joomla! 4 component. I have never built any form of Joomla exension previously so there is clearly a lot of learning to do.
Thankfully building an MVC component in Joomla is well documented with some good basic examples. This will stretch my skillset further (good!) and may take me a little longer than intended (c'est la vie) but the end result will be more robust and scaleable (very good). I am looking forward to it.
I will let you know how the journey progresses.