Appwrite: What is Appwrite, how to get started with it, contribution guide and more…

Devansh kajve
6 min readOct 10, 2021

--

Appwrite-logo

Appwrite is a self-hosted backend as a service server that provides web, mobile, and native developers with a set of tools and APIs that aims to help them build applications a lot faster and in a more secure way.

Before looking at the what and how let's take a look at the why, Why use Appwrite? Why was it made in the first place? What problems does it solve and what purpose does it serve?

Just like all the other developer tools, Appwrite was made to make things more convenient for users, it was started as an open-source project in GitHub two years ago for the purpose of making software development easier, less repetitive, and much less complex and to give developers a much better starting point to built new projects

Now let's try to understand what Appwrite is, how it works, and how to get started with it:

Starting off, Appwrite is an open-source back-end server that you can easily install on your desktop environment or your cloud environment, when you enter the console after installing(which we will see later on) you come across the dashboard where you can setup multiple projects to make your application. Appwrite provides you the features to control your databases, use multiple APIs and services to integrate into your app.

It also provides full end-to-end APIs, Appwrite’s APIs are divided in two main sections, The Client API can be integrated in any kind of client app no matter if it is a web app, mobile app or desktop app, the second one is the Server API where you get more capabilities without any permission restriction

Appwrite is basically a micro service architecture and just to visualize, it only operates on the HTTP layer, meaning it doesn’t do any UI intervention or stuff like that, it doesn’t tell you how to show your UI to your end-user,

You can integrate with Appwrite from any end platform like the web, mobile and it is not opinionated in a way that it says “hey I’m going to replace your back end” it says you can work with your own back end alongside Appwrite or you can even work with the Appwrite behind your own back end in your own internal network.

Appwrite is also completely agnostic to where you host it so it can work on your own desktop, AWS, Azure, whatever you want, if docker is set up - you can set up Appwrite.

Appwrite in Hacktoberfest and how to contribute to it:

Appwrite has a huge community of contributors and it's still growing rapidly, first of all, let's talk about Hacktoberfest, which you may have heard about before if you know anything about open-source, It’s a huge open-source celebration, a great initiative by Digitalocean, the dev community, intel and Appwrite(yeah they are sponsors since this year) which tries to help new open-source contributor to join into the party by giving them the incentives of free t-shirts and stuff like that, if you contribute for a pool request to any kind of repository in GitHub at all, we also try to motivate developers by giving away some free street stickers like this one

I know it's soo cool! right? but it’s also important to understand that contributing to open source is not just about giving away stickers and other swags, it’s also has a lot of other benefits, and getting swags shouldn’t be your only motivation, because you can get so many great things from contributing to open source, like gaining new experiences and trying new technologies, learning new skill sets, enriching your resume, your LinkedIn profile, giving back to the open-source project that you’re already using or that you really love and you want to support and help them

How you can contribute to Appwrite:

I think this is going to help a lot to new contributors who are looking to contribute to appwrite this hacktoberfest, let’s dive right into it,

First installation, it’s really simple to install Appwrite, it uses docker to package all the services and products so its really easy to install on any platform,

To install Appwrite all you have to do is, go into our documentation under the installation section, all you have to do is copy and paste the command line into your terminal, it’s probably going to take you a couple of minutes to download all the different containers and once that’s done you get to the shiny dashboard we talked about before.

After that check out the contributing guide of Appwrite and try to understand more about the project, view how the Appwrite architecture is constructed from starting basic things like the file structure of the project.

Appwrite have a lot of open issues that you can just go through, an easy way to check the different issues is just to go to label tab on GitHub and check out all the labels there and you will see that there are a lot of beginner-friendly open issues that anyone can contribute to, if he/she has the motivation of helping any specific issue,

Just comment on the issue and say “hey i can help with that issue” and most times they can give you some pointers to start with it, you can also get guidance on the discord channels or in any kind of platform that you prefer and the community members will walk with you and help you solve the issue

Get started with the beginner issues, they have lots of them for Hacktoberfest 2021, then as you get more and more experienced with contributing, there are discussions on existing issues and seeing what new issues you can find, what new features you can come up with, have a feel for the community, also you can suggest and work on features and do a lot of advanced stuff for the project.

One of the best thing about Appwrite is that it doesn’t matter what tech stack you’re coming from, there are so many technologies and integration for operate with different languages that you can just slide in and contribute in any kind of area,

They have a lot of demos, a lot of tutorials, if you’re coming from angular, there are demos and tutorials for angular, if you’re coming from react, they have some for that as well, if you’re coming from the flutter world, they have a lot of flutter things that you can contribute to, including on sdk or creating better knowledge base around flutter

Another thing to remember is not sending spam pull request, its already hard enough for the maintainers so be humble and discuss if you are struck on an issue or atleast let the maintainer know your current progress as you work on it.

Other means of contributing could be writing blogs like this one, working on tutorials and helping the community, if you see no open issue then you can ask the assignee if both of you can work on it together, its a great way to network and solve issues at the same time

--

--

Devansh kajve

Welcome to the place where I gather and share my thoughts about things