Appwrite is an open-source backend as a service server that abstract and simplify complex and repetitive development tasks behind a very simple to use REST API. Appwrite aims to help you develop your apps faster and in a more secure way. Use the Appwrite SDK for NativeScript to integrate your app with the Appwrite server to easily start interacting with all of Appwrite backend APIs and tools.
npm install @nativescript/appwriteRegister an Appwrite account here and create a project to gather your endpoint and project id.
Setup a .env file at the root of your project with the following:
APP_WRITE_ENDPOINT=https://[YOUR_APPWRITE_ENDPOINT]
APP_WRITE_PROJECT_ID=[YOUR_APPWRITE_PROJECT_ID]
Within you webpack.config.js you can also npm install dotenv --save-dev and configure it to load them:
require('dotenv').config();
module.exports = (env) => {
// rest of config
}import { Client, Account, ID } from '@nativescript/appwrite';
const client = new Client()
.setEndpoint(process.env.APP_WRITE_ENDPOINT)
.setProject(process.env.APP_WRITE_PROJECT_ID)
.setSelfSigned(true); // for development
const account = new Account(client);const response = await account.create(ID.unique(), '[email protected]', 'password');
console.log('Account created:', response);const response = await account.createEmailPasswordSession('[email protected]', 'password');console.log('Logged in:', response);const database = new Databases(client);
const documents = await database.listDocuments('database-id', 'collection-id');
console.log('documents:', documents);const result = await database.createDocument(
'database-id',
'collection-id',
crypto.randomUUID(),
{ message: 'Hello World' }
);
console.log('Document created:', result);Apache License Version 2.0