Hi Cédrick,

You know <https://www.netlify.com> where you can quickly connect to a GitHub 
project and serve it with a global CDN easily
in seconds as in <https://www.youtube.com/watch?v=mN9oI98As_4>

As the site runs HTTPS you can even host quickly a HTML/CSS/JS based PWA 
application. I tried with React and it works
nicely. So when you push a change to GitHub it easily goes live ... using two 
branches you can distinquish between prod 
vs. dev.
 

No direct need for ruby or explicit site generator - but if you need you can 
also use Pharo and try "Mustache" or "Templ" and 
similar to generate the page.
If you want Pharo for a backend or in the middle then either continue running 
your linux machine or put Pharo into docker and
run it on Azure, AWS or any other cloud based service out there. This way you 
can raise more instances when traffic raises
and you can scale. Decoupling the services is easy with REST/GraphQL and Pharo 
has projects to support that (Stargate,
Teapot/Tealight, GraphQL, ...).

You can even go serverless with Pharo Lambda Ultimate.

Many, many possibilities these days...

Have fun
T.
 
 

Gesendet: Samstag, 23. Mai 2020 um 15:13 Uhr
Von: "Cédrick Béler" <cdric...@gmail.com>
An: "Pharo Development List" <pharo-...@lists.pharo.org>, "Any question about 
pharo is welcome" <pharo-users@lists.pharo.org>
Betreff: [Pharo-users] Project of Interest => Jekyll + Dynamic processing 
integration + Git(hubs)Pages => pharo in the middle

Hi there, 
 
This post is just to talk about one side project I’m exploring and interested 
in from a long time. I think it may interest other people here.
 
I’d like to have powerful (static based) web site so hosting is really cheap 
(even free) and hassle free. I’ve my own server for years, it is cheap and 
simple but, of course, it needs some maintenance (linux update, nginx scripts, 
…) even if tools are the simplest I’ve found.
 
Recently thanks to student projects ;-), I found some time to learn what I find 
is a wonderful solution. This solution is to use GitHub DSCM, GitHub Pages and 
Jekyll (a ruby static site generator that is natively integrated) all together.
https://jekyllrb.com[https://jekyllrb.com] 
 
The beauty is that you can edit the site straight on GitHub. We get the power 
of version system and hosting for free… 
It literally is a CMS and the cheapest and reliable that I know of (grav might 
be another option).
 
Of course, there are some « dynamic » content possibilities too (otherwise 
GitHub Pages is enough)
- blog posts are natively generated through new files according to a name 
convention.
- there are plugins too (but you have to watch for compatibility in GitHub).
 
Dealing with forms and comments is possible
- solutions that are hosted on a third-party. Solution like Discus or 
formspree, … (that’s a NO GO to me)
- web service integration that you can host (note that form spree is on GitHub 
too 
https://github.com/formspree/formspree[https://github.com/formspree/formspree])
 
This last point is where I’d like Pharo (Zinc, Iceberg) to be integrated. Again 
we could imagine a web service system based on Zinc. I could manage form 
submissions that way and everything I’d like but it may end up complex. Do I 
need a database ? Do I need to store information and therefore manage the 
underlying architecture. If it crash, I want only the endpoint to be not 
available but the whole site still working.
 
An in between elegant solution os to use git for what it’s good at (versioning 
collaboratively through PR, and also reliable hosting in classic platforms). 
 

The idea is to use the PR mechanisms to submit stuff like blog comments (note 
that you have a free moderation system). 
This is actually not limited to comments but all kinds of possible interaction…
 
This way is (to me) better in terms of infrastructure management. Such a 
service also needs to be available (and maintained) but this is a very 
minimalist machinery (hanling POST request service only - no real content 
management as deferred to github). And again, a fail safe version (for the last 
version of the generated pages).
 
Staticman (https://staticman.net[https://staticman.net]) is a nice node 
application that allows to do this. It’s possible to host the service too.

 
I can use this node app of course, but I believe we could have quite easily 
such an application in Pharo with Zinc. 
I also wonder if we could use Iceberg to deal with this information straight in 
a pharo image (that’d be cherry on the cake). 
The super cherry of the cake would be pharo core and lib documentation, demos 
(you can have one gihub page by organization and/or users - in paid plans, you 
can have more for private stuff)… One place, one process to contribute, either 
for code or documentation.
 
Anyway, I have no real question except than asking for feedback and also to 
know if some people are interested in such project. 
 
Cheers,
 
Cédrick
 
nb: my hidden goal is to provide web site for people, unipersonal and small 
organizations. So you know, they pay for the service of creation, but then they 
own it and can do whatever they like. Of course we can also offer paid services 
like managing dynamic information content. More than comments, I’d like to be 
able to deal with stuff like orders, facturation, even meeting planning through 
ics versioned files, etc. 
This really is something I’d like to be able to provide soon (less than 1 yr 
time - simplest web site with contact form and comments at least). It might 
become something more serious the future...
 
 

Reply via email to