The Monica Blog

State of the mobile apps

I've just removed the mobile applications from both Apple Store and Play Store. The only way to get them is now to build them from the GitHub repository.

While Theo has done an amazing job on the first version of those apps, the development has stopped at the beginning of this summer while the development of Monica, the platform, has moved forward. We are now in a situation where the mobile app is not on par with the platform and worse, we will break things in the API that the mobile app won't support.

I still strongly believe that the growth and adoption of Monica will be through a mobile app.

I would like to promise wonderful things and announce that you'll have a new app in 2 months - but in reality, I don't know how much time it will take. Since Monica is still at the side project stage, it might take 6 months, or 2 years. But one day we'll have a great mobile application, as good as the web version (if not better).

Thanks for your patience.

Monica 2.10.0 with document uploads

Version 2.10.0 is our 51th release. It contains a significant amount of new features and is the result of a month of work from 10 developers, not counting all the translators who are nice enough to translate Monica in 11 languages. Here are some highlights of the changes.

Tag autocompletion

Tags are a great way to categorize people. With 2.10.0, finally, we support tag autocompletion. Go to a contact and edit the tags in the header - as you type, a menu will appear showing your tags. A small change for Monica - a big help for users. A technical note: this feature has been entirely developed with VueJS, without other dependancy. We are moving away from JQuery and over the course of the next months, we'll sunset JQuery entirely.

image

New header

Speaking of the header, as we were changing how tags work, we've taken this opportunity to redesign the header of a contact profile. This will let us add much more useful information in the future. It's also easier to read.

image

Documents

You can now attach documents to a contact. There is a configurable limit per instance on how much storage an account can use. On our hosted version, the limit is 512Mb per paid account (storage is cheap - but not when you host ten of thousands of accounts).

There is also a new tab in your Settings page called Storage that shows your current account usage and your account limit.

image

Archive a contact

Sometimes you want to add a contact but not have him appear on the contact list. Archiving a contact lets you do that. You can access this feature from the bottom left of the contact profile.

Other improvements

  • We've fixed a lot of bugs.
  • We've improved how we support S3 to store assets (images, documents,...)
  • We've dramatically increased our test coverage. 6 months ago we were at 25% test coverage. With our continuous effort of increasing them, we are now at 65%. This gives us much more confidence that we don't break things as we move forward.
  • We now automatically set the currency and the timezone for new users, based on their location.
  • We've rewritten how we import/export vCard.
  • We also now parse FN properties correctly when we import vCards.

Have fun with version 2.10!

Introducing Life events

I don't like Facebook. It's not a secret. But despite their general evilness, they have some nice features here and there. One of them is the ability to track life events that happened to you. Such as indicating when you had a surgery or when you did renovations in your home. While I don't understand why you would give this information to Facebook, it makes sense to record this type of information about people you care about. So this is what we just shipped.

Life events is now a new tab in the Profile page of a contact.

image

You have access to 45+ life events that you can document. You can also set a reminder for each one of these events.

image

Note that you can add an event without knowing the month or the day it happened.

Once a life event is added, it will appear on a timeline that will be improved in an upcoming release.

image

I hope you will like this feature and have fun with it.

Introducing conversations

At its core, Monica is about logging information about the people you care about. While you can log a lot of stuff already, you didn't have a way to easily record what you said to someone at any point of time.

With our latest update, you can now log a conversation that you have had with someone on social media, by SMS or using Telegram, for instance. The interface we've chosen for this mimics the user interface used by popular chatting tools.

image

When you log a conversation, you can indicate the mean of communication you've had this conversation with. This list of means is pulled from the contact field types defined in your Settings page.

We hope that you will make good use of this new feature.

Monica 2.4.0

In the past two months we've shipped a bunch of useful new features and we've been too silent about it.

