• Stars
    star
    186
  • Rank 207,316 (Top 5 %)
  • Language
    Go
  • Created almost 12 years ago
  • Updated about 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Web Server for Web developers: automatically reload browsers when file changed, help developer focus on coding.

HTTP Watcher

A server that automatically reload browsers when file changed, help developers focus on coding.

No copy and paste javascript code needed, just start http-watcher, that's all.

Web Server for Web developers! HTTP Watcher = HTTP file Server + HTTP proxy + Directory Watcher: automatically reload connected browsers when file changed, works for both static and dynamic web project.

build

  # go get github.com/howeyc/fsnotify
  go build  # you may want to copy http-watcher binary to $PATH for easy use. prebuilt binary comming soon

Usage

http-watcher args  # acceptable args list below, -h to show them
  -command="": Command to run before reload browser, useful for preprocess, like compile scss. The files been chaneged, along with event type are pass as arguments
  -ignores="": Ignored file pattens, seprated by ',', used to ignore the filesystem events of some files
  -monitor=true: Enable monitor filesystem event
  -port=8000: Which port to listen
  -private=false: Only listen on lookback interface, otherwise listen on all interface
  -proxy=0: Local dynamic site's port number, like 8080, HTTP watcher proxy it, automatically reload browsers when watched directory's file changed
  -root=".": Watched root directory for filesystem events, also the HTTP File Server's root directory

HTML + JS + CSS (static web project)

http-watcher -port 8000 -root /your/code/root

Dynamic web site: Clojure, golang, Python, JAVA

# your dynamic site listen on 9090
# http-watcher act as a proxy
http-watcher -port 8000 -root /your/code/root -proxy=9090 -ignores test/,classes

HTTP file server, no filesystem monitoring

# like python -m SimpleHTTPServer, should handle concurrency better
http-watcher -monitor=false

Web browser

Add the following HTML code to your index.html:

<script src="http://127.0.0.1:8000/_d/js"></script>

Manually reload the page in your browser. The browser Javascript console should display a message like: http-watcher reload connected. From that point on, any file changes should cause the page to be automatically reloaded.

More Repositories

1

tiny-web-server

a tiny web server in C, for daily use.
C
375
star
2

rssminer

An online rss reader written in clojure & javascript & java.
JavaScript
147
star
3

dictionary

Pure c with epoll: A English-English dictionary to assist reading
JavaScript
117
star
4

mustache.clj

High performance mustache template library for Clojure
Java
45
star
5

async-http-client

A fast async http client based on netty
Java
42
star
6

pedis

A fast and lightweight key/list database server.
C
18
star
7

rockredis

A server using redis protocol, backend by rocksdb. In golang
Go
13
star
8

ftpd.go

a ftp server written in go in order to learn the language
Go
11
star
9

java-jdbc

Generate JAVA JDBC Database Access using SQL statement. No dependency, No reflection
Python
10
star
10

dotfiles

Linux & OS X config files
C
9
star
11

feedb

A special key-value storage server written in go and mmap.
Go
8
star
12

build-web-application-with-clojure

JavaScript
7
star
13

http-kit

move to https://github.com/http-kit/http-kit
7
star
14

mmseg

A java implementation of MMSEG. http://technology.chtsai.org/mmseg/
Java
6
star
15

proxy

HTTP proxy, backend by few socks proxy. Route traffic based on rule
Go
6
star
16

redis.go

High performance golang redis client
Go
5
star
17

fibonacci-game

A language benchmark game, just for fun.
Python
3
star
18

shenfeng.github.com

my personal blog
CSS
3
star
19

lunch-lottery.go

Lunch Lottery of AVOS china team in golang
Go
2
star
20

ac

Auto complete
C++
1
star
21

rope-emacs

a patched ropemode to support goto-definistion-other-window and pop-goto-definition-stack. for emacs python editing.
Python
1
star
22

thrift-router

Go
1
star
23

livereload

Clojure
1
star
24

readability

JavaScript
1
star