more updated readme

This commit is contained in:
Shautvast 2025-10-29 22:53:06 +01:00
parent a89b63b95a
commit 233b2bc08c

View file

@ -15,15 +15,13 @@
- built-in types for dates and uuid for example - built-in types for dates and uuid for example
- collection literals - collection literals
- ease of use for CRUD operations, like automatic mapping from sql rows to json - ease of use for CRUD operations, like automatic mapping from sql rows to json
- a simple, yet powerful language - urls are made up of directories.
- urls are made up of directories and filenames
- a controller sourcefile is a file named web.crud - a controller sourcefile is a file named web.crud
- likewise: - likewise:
- service.crud for services - service.crud for services
- db.crud database access code - db.crud database access code
- util.crud utilities - util.crud utilities
- it is not mandatory to have services. You can put all your logic in a controller. - it is not mandatory to have services. If you want, you can put all your logic in a controller.
- there is a strict calling hierarchy. A service cannot call a controller. It can only go 'down'.
- and it can only access functions in its own subtree. Generic code should be put higher up in the tree. - and it can only access functions in its own subtree. Generic code should be put higher up in the tree.
- Therefore, services cannot call other services, because that is the recipe for spaghetti. Refactor your logic, abstract and put lower level code in utilities. - Therefore, services cannot call other services, because that is the recipe for spaghetti. Refactor your logic, abstract and put lower level code in utilities.
- openapi support - openapi support