

Fenix – Quick and Easy Local Web Server for Static File Testing - egsec
http://fenixwebserver.com/

======
mfkp
Reading the title, I was expecting to reply "python -m SimpleHTTPServer", but
it actually looks like a nice app with some useful features.

Would prefer ngrok over localtunnel, but hey, it's open source. Guess I'll do
it myself!

~~~
postit
I prefere twisted. SimpleHTTPServer hangs on large files.

pip install twisted twistd -n web --path .

------
neilellis
Nice simple, easy to use and _focussed on the core task_ , not an accidental
byproduct of another product/tool/language. So gets my +1

Of course there are many options to do the same thing - but this is a simple,
clean and elegant start to a potentially really nice tool.

------
BorisMelnik
It does look like a nice app. Any comments on security? Anytime I see a
windows web server I worry a bit about about that, only based on what I've
seen in the past.

The fact that it has a nice GUI makes adoption much more likely, going to play
with this tonight :)

Edit: [https://yvrwzxiyog.localtunnel.me](https://yvrwzxiyog.localtunnel.me)
Cool!

------
desireco42
I am really surprised that anyone would need this, but it definitely doesn't
hurt. From what I can see, it serves static sites only. I... kind of... never
needed that.

It looks good though.

~~~
pyre
Local dev on a javascript-heavy app is one use. You run your build tools to
generate the static files (e.g. a Grunt build process with grunt-contrib-watch
configured), and then you need a local web server to serve up the files. I
tend to stick with:

    
    
      python -m SimpleHTTPServer
    

though.

I actually setup a Tmuxinator session for such projects. It launches the
static file server, the continuous build process, and a shell in the source
directory.

Why not just run static files from disk? Most browsers refuse to execute
JavaScript from file:/// Urls for security reasons (understandably).

~~~
babby
I've done all of my client sidy test/prototyping javascript with plain .html
and .js files.

<script src="app.js"></script> Should work in all browsers, at least on
windows. It just looks for app.js relative to the root html file.

~~~
pyre
I currently work with two apps that interact. One might generate a URL to the
other. The base url is defined in a config file. I find it easier to just
define 'localhost:PORT' for each app.

------
SoftwareMaven
This would be perfect with one feature: reverse proxy (. It would be perfect
to be able to put this in front of Django. I agree, Apache is annoying for
one's desktop.

~~~
traeblain
I agree...reverse proxy would cap this off awesomely. The other item I have
been really wanting out of a local server tool is host definition as well.

In other words, I can setup a local site but instead of going to localhost:81
... I can go to something like site1.dev or site1.local

I would love this.

------
phleet
Beautiful page!

One small nit: when loading up the page on a mac, I see OS X window chrome
around the examples, but Windows style C:\ file paths

------
pritambaral
> Public sharing is tunneled through SSH (i.e. HTTPS).

I don't think SSH means what they think it means

~~~
SoftwareMaven
More accurate to say you don't know what the feature is and the verbiage is
confusing.

"Fenix features the ability to share local sites immediately, securely, and
temporarily. With one click, SSH tunneling will proxy your local server to a
privately assigned (HTTPS) URL. There’s even a copy link that can be sent to
collaborators. Presto! Your laptop is now a public web server. Possibly even a
few if you share multiple sites at once."[1]

I guess they are providing the reverse tunneling as a service?

1\. [https://medium.com/tech-recipes/love-
localhost-f488940f3e38](https://medium.com/tech-recipes/love-
localhost-f488940f3e38)

------
notastartup
Looks interesting GUI but I much prefer to use Flask for simple needs. Flask
has replaced Node.js completely, although I do miss the async, it's not worth
wrestling with Javascript for in my experience.

    
    
        python server.py
        Running on http://127.0.0.1:5000

------
aw3c2
Hey, your website requires Javascript to display anything without any reason.
It only uses JS for distracting effects.