Here are some of the most important changes:

  • Remove automatic birthday reminder creation when editing a contact: this was something that irritated a lot of users. From now on, when you add/edit a contact and specify a birthdate, we don't automatically create a reminder for this event.
  • Debts across all your contacts are now showed on the dashboard.
  • We've added GDPR compliance. This is a new European law that forces us to confirm your email address on signup. I wanted to avoid it, but we don't have the choice legally.
  • We've improved the import of contacts through CSV. The process should work better now.
  • We've added a new kind of relationship between contact: ex-wife/husband.
  • There is a new filter in the contact list that lets you see contacts who are not associated with a tag.
  • We finally support nicknames for your contacts! You can also choose how you want to display the names in your account.
  • Add Yubikey support - this is another security feature for those who want an extra layer of protection.

On another note, it's been more than a year now that Monica has been launched on Hacker News. The growth has been pretty incredible, especially regarding the community on GitHub. We have now more than 110 contributors who help build Monica, which is awesome. That being said, there is a drawback to this: we've been shipping new features a lot, and because of this pace, we haven't been careful enough in the last months. Monica is not as stable as it should be. Nothing dramatic or critical, but the last two releases have seen some stupid bugs that we could have prevented, and we will put measures in place to increase the chances that this doesn't happen again. It's especially important to ship bug free releases as Monica is still a side project, and the worst that can happen is noticing something is very wrong on the platform while you are at work, and having to wait to find the time to actually fix and deploy to production (usually when we come back home and have to deal with kids etc...). On a daily basis, trust me, it's the kind of worries you don't want to have.

All this to say that we will try to focus on quality in general.

Please continue to send your feedback via email or through an issue on GitHub. We read every message and your opinion is important to us (really).

The mobile application is here

I receive emails asking for a mobile application almost every single day since the public launch in June 2017.

I understand why. A mobile app for Monica makes so much sense. You want to have the information immediately available wherever you are, at the right moment. Not when you are at home in front of your desktop.

We started working on the mobile application 6 months ago. It’s a long time. However, I don't think most people realize the work that needs to be done to ship a mobile application. Especially when 99.9% of the code is made by one person (the awesome @mokto). Who has a daily job. Who is not paid to work on it.

In those months, we've put a lot of efforts to create all the things the mobile application would need. The API has changed a lot to allow some features. We've stabilized the backend to make sure it will work flawlessly. We've also spent a lot of time setting up everything the right way on the mobile app repository on GitHub, that will allow us to move faster in the future (here we are talking about a great CI, unit tests, auto publishing in the stores,...).

And six months later we are proud to announce that the first version of the mobile application is available on iOS and Android.

image

There is one caveat though: this first version is read-only. That means you can't add or edit something. We want to have a great application, but we want to move slowly and make sure it's working well. As soon as we are confident this version works for everyone, we'll add features that will let you completely manipulate your data as you want (hint: we’ve already started working on a new version).

Apart from this, this mobile app has everything you come to expect from us:

  • A simple and friendly user interface.
  • You can connect to our hosted version of Monica, or login to your own instance.
  • The code is open source. You can read the code, submit issues, contribute to the code. Everything we do is open and transparent, and we believe that only collaboration can lead to the best product.
  • Open source means you can build and run the mobile application without having to go through the official Apple and Google stores - which is kind of amazing, in my opinion.
  • We don't display ads, we don't resell your data.
  • The app is free. No strings attached.

How can you help?

We need people who want to test the application and tell us if there are bugs, basically. Also, we'd like your opinion on what we should build next, or how we could make the app better (in terms of user experience or in terms of layout).

What's next?

In the coming days we'll improve the documentation on the official GitHub repository, in order to make it super easy for developers who want to help to join the project.

In the coming months we'll add the possibility to modify your data within the mobile application. The end goal is that everything you can do on the web, you can do on mobile (with the exception of exporting your data, because how would you store a file on iOS for instance...). This is why we are now building features in the API first, then in the UI (both web and mobile).

As a conclusion, I'd say that I'm very proud of what we've accomplished so far, and even prouder by the community who help us every single day. Your feedback and your help make Monica possible.

Download the apps on iOS or Android.

Stay in touch with the ones you love

