In my company, developers manage some resources manually (by manipulating a JSON file):
- Configuration: language strings.
- Templates: page templates.
- Menu: menu structure.
I am thinking about the advantages and disadvantages of moving towards an internal database that will generate the JSON files during the build process.
As i see it, there is (as always :-)) a tradeoff:
Benefits & disadvantages
The benefits of the manual approach (JSON manipulation):
- Low resource footprint: no servers, databases or logins needed.
- Uses existing infrastructure: git is used for versioning.
- Easy rollback: artifacts can be easily rolled back.
The disadvantages of the manual approach:
- Easily breakable: no database means data integrity is questionable. locks? validations?
- No APIs: it is harder to offer internal APIs based on file system data.
- Huge files: files are becoming bigger and bigger as time goes by, to the point they may even freeze the IDE.
Does anybody have experience with managing JSON resources? Is manipulating a JSON file and using GIT-based versions a logical approach?
Thanks,