• Stars
    star
    40,346
  • Rank 329 (Top 0.01 %)
  • Language
    TypeScript
  • License
    BSD 3-Clause "New...
  • Created about 5 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Build like a team of hundreds_

Great news! Appwrite Cloud is now in public beta! Sign up at cloud.appwrite.io for a hassle-free, hosted experience. Join us in the Cloud today! โ˜๏ธ๐ŸŽ‰


Appwrite Logo
Appwrite is a backend platform for developing Web, Mobile, and Flutter applications. Built with the open source community and optimized for developer experience in the coding languages you love.

We're Hiring Hacktoberfest Discord Build Status Twitter Account

English | ็ฎ€ไฝ“ไธญๆ–‡

Announcing Appwrite Cloud Public Beta! Sign up today!

Appwrite is an end-to-end backend server for Web, Mobile, Native, or Backend apps packaged as a set of Docker microservices. Appwrite abstracts the complexity and repetitiveness required to build a modern backend API from scratch and allows you to build secure apps faster.

Using Appwrite, you can easily integrate your app with user authentication and multiple sign-in methods, a database for storing and querying users and team data, storage and file management, image manipulation, Cloud Functions, and more services.


Appwrite - 100% open source alternative for Firebase | Product Hunt

Appwrite

Find out more at: https://appwrite.io

Table of Contents:

Installation

Appwrite is designed to run in a containerized environment. Running your server is as easy as running one command from your terminal. You can either run Appwrite on your localhost using docker-compose or on any other container orchestration tool, such as Kubernetes, Docker Swarm, or Rancher.

The easiest way to start running your Appwrite server is by running our docker-compose file. Before running the installation command, make sure you have Docker installed on your machine:

Unix

docker run -it --rm \
    --volume /var/run/docker.sock:/var/run/docker.sock \
    --volume "$(pwd)"/appwrite:/usr/src/code/appwrite:rw \
    --entrypoint="install" \
    appwrite/appwrite:1.3.7

Windows

CMD

docker run -it --rm ^
    --volume //var/run/docker.sock:/var/run/docker.sock ^
    --volume "%cd%"/appwrite:/usr/src/code/appwrite:rw ^
    --entrypoint="install" ^
    appwrite/appwrite:1.3.7

PowerShell

docker run -it --rm `
    --volume /var/run/docker.sock:/var/run/docker.sock `
    --volume ${pwd}/appwrite:/usr/src/code/appwrite:rw `
    --entrypoint="install" `
    appwrite/appwrite:1.3.7

Once the Docker installation is complete, go to http://localhost to access the Appwrite console from your browser. Please note that on non-Linux native hosts, the server might take a few minutes to start after completing the installation.

For advanced production and custom installation, check out our Docker environment variables docs. You can also use our public docker-compose.yml and .env files to manually set up an environment.

Upgrade from an Older Version

If you are upgrading your Appwrite server from an older version, you should use the Appwrite migration tool once your setup is completed. For more information regarding this, check out the Installation Docs.

One-Click Setups

In addition to running Appwrite locally, you can also launch Appwrite using a pre-configured setup. This allows you to get up and running quickly with Appwrite without installing Docker on your local machine.

Choose from one of the providers below:

DigitalOcean Logo
DigitalOcean
Gitpod Logo
Gitpod

Getting Started

Getting started with Appwrite is as easy as creating a new project, choosing your platform, and integrating its SDK into your code. You can easily get started with your platform of choice by reading one of our Getting Started tutorials.

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.

For the complete API documentation, visit https://appwrite.io/docs. For more tutorials, news and announcements check out our blog and Discord Server.

SDKs

Below is a list of currently supported platforms and languages. If you would like to help us add support to your platform of choice, you can go over to our SDK Generator project and view our contribution guide.

Client

  • โœ… ย  Web (Maintained by the Appwrite Team)
  • โœ… ย  Flutter (Maintained by the Appwrite Team)
  • โœ… ย  Apple - Beta (Maintained by the Appwrite Team)
  • โœ… ย  Android (Maintained by the Appwrite Team)