There are people in your life who are especially important and you don't want to miss anything about them. Now, you can use the new Stay in touch feature to receive an alert about a specific person at a regular interval, defined by you.

image

The feature sends an email that is sent every few days - it's not affected by the last time you've interacted with someone or recorded an activity.

Version 2.1.0 also brings the support for markdown in the Journal and on the Notes. We've also fixed many bugs and continued our work on improving our Docker and Vagrant images.

Thanks for all the emails you send and issues you fill on GitHub. That helps greatly in knowing what we should work on next (although we have a good idea of what we want to do).

Monica 2.0.0 with better relationships

Relationships are all about what we are trying to achieve with Monica. We want it to become the best tool that helps you have a life full with love and friendships. Today's release is a great step towards this vision.

Redesign of relationships

Monica has always let you link contacts together. However this was limited to parent->child relationships, or love relationships. This wasn't the most flexible system. Starting now, you can now link contacts with many different relationship types, like uncle/nephew, coworker, mentor/protege, etc... The complete list of the possible relationships is defined here.

image

We've also tried to respect genders when we can. For instance, if contacts are women, we'll say "aunt" instead of "uncle", and so on. This is a real challenge for contacts who have a custom gender though. We do not support this case yet, but we are working on finding a good solution to manage this specific case.

This change was the biggest change we've made to Monica yet. Despite an extensive testing period, we had some bumps in the road while deploying this new feature, and I hope things are more stable now.

Ability to define which features you want to activate on a contact sheet

We now have an option to customize which features you want to use with your contacts. Under the Personalization tab in the Settings panel, you can now toggle features you care about. If you don't want to display the Gifts section, for instance, you can now hide it.

image

Journal entry date

You can now specify a date for a journal entry - allowing you to have more control over your journal.

Right to left languages

We now support right to left languages, starting with Hebrew. We'd like to thank our amazing community of translators for making this happen and their contributions to the translation process in general.

Markdown in activity comments

Markdown is a fantastic formatting tool. We were using it on a Call note, now we also use it in an activity's comment.

Final note

We are very lucky to have a great community around this project. I'd like to thank every contributor (above 100 now) who've helped by contributing to the code, every translator for their insane effort in translating the thousands of words we have in the app, every subscriber and donator for their monetary contributions. Everything helps. In a world who finally realizes how big social media platforms destroy the privacy of users and affect relationships between people, we need independent, open source projects like Monica to restore our faith in how great human relationships can be.

Version 2.0.0 is already available as a download, and is live on our hosted version.

On having too many settings

As time passes, we’ve added more and more settings in Monica. This is against what I believe in and something I’ve tried to avoid for many years: do not pollute your software with an endless number of settings and personalization options.

A product should be opinionated and follow its own vision, at the risk of pushing back potential users. Why would people sign up for your product if it doesn’t have an unique voice or ways of doing things? My vision includes a simple, powerful product with the least amount of settings possible.

How on earth then have we added a Personalization tab under Settings?

I intend to allow personalization for things that I can’t control or decide myself. Monica is not a business tool. It’s supposed to mimic real lives of people and adapt to the unique situation of everyone. One of the mistakes I made early on was about genders for instance: I only allowed at first two genders, male and female. This was my own reality - but it wasn’t the reality of many, many people out there. Instead of deciding for my users, we’ve added the flexibility to define your own genders, that match your reality, not ours. I intend to do that for every concept that represent important aspects of our lives.

Note that settings won't include to personalize the number of elements to display on a page or any insignificant details like that. They just don't matter.

I hope that this clarifies a little bit where we are going with the personalization of the product in general.

Our first award

image

We have received our first award: Open Source Rookie of the Year 2018, which recognizes some of the most innovative and influential open source projects launched each year. It’s great to see Monica being recognized, but the community should be recognized as well. It’s thanks to you, the community, that we are here today. You are the driving force behind this project, the reason we are building it, and you help decide what we should build next. I’m proud to be part of this adventure.

Let’s make this project a great story.

Strenghten the personal relationships with your friends and family.

Sign up

Company

Resources

© 2018

Proudly Canadian