Kitware / tangelo

A simple, quick, powerful web framework
http:/tangelohub.org/tangelo/
Apache License 2.0
185 stars 35 forks source link

Clarify philosophy surrounding Tangelo's typical use cases #462

Open waxlamp opened 9 years ago

waxlamp commented 9 years ago

i.e., rather than a general-purpose, multiuser web server, Tangelo is more like an "application driver" meant for serving one application per invocation, etc. Include some concrete examples if possible.

waxlamp commented 9 years ago

Include note that enabling home directories enables untrusted code to run.

jeffbaumes commented 9 years ago

+1

waxlamp commented 9 years ago

@jeffbaumes what are your thoughts on actually removing the home directory feature altogether? It's another feature that can be emulated by an eager sysadmin, simply by serving Tangelo from somewhere and then creating user-writable subdirectories there as needed.

Removing the feature altogether has these benefits:

  1. Simplifies code/logic
  2. Makes "security solution" (as discussed in #459) explicit and absolute

The only drawback I can think of is that it will take (a small amount of) time to implement it.

jeffbaumes commented 9 years ago

+2 for both of your reasons.

waxlamp commented 9 years ago

Sitar is turning out to be a great concrete example of this philosophy. Maybe we can mention it in the docs after it's mature enough.

In particular, Sitar now includes a small driver script that embodies the idea of Tangelo as application driver. It may even be possible to generalize that script into a Tangelo utility that generates it, given a few pieces of information about the application.

jeffbaumes commented 9 years ago

Nice. Since I have Docker on the mind, it would be nice to consider how Dockerfiles could expose an application container also.

waxlamp commented 9 years ago

:+1:

waxlamp commented 9 years ago

So here's a list of "featured applications" we could show in the documentation:

I think with the discussion surrounding these in the documentation, along with working on #447, this would be enough to satisfy this issue