Using more OCaml stuff
This is a tracking issue aimed at identifying and perhaps removing non-OCaml code in our codebase.
- [ ] The frontend is currently written in Rescript. Work to move it to Dream is tracked in #317, worked on at #448
- [ ] The database we use is postgresql. We could move it to say Irmin.
- [ ] The frontend and database communicate using graphql. It could be done better when the above are done.
- [ ] We use a lot of docker containers. Could we move to using Mirage? Probably best to work on this while implementing #446.
- [ ] I've been told Hasura is there to translate graphql to/from postgresql. We could remove it if we remove both of those.
- [ ] We have a small but important set of shell scripts & Makefiles. Could we do without? Or less of them?
Note: moving to irmin doesn't seem simple right now, as cobench requires mtime = 2.0 and irmin wants mtime < 2.0. We could help them move to 2.0 or work around our dependency
The frontend and database communicate using graphql. It could be done better when the above are done.
If we port the frontend/UI to Dream + HTML, do we still need GraphQL? I think it can be dropped.
Yes Graphql is no longer necessary in the dream PR, I'll update it to make that clearer
@ElectreAAS Dream on Mirage is possible. It is quite early and requires some more attention to keep Dream with mirage working. See https://github.com/mirage/ocaml-matrix/pull/32 and https://github.com/mirage/mirage-www/pull/805