cite 1.0

Yesterday Marcel and I launched cite, a small iOS app for creating textshots. Textshots became a thing on Twitter in the last months, when people started to post screenshots containing little text snippets of articles they wanted to share. Marcel contacted me in the beginnig of the year and asked if I would be interested in building a small app/service which allows you to do the same - but easier and more beautiful. We already worked together on QUOTE.fm in the past, which was based on the same idea: Share articles worth reading together with a quote you find the most interesting. As I still liked this concept in general and the idea for cite was to do it in a much simpler and smaller way it didn't take long until I started with the development of the iOS app.

Building an iOS share extension

One of the main problems we had while building QUOTE.fm was that at that time it was not possible to integrate with other apps on iOS. Because of this the only possible ways to share articles from an iOS device were opening them with the integrated browser of our app or to use the bookmarklet in Safari, which both turned out to be not very convenient. Now the situation is completely different as it is possible to create sharing extensions since iOS 8. However, the problem for cite is that we not only want to share some text or a URL but need access to the text selection of the user. With a sharing extension it is only possible to share the data the host app gives you to share. There is only one exception, which is Safari, where you can execute JavaScript just before the extension is opened and therefore extract the selected text and title of the currently opened website. So we decided to build the extension Safari only for the first version and possibly find another solution for other apps in the future (the only idea we had until now was to open a web view inside the extension where you then have to select your quote again).

A simple backend with Parse

For the first version of cite we only planned to allow the user to share a cite with the extension and to see your already created textshots inside the app (otherwise the app itself would not have any functionality at all, which is probably not allowed by Apple). As we wanted to store the cites of the user somewhere connected to your account and also have the possibilty to integrate things like showing all cites of people you follow on Twitter or something like this, we decided to build a small backend with Parse. I never used Parse before and I am still very happy with the choice because until now everything worked exactly like I would expect it. I just added the library to the iOS project and some minutes later we had a working Twitter login. Creating custom models and saving data was also very straightforward. In the end I also integrated the analytics and crashreporting functionality, so that we now have everything together in one place. If you need a simple backend for your app and don't want to think too much about it I would really recommend to have a look at Parse. The price for using it is also extremely low with lots of free requests and data storage. Without being too pessimistic about the success of cite I don't expect to exceed the free limits anytime soon.

If you didn't download cite yet, now is the perfect time to do it. Here is an example of a textshot created with cite:

Share Comment on Twitter