Server

  • โœ… ย  NodeJS (Maintained by the Appwrite Team)
  • โœ… ย  PHP (Maintained by the Appwrite Team)
  • โœ… ย  Dart - (Maintained by the Appwrite Team)
  • โœ… ย  Deno - Beta (Maintained by the Appwrite Team)
  • โœ… ย  Ruby (Maintained by the Appwrite Team)
  • โœ… ย  Python (Maintained by the Appwrite Team)
  • โœ… ย  Kotlin - Beta (Maintained by the Appwrite Team)
  • โœ… ย  Apple - Beta (Maintained by the Appwrite Team)
  • โœ… ย  .NET - Experimental (Maintained by the Appwrite Team)

Community

Looking for more SDKs? - Help us by contributing a pull request to our SDK Generator!

Architecture

Appwrite Architecture

Appwrite uses a microservices architecture that was designed for easy scaling and delegation of responsibilities. In addition, Appwrite supports multiple APIs, such as REST, WebSocket, and GraphQL to allow you to interact with your resources by leveraging your existing knowledge and protocols of choice.

The Appwrite API layer was designed to be extremely fast by leveraging in-memory caching and delegating any heavy-lifting tasks to the Appwrite background workers. The background workers also allow you to precisely control your compute capacity and costs using a message queue to handle the load. You can learn more about our architecture in the contribution guide.

Contributing

All code contributions, including those of people having commit access, must go through a pull request and be approved by a core developer before being merged. This is to ensure a proper review of all the code.

We truly โค๏ธ pull requests! If you wish to help, you can learn more about how you can contribute to this project in the contribution guide.

Security

For security issues, kindly email us at [email protected] instead of posting a public issue on GitHub.

Follow Us

Join our growing community around the world! Check out our official Blog. Follow us on Twitter, Facebook Page, Facebook Group, Dev Community or join our live Discord server for more help, ideas, and discussions.

License

This repository is available under the BSD 3-Clause License.

More Repositories

1

awesome-appwrite

Carefully curated list of awesome Appwrite resources ๐Ÿ’ช
911
star
2

pink

Pink. Appwrite's official framework agnostic design system ๐ŸŽจ ๐Ÿฉท
HTML
412
star
3

sdk-for-flutter

[READ-ONLY] Official Appwrite Flutter SDK ๐Ÿ’™
Dart
338
star
4

console

The Console that makes Appwrite tick from the browser ๐Ÿ–ฅ
Svelte
286
star
5

sdk-for-web

[READ-ONLY] Official Appwrite Web SDK ๐Ÿงก
TypeScript
246
star
6

sdk-generator

Generating SDKs for multiple programming languages and platforms โš™๏ธ
Twig
245
star
7

demo-todo-with-react

A basic demo example for integrating between Appwrite & React JS ๐Ÿ’™
JavaScript
200
star
8

sdk-for-python

[READ-ONLY] Official Appwrite Python SDK ๐Ÿ
Python
199
star
9

sdk-for-node

[READ-ONLY] Official Appwrite Node.js SDK ๐ŸŸข
JavaScript
177
star
10

website

The Appwrite website, docs and blog ๐Ÿ 
Svelte
129
star
11

sdk-for-php

[READ-ONLY] Official Appwrite PHP SDK ๐Ÿ˜
PHP
129
star
12

playground-for-flutter

Simple examples that help you get started with Appwrite + Flutter (=โค๏ธ)
C++
119
star
13

demos-for-functions

Demo for Appwrite cloud functions in multiple coding languages โšก๏ธ ๐ŸŒฉ
Kotlin
119
star
14

demo-todo-with-vue

A basic demo example for integrating between Appwrite & Vue JS ๐Ÿ’š
Vue
114
star
15

demo-todo-with-svelte

A basic demo example for integrating between Appwrite & Svelte๐Ÿงก
Svelte
108
star
16

sdk-for-dart

[READ-ONLY] Official Appwrite Dart SDK ๐Ÿ’™
Dart
107
star
17

playground-for-web

Simple examples that help you get started with Appwrite + Web (=โค๏ธ)
HTML
98
star
18

sdk-for-dotnet

[READ-ONLY] Official Appwrite .NET SDK
C#
89
star
19

sdk-for-android

[READ-ONLY] Official Appwrite Android SDK ๐Ÿ’š ๐Ÿค–
Kotlin
88
star
20

docs

The official https://appwrite.io/docs documentation ๐Ÿ“
HTML
86
star
21

demos-for-react

Demos and tutorials for getting started with Appwrite + React JS
JavaScript
83
star
22

sdk-for-cli

[READ-ONLY] Official Appwrite CLI >_
JavaScript
81
star
23

sdk-for-apple

[READ-ONLY] Official Appwrite SDK for Apple Devices ๐ŸŽ
Swift
80
star
24

templates

Templates for Appwrite Functions โšก๏ธ๐ŸŒฉ๏ธ
HTML
76
star
25

demo-almost-netflix-for-flutter

A Netflix clone built with @appwrite + @flutter
Dart
74
star
26

sdk-for-svelte

Appwrite SDK for Svelte ๐Ÿงก โš ๏ธ Warning - this SDK was designed to support Appwrite 0.9 and is not compatible with the latest Appwrite versions. We are planing to refactor it as part of the SDK Generator for better support and maintenance.
Svelte
73
star
27

sdk-for-deno

[READ-ONLY] Official Appwrite Deno SDK ๐Ÿฆ•
TypeScript
67
star
28

demo-todo-with-angular

A basic demo example for integrating between Appwrite & Angular โค๏ธ
TypeScript
67
star
29

dynamic-links

Implement Dynamic Links with Appwrite Functions!
HTML
66
star
30

sdk-for-kotlin

[READ-ONLY] Official Appwrite Kotlin SDK ๐Ÿ’™๐Ÿงก
Kotlin
66
star
31

lite

A single container version of Appwrite with minimum must have features โš–๏ธ
Shell
63
star
32

playground-for-android

Simple examples that help you get started with Appwrite + Android (=โค๏ธ)
Kotlin
62
star
33

playground-for-python

Simple examples that help you get started with Appwrite + Python (=โค๏ธ)
Python
61
star
34

playground-for-node

Simple examples that help you get started with Appwrite + Node.js (=โค๏ธ)
JavaScript
61
star
35

php-clamav

ClamAV network and pipe client for PHP
PHP
60
star
36

sdk-for-go

[READ-ONLY] Official Appwrite GO SDK
Go
59
star
37

sdk-for-ruby

[READ-ONLY] Official Appwrite Ruby SDK ๐Ÿ’Ž ๐Ÿ”ด
Ruby
57
star
38

realtime-1-million

Learn how we built and tested our realtime server to 1M+ concurrent connections
Shell
57
star
39

demo-todo-with-nextjs

A basic demo example for integrating between Appwrite & Next.js ๐Ÿ’™
TypeScript
54
star
40

rfc

Architectural and new features proposals and designs for Appwrite ๐Ÿ“–
51
star
41

docker-clamav

ClamAV docker image with auto database updates
Shell
48
star
42

docker-smtp

SMTP server docker container for sending emails.
Dockerfile
47
star
43

assistant

Appwrite's AI assistant ๐Ÿง 
JavaScript
43
star
44

demos-for-vue

Demos and tutorials for getting started with Appwrite + Vue.js
Vue
42
star
45

30daysofappwrite

Landing Page for 30 Days of Appwrite
Vue
42
star
46

runtimes

Appwrite configuration for Cloud Function runtimes settings ๐ŸŒฉ
PHP
41
star
47

techscrunch

Very relAIble open source alternative for TechCrunch
Svelte
40
star
48

demo-quiz-with-flutter

A basic demo example for integrating between Appwrite & Flutter ๐Ÿ’™
Dart
40
star
49

sdk-for-swift

[READ-ONLY] Official Appwrite Swift SDK ๐Ÿฆ…๐ŸŽ
Swift
40
star
50

playground-for-dart

Simple examples that help you get started with Appwrite + Dart (=โค๏ธ) as an Appwrite server-side integration.
Dart
40
star
51

demo-todo-with-flutter

A basic demo example for integrating between Appwrite & Flutter ๐Ÿ’™
Dart
38
star
52

playground-for-apple-swiftui

Simple examples that help you get started with Appwrite + Apple with SwiftUI (=โค๏ธ)
Swift
38
star
53

docker-resque-ui

Docker container for Resque web UI
Dockerfile
37
star
54

hacktoberfest

๐Ÿก Home to Appwrite's Hacktoberfest Landing Page
Svelte
37
star
55

integration-for-gitpod

36
star
56

docker-mariadb

MariaDB container with Appwrite server DB schema and tables initialized and ready to use for fresh installations.
Dockerfile
35
star
57

builtwith

Explore popular projects built with Appwrite ๐Ÿ”
TypeScript
33
star
58

playground-for-php

Simple examples that help you get started with Appwrite + PHP (=โค๏ธ)
PHP
33
star
59

docker-flutter

Flutter docker image for Appwrite CI
Dockerfile
33
star
60

demos-for-svelte

Demos and tutorials for getting started with Appwrite + Svelte
JavaScript
33
star
61

install

CLI tool for easy installation of a self-hosted Appwrite server
PHP
32
star
62

playground-for-deno

Simple examples that help you get started with Appwrite + Deno (=โค๏ธ)
TypeScript
30
star
63

docker-telegraf

Telegraf Docker image, pre-configured for Appwrite server setup.
Dockerfile
30
star
64

functions-starter

Java
29
star
65

demo-job-portal-with-apple

A basic demo example for integrating between Appwrite & Apple (=โค๏ธ)
Swift
29
star
66

playground-for-dotnet

Simple examples that help you get started with Appwrite + .NET (=โค๏ธ)
C#
29
star
67

demo-almost-netflix-for-web

A Netflix clone built with @appwrite + @vuejs + @nuxt
Vue
29
star
68

demos-for-angular

Demos and tutorials for getting started with Appwrite + Angular JS
TypeScript
29
star
69

playground-for-swift

Simple examples that help you get started with Appwrite + Swift for Server (=โค๏ธ)
Swift
28
star
70

playground-for-apple-uikit

Simple examples that help you get started with Appwrite + iOS with UIKit (=โค๏ธ)
Swift
27
star
71

playground-for-ruby

Simple examples that help you get started with Appwrite + Ruby (=โค๏ธ)
Ruby
26
star
72

docker-influxdb

InfluxDB Docker image, pre-configured for Appwrite server setup.
Shell
26
star
73

docker-altair

GraphQL client explorer packaged as a docker container ๐Ÿ•ธ
JavaScript
25
star
74

playground-for-kotlin

Simple examples that help you get started with Appwrite + Kotlin (=โค๏ธ)
Kotlin
25
star
75

demos-for-astro

Astro
25
star
76

demo-watertracker-with-flutter

Dart
25
star
77

docker-mailcatcher

MailCatcher for catching mail content during development
Dockerfile
22
star
78

sdk-for-rust

[READ-ONLY] Official Appwrite Rust SDK โš™๏ธ
22
star
79

docker-requestcatcher

RequestCatcher for catching requests response during development
Dockerfile
22
star
80

setup-for-actions

21
star
81

demo-quiz-with-android

Kotlin
20
star
82

integration-for-digitalocean

Appwrite integration for DigitalOcean 1-Click Marketplace
Shell
20
star
83

benchmarks

The Appwrite laboratory for benchmarks and experiments ๐Ÿงช ๐Ÿ‘ฉโ€๐Ÿ”ฌ ๐Ÿฅฝ
19
star
84

demo-getstarted-with-android

Kotlin
16
star
85

docker-swagger

Swagger UI Docker image, pre-configured for Appwrite server setup
16
star
86

demo-almost-netflix-for-android

Kotlin
16
star
87

docker-base

Appwrite base image
Dockerfile
16
star
88

.github

15
star
89

demo-almost-netflix-for-apple

Swift
13
star
90

sdk-for-console

TypeScript
12
star
91

php-scrypt

Dockerfile
11
star
92

sdk-for-node-cli

JavaScript
10
star
93

makers

Makers of Appwrite
Svelte
6
star
94

snapwrite

A tool to convert code snippets into beautiful Appwrite-themed social-media images
Svelte
6
star
95

playground-for-rust

5
star
96

getting-started-projects

TypeScript
4
star
97

demos-for-apple

Demos and tutorials for getting started with Appwrite + Apple
2
star
98

demos-for-android

Demos and tutorials for getting started with Appwrite + Android
1
star
99

demos-for-flutter

Demos and tutorials for getting started with Appwrite + Flutter
1
star