Interview of Rémi, developer of the Map application

Rémi is a cartography enthusiast, and fan of Cozy from the very beginning. So he decided to mix this two passions by creating a map application for Cozy. This was really challenging, as he is not a web developer. For a few days now, you can install a first version of its Map application on your Cozy. We jumped at the chance to ask him some words about the application and get its feedback on developing application for Cozy. We hope that its example will convince more of you to jump into the train and start hacking applications for your server.

Hi Remi, could you introduce yourself?

Rémi: I’m this guy who had a pretty foolish dream, writing a cartography application for Cozy without being a web developer.

I’ve been interested in cartography for a long time now, and like lot of people, GMap made me discover how the Web could bring this passion to another level. I use different cartography solutions, professional ones like GIS, or more user friendly like Mapbox. I use them for my job and for personal projects. I like to organize my data and create renderings using Open Street Map.

How did you learn about Cozy?

Rémi: I discovered Cozy by chance back in 2014 in a conference in Paris, Pas Sage en Seine. Cozy reminded me how I used GIS, and the platform allowed to create its own applications. So I quickly asked for a test server and joined the community. Now, I come to most meet ups in Paris. Open Street Map and Leaflet have strong communities in France, so creating some cartographic application for Cozy seemed obvious.

Rémi climbing to the cloud

What is Cozy Map?

Rémi: Cozy Map is an easy to use cartography application with a search engine allowing to find places and itineraries. It tries to allow people to use up-to-date and free (as in speech) cartographic tools. I’m only at an early stage of its development, so for now you can mostly consult maps and find itineraries. But I’m working so as one can display all their personal data on a map with associated geolocation. The Cozy Team is working on features allowing applications to communicate and share data, and Cozy Map use them. For example, in a near future, you will be able to display your contacts on a map.

Screenshot of the Map application

Cozy Map will also soon allow to edit and save its own geographic data, of course with a strong focus on privacy and ease of openly share some data.

The application favors the use of free maps from Open Street Map, but you can also choose maps from Leaflet, Mapbox, CartoDB, Mapzen. You can also display scientific and crowdsourced data, like data from personal weather stations. There’s also a Satellite view, showing photos from 4 hours ago. This view is sometime erroneous, so alternatively you can choose to display pictures taken the day before.

Under the hood, the application use the Leaflet library. The search engine is built upon Nominatim API and OSRM (Open Source Routing Machine). The Overpass API allows to query and update the OSM database.

I published a first preview of the application a few days ago in the Cozy marketplace. I’m now looking for user feedback and also hope some people will contribute to the code.

Through this application, I really hope to build bridges between Cozy and communities contributing to free cartography.

What are your feedback on hacking an application for Cozy?

Rémi: The more I used Cozy, the more I felt the need to have a map application on my server. So I was really motivated to start to contribute.

The first trouble I went through was that most of cartographic tools are written in Python with Postgres. Cozy uses a pretty different environment, NodeJs and CouchDB. I was not familiar at all with JavaScript and CoffeeScript, so I applied to the Cozy mentorship program. Each time I encountered an issue, the Cozy team members were here to help. It is really rewarding as I learned a lot. Also, I worked a lot by myself. I like cartography, so finding motivation was easy.

While I was building the application, the team has added new tools to make development easier. Learning how to use these tools was sometime a bit difficult, but thank to the feedback and the help of the community, developers documentation is quickly improving.

The Cozy team does its best to help application developers, and I’m really happy seeing more and more people writing new applications for the platform.

Rémi: Do you plan to write other applications for Cozy?

I’m thinking of projects related to health, IoT and quantified self. Quantified self is often seen as a funny hobby, but I think it could really be used to collect data useful for science. We could imagine research project with some universities. I would be glad to participate to a quantified self project in partnership with health or sport professionals. Creating bridges between the health, cartography and Cozy is really something that motivates me.

One last thing?

Rémi: I’d like to thank the whole Cozy team and of course the community for their continuous efforts to build the platform and help the users.

To Cozy users: have fun with your data! I hope to see you soon, in a meet-up or on IRC.

You can meet Rémi in our IRC channel (remstw) and follow him on Twitter (@remstw). To give Map a try, just install it from the app store of your server and enjoy!