Pricing About Documentation Login Free Trial

Appwrite is an free, self hosted, open-source backend as a service platform that offers tools for authentication, databases, functions, and storage into your product. It helps the development of applications at various scales, providing you control over your data and the flexibility to use your preferred coding languages and tools for a customized approach to building applications.

Sign In

On your first visit to the site, you will be presented with the login/signup screen.

Appwrite Sign In screen

When your instance is first created, an account is created for you with the email you chose. You can get the password for this account by going to your Elestio dashboard and clicking on the "Show Password" button.

Enter your email, name and password and click the "Sign In" button

Creating Project

Once you Sign In, you will be redirected to the projects page. You can create a new project by clicking on the "Create New Project" button. Choose to add a project id or leave it as it is to get a auto generate id for your project

Appwrite creating project

Creating Database

Appwrite Databases are a great option storing and retrieving structured data. With Appwrite, you can efficiently organize your data into databases, collections, and documents. You can create a new database by clicking on the "Databases > Create Database" button.

Appwrite creating database

Creating Collections

Appwrite utilizes collections to store structured data. Each collection consists of multiple documents with the same structure. The terminology of collections and documents is used because the Appwrite JSON REST API resembles that of a traditional NoSQL database.

Additionally, Appwrite is designed to support both SQL and NoSQL database adapters such as MariaDB, MySQL, or MongoDB in future versions. You can create a new collection by heading over to your created database and clicking on the "Create Collection" button.

Appwrite creating collection

Creating Attributes

In Appwrite, all documents within a collection adhere to the same structure. Attributes are used to define the structure of your documents and assist the Appwrite API in validating user input. For creating attributes navigate to the Attributes tab in the created collection and click on the "Create Attribute" button.

Appwrite creating attributes

Creating Documents

In Appwrite Databases, each piece of data or information is represented as a document. Documents follow the structure defined by the parent collection. Before users can create documents, they need to be granted create permissions at the collection level. To create a new document, navigate to the created collection and click on the "Create Document" button.

Appwrite creating document

Creating Functions

Appwrite Functions allow developers to extend the functionality of Appwrite by writing custom code snippets. These functions can be triggered by various events, such as HTTP requests, SDK methods, server events, webhooks, and scheduled executions. Each function runs in its own isolated container and can have its own environment variables and permissions. You can choose to build your own function or take benefit of pre-built function templates.

Appwrite creating function

Creating Storage & Buckets

Appwrite Storage helps you to effectively manage files within your project. It offers a range of functionalities such as uploading, downloading, deleting, and listing files. Storage buckets, similar to collections in Appwrite Databases, allow you to group files and set restrictions on file size, extensions, encryption, and more. You can create a new storage by clicking on the "Storage > Create Bucket" button.

Appwrite creating storage and buckets

Authentication

Authentication settings in Appwrite allow configuration of authentication methods for the project. Users and teams can be added and provide them with special permissions. Security features such as session time and user limit can be configured to monitor and tailor security of your application even more. Third-party authentication providers like Google, Facebook, and Github can be integrated here to add additional authentication methods along with the default email and password authentication. You can configure authentication by clicking on the "Authentication" button.

Appwrite authentication

Settings

Settings in Appwrite allow for the configuration of project settings. Project name, logo, description, and other settings can be customized. Additionally, you can host your application on a custom domain, create webhooks, and perform migrations from this setting. To configure settings, click on the "Settings" button.

Appwrite settings