[Tor www-team] Website proposal

Cristobal clv at riseup.net
Wed Sep 30 03:54:59 UTC 2015


Hi Thomas,

On 28/09/15 19:12, thomas lörtsch wrote:
> 1) Atom is also available for Mac and Windows - maybe you can drop the note about Linux. But can you add a link to the markdown plugin that you refer to?

Thanks! I've added the link to the "Markdown preview" plugin [1].

> 2) Content editors are usually keen to put stuff they wrote online immediatly and not have to wait for an admin to hit the publish button. Would that be possible? Like: "give editor A the permission to edit and publish stuff in category B or specifically on page C”?

Good question! Indeed, if you use separated repositories, then you could
"create" your own set of rules for authorizing contributors.
For example, the articles repo could have a set of authorized
core-editors to push directly, without needing review, and at the same
time accept patches (with review) from non-core-editors. You could go
even further with the possibility of having different teams of "editors"
for different type of posts. I've updated the example repository [2] and
you can see that inside the folder '_posts' there are two git submodules
(abbreviated to A and B) and, as they are different repositories, they
can have different users authorized for each one of them.
The good thing is that Jekyll ignores the subfolders in '_posts' and
publishes all the articles, so you could create as many folders as roles
you need! If you visit the main website [3] you will see that there are
3 published articles... 2 came from tor-website-articles and the other
from tor-website-articlesb.

I haven't tried yet, but I'm pretty sure you could play with git hooks
[4][5] to "automatize" the process of pulling the changes in the main
repository after a push was done on the articles repository.


> 3) Although I haven’t done any research on that topic lately I suppose there are CMS that allow to publish static sites, provide interfaces for finegrained access control, configurable wysiwyg editors etc. What’s the benefit of using Jekyll and Git? Robustness? Less administration and strain on the server (no DB)? Familiarity of tools?
> My apologies if this has already been discussed!

AFAIK jekyll and pelican are the most popular solutions out there (last
time I checked... though I might need to update my research on that).

A CMS is kind of the opposite of static websites. With a CMS you can
handle authorization, roles, UI, etc. but with a cost of resources (DB,
dynamic languages) and security. A static website generator removes all
of that features (to reduce resource requirements and improve security)
and let the "owner" take care of that issues as he pleases. That could
be the reason why static website generators are more focused on personal
websites rather than communities.

In this case, a combination of a static website generator with tools
such as git would enable us to emulate, partially, a CMS (git ->
versioning and distributed content, git submodules -> authorization and
roles, atom -> UI, etc). The production server (torproject.org) would
need nothing more than a web server to render HTML files (Nginx or
Apache). That means: more security (less attack vectors), better
performance (less strain on the server), less maintenance issues, easier
to perform load balancing, etc.

> 
> Ciao
> Thomas
> 

Thanks for your questions! Don't hesitate to reply back if something is
unclear.

-
Best,
Cristóbal

[1] https://atom.io/packages/markdown-preview
[2] https://github.com/leivaburto/tor-website-main/tree/gh-pages/_posts
[3] https://leivaburto.github.io/tor-website-main
[4] http://githooks.com/
[5] https://www.git-scm.com/book/en/v2/Customizing-Git-Git-Hooks

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.torproject.org/pipermail/www-team/attachments/20150930/1b228d95/attachment.sig>


More information about the www-team mailing list