Last week has been the start of our new milestone and that meant doing a lot of research to figure out what technology to use. Furthermore we did a lot of prep to make it really easy for others to build on top of memri. More on this will be announced soon, but here you'll get a sneak peak in what we're preparing.

  1. Solidifying our database choice
  2. Stabilizing what we have
  3. Preparing for others to play with CVU

Solidifying our database choice

We have built the first version of the memri pod using DGraph — a scalable distributed graph database. DGraph is certainly very fast, but that is not our only requirement. Due to the way we are building memri pods (i.e. self-hosted, so that you can run your pod anywhere) we don't have much need for a massively scalable database. Instead we think it is most important to store the data safely encrypted with keys that only the user has. We also want to make sure incremental backups are possible and we have some very special requirements for the query-ability of the data. You'll be able to read much more about this, in a future article.

This week we looked at other database, from humble ones such as SQLite, to other GraphDBs and large SQL databases such as PostgresDB. We found interesting solutions that make DGraph work. Our biggest worry is memory consumption. Interestingly enough the main other competitor is SQLite, though we haven't done the performance tests yet. That will be a task for next week when we make the decision which database to build on!

Stabilizing what we have

In the last milestone we finished the first version of the memri browser that is ready to have the first users using it. And although we successfully reached that goal, you have to be a very patient user to use the app. We are fixing that by solving all the small issues that we can find. We've had a first developer test out the getting started flow and got a ton more issues to fix to ensure that starting to use memri is a smooth process.

The bottom two screens give a sneak preview of the Person detail view and the detail view for an importer (in this case for Evernote). The "START RUN" button doesn't work yet, but we're getting closer!

Preparing for others to play with CVU

The big push this week has been to get all the resources and flows ready for others (you?) to start playing with memri and the CVU language. This involved writing lots of documentation and articles, fine tuning the app, updating the READMEs, setting up the forum and much more.

The gif below show-cases the importer CLI that enables you to control the importers from the command line (until we have it integrated in the app).

CLI for downloaders / importers

Overall it has been a week full of anticipation and preparation! We look forward to the moment when we are no longer on an island and can interact with a community. Stay tuned!