/fenix

Desktop Web Server w/ GUI

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

I'm currently working on the next version of Fenix & would love your feedback!

Fenix 3 is currently in private beta/developer testing. If you want to try out the new release candidate before it hits the street, make sure you're signed up for the mailing list at the very bottom of fenixwebserver.com.

[![Tweet This!][1.1] Share This!][1] [1.1]: http://i.imgur.com/wWzX9uB.png (Tweet about Fenix Web Server) [1]: https://twitter.com/intent/tweet?hashtags=nodejs&original_referer=http%3A%2F%2F127.0.0.1%3A91%2F&text=Check%20out%20Fenix%20Web%20Server!&tw_p=tweetbutton&url=http%3A%2F%2Fgithub.com%2Fcoreybutler%2Ffenix&via=goldglovecb

Fenix Web Server

![Gitter](https://badges.gitter.im/Join Chat.svg) Downloads

Fenix is a desktop web server for developers. Check out fenixwebserver.com for details. There's also a companion command line app. There are some YouTube videos available as well.

UPDATES (As of 11/06/16)

Fenix 3.0.0 core development is done! Extremely early feedback suggested we implement the autoupdate service before a full release. There are some autoupdate servers on the market, but none support multiple license solutions (in addition to the free version, there will be a commercially supported version available for pro and enterprise use). So, we're building our own autoupdate servers. It's coming along nicely. We will still send out pre-release links before the autoupdate service is ready. These invites will be sent out on a rolling basis over the next few weeks.

I'd also like to publicly thank those of you who have donated. Your support means the world to us!

We have some exciting new things coming in 3.0.0:

Base

  • Abstracted Foundation (i.e. our electron boilerplate)
  • Middleware Plugin System (Internal Use Only)
  • UI Plugin System (Internal Use Only)

The plugin system is only for internal use. We hope to expand this for developer use in a later edition.

Open Core

  • Autoupdate (evergreen) - No more ridiculously long delays between updates!
  • Brand new UI.
  • Native CLI app (no need to npm install fenix-cli anymore).
  • Automatic port management.
  • Port conflict resolution via porthog
  • Replace Growl w/ Native System Notifications.
  • Optional JS/CSS minification.
  • Optional GZip compression.
  • Optionally Render Markdown as HTML (used to always do this, now you have a choice).
  • Optional ETags.
  • Optional CORS Support
  • Optional JSON/XML/YAML Pretty-Print.
  • Option to output logs to physical file.
  • API
  • Global Preferences
  • Soft Delete of Servers
  • "Pretty" names for SSH tunneling (i.e. myapp.localtunnel.me)
  • SSH Tunneling Keepalive
  • Light Theme
  • Dark Theme (99% Done)
  • System Tray Support
  • Drag 'n' Drop Server Creation (App & System Tray)
  • Installer (we're waiting on new code-signing certificates now that StartSSL is being dropped by Mozilla)
  • New Responsive File Browser.
  • Autodeployment (w/ badge service via author.io)

There have been several requests for things like gzip compression, ETags, etc. These features don't typically make sense for the simplest form of local development, but modern UI development "done right" requires a little more emphasis on networking/transmission. These features become very useful when testing and troubleshooting, so we've made it possible to turn them on/off for each server. We're also extending the Fenix API to manage these things programmatically, and we anticipate releasing a gulp/grunt plugin to help automate local testing workflows.

PRO Edition

  • Log Filtering
  • Advanced Live Reload
  • Custom Response Headers.
  • Multiple server root directories.
  • Realtime connection monitoring & statistics
  • SSL Support (Fenix CA)
  • Fenix Certificate Authority
    • Windows Trustchain Management
    • OSX Trustchain Management
    • Firefox Trustchain Management
    • Automatic NIC Management & Synchronization

Due to the unique and complex nature of automating a desktop CA, we've been forced to move this to a feature in the upcoming paid edition (it easily consumed 50% of our workload). To the best of my knowledge, Fenix is the only local desktop server that supports SSL keychain management, automatic certificate issuance/reissuance, Windows/macOS/Firefox support, and NIC synchronization.

The request browser will be released as it's own separate app, so it won't be in Fenix 3.0.0. I always felt it was a useful tool, and survey results agree... but it also doesn't fit in as well with the original scope of Fenix. Moving it to it's own project will help it get the attention it needs to be truly awesome.

Finally, we're going "open core". Most of the features above will be free, but more advanced features are slated for a commercial release. As much has we'd like to make this free, devlopment has already grown into a full time effort.

Fenix 2.0.0

Main App:

Fenix

Webhook Browser

Fenix Webhooks

The wiki has additional information about how Fenix works, how to hack on it, and how to use it on other platforms. The release history has older versions and a changelog.

Known Issues

Like Fenix?

Making a donation will go towards the development of Fenix. At the moment, I'd love to reach a simple goal of $100 in annual contributions so I can obtain an Apple Developer license for Fenix... which is the only application I'm distributing on Mac. This would help prevent the "Cannot install from unidentified developer" annoyance some OSX Mavericks users experience. Other contributions would go towards future efforts like hosting a public SSH tunnel (to take some load off localtunnel.me) and new feature development.

Support OSS Development via Stripe or Become a Patron

GPL License

Fenix 2.0 is available under the GPL license.