0.1.0 • Published 3 years ago
lucia-appwrite-adapter v0.1.0
Appwrite adapter for AppWrite
This is a community supported and cannot be guaranteed to work with the latest version of Lucia
Lucia documentation: https://lucia-sveltekit.vercel.app
Installation
npm install @lucia-sveltekit/adapter-appwriteUsage
import appwrite from "@lucia-sveltekit/adapter-appwrite";
const config = {
project_id: "",
api: {
endpoint: "",
key: "",
},
database: {
id: "",
user_collection_id: "",
refresh_token_collection_id: "",
},
};
const auth = lucia({
adapter: appwrite(config),
// ...
});Parameters
| name | type | description |
|---|---|---|
| config.project_id | string | AppWrite project id |
| config.api.endpoint | string | Project api endpoint |
| config.api.key | string | Api Key (Permissions: select all) |
| config.database.id | string | Database id |
| config.database.user_collection_id | string | Collection id of user |
| config.database.refresh_token_collection_id | string | Collection id of refresh_token |
Collections
user
user may have additional columns (which are represented by [user_data]).
Attributes
| attribute id | type | required |
|---|---|---|
| identifier_token | string (length: 255) | true |
| hashed_password | string (length: 255) | |
| user_data | any | any |
Indexes
| index key | type | attributes |
|---|---|---|
| user_id | unique | $id (ASC) |
| identifier_token | unique | identifier_token (ASC) |
| user_data | any | any |
refresh_token
Attributes
| attribute id | type | required |
|---|---|---|
| refresh_token | string (length: 300) | true |
| user_id | string (length: 20) | true |
Indexes
| index key | type | attributes |
|---|---|---|
| refresh_token | unique | refresh_token (ASC) |
| user_id | key | user_id (ASC) |
Issues
- Lucia will return
AUTH_DUPLICATE_USER_DATAerror instead ofAUTH_DUPLICATE_IDENTIFIER_TOKEN.
Testing
Configure the following:
const projectId = "";
const apiKey = "";
const databaseId = "";
const userCollectionId = "";
const refreshTokenCollectionId = "";and run:
npm run test0.1.0
3 years ago