Appwrite is a self-hosted backend-as-a-service platform that provides developers with all the core APIs required to build any application.

With Appwrite, you can easily integrate your app with user authentication and multiple sign-in methods. You can also use its database to store and query user and team data, as well as manage storage and files, manipulate images, use Cloud Functions, and more.

If you're looking for a solution that allows you to build a robust mobile or web application that is primed for growth, then this might be the perfect choice for you. Its ability to handle increased demand and traffic is a testament to its effectiveness, and it has been designed to help developers create apps that can handle a wide variety of use cases.

You'll be able to take advantage of its flexibility and scalability to create an app that can meet the needs of your business, and you'll have the peace of mind that comes with knowing that it is built to last. With its comprehensive set of features and tools, you'll be able to build an app that is perfectly tailored to your needs and ready to take on the world.

Features

  • Scalable database
  • Auth and users
  • Storage
  • Support custom functions
  • Built-in GEO & Localization support
  • Developer-friendly and production-ready API
  • Track API usage
  • Offers several lightweight SDK in many languages: Dart, Flutter, JavaScript, Swift, Android native, Kotlin, Swift, Ruby, and Python
  • Rich informative dashboard
  • GraphQL support
  • Easy installation with Docker

Appwrite Services

  • Account - Manage current user authentication and account. Track and manage the user sessions, devices, sign-in methods, and security logs.
  • Users - Manage and list all project users when building backend integrations with Server SDKs.
  • Teams - Manage and group users in teams. Manage memberships, invites, and user roles within a team.
  • Databases - Manage databases, collections, and documents. Read, create, update, and delete documents and filter lists of document collections using advanced filters.
  • Storage - Manage storage files. Read, create, delete, and preview files. Manipulate the preview of your files to perfectly fit your app. All files are scanned by ClamAV and stored in a secure and encrypted way.
  • Functions - Customize your Appwrite server by executing your custom code in a secure, isolated environment. You can trigger your code on any Appwrite system event either manually or using a CRON schedule.
  • Realtime - Listen to real-time events for any of your Appwrite services including users, storage, functions, databases, and more.
  • Locale - Track your user's location and manage your app locale-based data.
  • Avatars - Manage your users' avatars, countries' flags, browser icons, and credit card symbols. Generate QR codes from links or plaintext strings.

Running Appwrite!

Appwrite is a powerful platform designed with containerized environments in mind. By using containerization, Appwrite allows you to easily manage and scale your server resources, ensuring that you can meet the needs of your growing user base.

Running your server with Appwrite is incredibly easy. With just a single command, you can spin up your server and start serving requests.

Whether you choose to run Appwrite on your local machine using docker-compose, or on a more robust container orchestration tool such as Kubernetes, Docker Swarm, or Rancher, you'll find that getting started is a breeze.

To get started with Appwrite, we recommend using our docker-compose file. This file will automatically set up all the necessary components for running Appwrite, including the database, API, and dashboard. However, before you can get started, you'll need to have Docker installed on your machine.

If you're not familiar with Docker, don't worry - it's an easy-to-use platform that allows you to run applications in containers, making it ideal for developers who need to manage complex environments with ease.

License

Appwrite is an open-source project that is released under the BSD-3-Clause license.

Resources