(executable
 (name pellest)
 (modules
  app
  asset
  content
  db
  home
  island
  login
  logout
  pellest
  register
  syntax
  template
  tyx_util
  user
  ws)
 (libraries
  bos
  caqti
  caqti.blocking
  caqti-driver-sqlite3
  directories
  dream
  emile
  shared
  fpath
  lambdasoup
  lwt
  safepass
  scfg
  tyxml
  tyxml.functor
  uri
  uuidm)
 (preprocess
  (pps lwt_ppx)))

(executable
 (name island_client)
 (modules island_client ws_client)
 (libraries js_of_ocaml brr shared)
 (modes js))

(library
 (name shared)
 (modules entity log map network state time)
 (libraries))

(rule
 (target content.ml)
 (deps
  (source_tree content)
  island_client.bc.js)
 (action
  (with-stdout-to
   %{null}
   (run ocaml-crunch -m plain content -o %{target}))))
