GenieFramework / GenieFrameworkDocs

Documentation site for the Genie Framework
https://learn.genieframework.com
4 stars 18 forks source link

How should we introduce recommended Genie app architectures #5

Closed PGimenez closed 1 month ago

PGimenez commented 1 year ago

These past few months we've focused on Reactive apps, which follow the app.jl+app.jl.html structure. However, there's also the webservices and MVC structures. They're fairly different since reactive apps are based around the @app block, and the others rely on a main routes.jl, controllers, views, and models.

What should we introduce users to first? This would depend on what they're trying to do:

We need to be careful in the introduction so that users realise that there's more beyond Reactive apps but without introducing too much complexity.

As of now, the docs use the Genie.Generators to create webservices/MVC architectures. These are a little hard to grasp: there's many autogenerated files, and names like "MVC" may not mean much to the user.

I'm thinking that we could develop some simple default templates for the various cases, and eventually build generators for them. Moreover, I'd like to hide away all the bootstrap and config files that come with the generators. I've made an initial attempt at a template for a web service here:

https://github.com/BuiltWithGenie/WebServiceTemplate

PGimenez commented 1 year ago

For now we've agreed on a flat structure as shown in the first multipage app guide. We'll revisit this when we introduce more complex apps with database acces.