Git Product home page Git Product logo

localhostdd's Introduction

LocalhostD

Run and serve your web apps in .test domains on your develop machine.

a

This project is inspired by:

Comparing to hotel, this project comes with a few extra features:

  • Full-fledged / operable terminal (powered by battle-hardened node-pty and xterm.js)
  • Also shipped as an Electron / GUI app (available on Linux / OS X / Windows)
  • Robust state control (easily and reliably restarting app when needed)
  • Proxy all network request (so you don't have to setup proxy auto-config, just use the single proxy, makes it easy for cross-projects API invocation)
  • Self-signed SSL connection (with correct SAN so it produces a 'greenlock' after marking CA trusted manually)
  • Set a timeout option so application will be automatically shutdown

Install

If you prefer launching and keeping it by CLI, then

npm install localhostd -g
localhostd server 

... or if you prefer launching it as a GUI staying as a tray icon, download the latest release.

Usage

Configure your brower to use http://localhost:2999 as HTTP/HTTPS proxy. Then add your apps in http://localhostd.test/ (or in GUI), specifying the directory and the command to run your application.

Make sure they listen to the HTTP port number specified in the PORT enviroment variable. Here are some examples commands:

  • ember server
  • jekyll server
  • rails server --port $PORT --bind 127.0.0.1 --bind 127.0.0.1 is for OSX otherwise rails will be using a special localhost socket which is not accessible by Node.js API
  • python -m SimpleHTTPServer $PORT
  • php -S 127.0.0.1:$PORT

Then click the ๐ŸŒŽ button in the app details to go to its .test domain. localhostd will launch your app for you.

Self-signed SSL

localhostd generates a self-signed CA key-pair and stores it with other data at ~/.localhostd.json. Then it signs SSL certificate for each .test domain when requested. So SSL works out of box, just by going to https://my-app.test/. But if want to see a 'greenlock', i.e. to make your browser trust localhostd, you need to mark your self-signed CA as trusted in browser or OS.

License

MIT - Michael Yin

localhostdd's People

Contributors

layerssss avatar dependabot[bot] avatar mre-fog avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.