Skip to content

Instantly share code, notes, and snippets.

@quietcricket
Last active December 31, 2019 07:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save quietcricket/68f6d2bf25b57be4792e87cb9aeee37d to your computer and use it in GitHub Desktop.
Save quietcricket/68f6d2bf25b57be4792e87cb9aeee37d to your computer and use it in GitHub Desktop.
Firebase local server with livereload. Requires python_livereload
import json
from livereload import Server
from tornado.web import RedirectHandler, StaticFileHandler
settings = json.load(open('.firebaserc'))
server_url = 'https://%s.web.app/__/' % settings['projects']['default']
class NoCacheHandler(StaticFileHandler):
def set_extra_headers(self, path):
self.set_header('Cache-Control', 'no-store')
class FirebaseServer(Server):
def get_web_handlers(self, script):
return [
(r"/__/(.*)", RedirectHandler, {"url": server_url+"{0}"}),
(r'/(.*)', NoCacheHandler, {
'path': self.root or '.',
'default_filename': 'index.html',
})]
server = FirebaseServer()
server.watch('public/*.*')
server.serve(8000, root='public')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment