docs: def serve(port, no_livereload, open_url):
      """Serve the site """
  
      engine = Yass(CWD)
      if not port:
          port = engine.config.get("local_server.port", 8000)
      if no_livereload is None:
          no_livereload = True if engine.config.get("local_server.livereload") is False else False
      if open_url is None:
          open_url = False if engine.config.get("local_server.open_url") is False else True
  
      print("Serving at %s" % port)
      print("Livereload is %s" % ("OFF" if no_livereload else "ON"))
  
      def build_static():
          engine.build_static()
  
      def build_pages():
          engine.build_pages()
  
      engine.build()
  
      server = Server()
      if no_livereload is False:
          server.watch(engine.static_dir + "/", build_static)
          server.watch(engine.pages_dir + "/", build_pages)
          server.watch(engine.templates_dir + "/", build_pages)
          server.watch(engine.data_dir + "/", build_pages)
  
      server.serve(open_url_delay=open_url, port=port, root=engine.build_dir)