loading...
Cover image for Why I moved from BaaS to Appwrite (self-hosted Backend)

Why I moved from BaaS to Appwrite (self-hosted Backend)

torstendittmann profile image Torsten Dittmann ・3 min read

Me

I am a frontend developer who is working in his spare time on an app that is used for creative writing and managing of novels. I also offer the possibility to synchronize projects via the cloud and make them available on all devices.

GitHub logo TorstenDittmann / OmniaWrite

A text editor engineered for creative writing.

Backend decision

When I was looking for a provider or software that would provide a backend for my needs, I was quickly overwhelmed.

Basically all providers offer the same functions and features and differ only in pricing and service.

After I created about 10 prototypes for the providers on my shortlist, I decided to go for one that satisfied all my needs in the free plan and didn't make any high price jumps if I should make use of it.

After running this backend for about a year and growing my app, the realization came.

For the following reasons I was not completely satisfied with it:

Dependency

BaaS providers take work off your hands, but this dependence comes at a price. Also when I think back a few years to Parse.com, where a service simply shuts down and leaves its users standing in the rain makes me wanna move away from providers.

Control

I had no control over my data and the data of my users, which ended up in me creating my own solutions for backups, for example. The solution of the provider was unfortunately linked to a paid plan.

...

I realize right now that when I go too deep into detail it gets a little exhausting to read. So I'm gonna leave the two reasons.

Then I came across this article by chance

I read through the documentation of Appwrite and was immediately thrilled that there is a solution that meets all my needs and at the same time is still available free of charge.

I joined the official Discord, which you should absolutely do when you are interested in using Appwrite, and asked a few questions regarding some minor concerns.

Immediately the creator himself answered me and suggested to implement some of my points in the next release.

So I set out to create a proof of concept and waited eagerly for the next release to completely rewrite my app for Appwrite.

Wait a minute, what can Appwrite actually do?

Let me quote from their site:

Appwrite provides developers with a set of easy-to-use and integrate REST APIs to manage their core backend needs.

  • Database
  • Storage
  • Users
  • GEO & Localization
  • Scheduled Tasks
  • Console
  • Privacy
  • Security

Everything ready with a "one-liner" to try out on your local machine.

GitHub logo appwrite / appwrite

End to end backend server for web, native, and mobile developers 🚀

Appwrite Logo

Simple Backend Server for your [Vue / Angular / React / iOS / Android / Flutter / *ANY OTHER*] Frontend App

Discord Docker Pulls Travis CI Twitter Account Follow Appwrite on StackShare

Appwrite is a simple self-hosted backend server for web and mobile developers with a shiny dashboard and a very easy-to-use REST API.

Appwrite API services aim to make developer's life a lot easier by hiding the complexity of common and repetitive software development tasks.

Using Appwrite, you can easily manage user authentication with multiple sign-in methods, a database for storing and querying user and team data, storage and file management, image manipulation and cropping, schedule cron tasks and many other features to help you get more results in faster times and with a lot less code.

Appwrite can also integrate really well with your backend. Appwrite can word behind your own proxy facing your internal network, or alongside your own custom backend. You can use Appwrite server SDK to…

Result


Last week I moved the production to Appwrite and came to the following result:

Average API calls per month: ~120.000
Total users: ~560
Average total Bandwidth: ~500 mb
Storage used total: ~80 mb

All this can be handled by small virtual servers and costs you only a small amount compared to service providers.

PS: Of course this solution is not for everyone, because not everyone is willing or has enough knowledge to manage their own server. Also, you have a little more work in the beginning, because you have to manage things like server security, email server, possible updates, etc. Also Appwrite is still in beta, which can lead to breaking changes in future releases.

Posted on Apr 13 by:

torstendittmann profile

Torsten Dittmann

@torstendittmann

Frontend Web Developer. Working on OmniaWrite.

Discussion

markdown guide
 

Butt what is it? For example, what database does it provide?
Does it provide a message broker? Websockets?

 

Hey Mihail, I'm the creator of Appwrite. Appwrite providers you with the most commonly used APIs you would probably need to build when coding a data-driven website or application. Appwrite provides you with APIs for HTTP Database, Authentication (+15 OAuth providers, device management, logs, user prefs), storage (with data encryption and build in AV) and others services. The best way to learn more is to check out the docs: appwrite.io

You can also join our Discord community: discord.gg/GSeTUeA