https://github.com/appwrite/templates
Templates for Appwrite Functions âĄī¸đŠī¸
https://github.com/appwrite/templates
appwrite cpp dart dotnet java kotlin nodejs php python ruby serverless serverless-functions swift
Last synced: 6 months ago
JSON representation
Templates for Appwrite Functions âĄī¸đŠī¸
- Host: GitHub
- URL: https://github.com/appwrite/templates
- Owner: appwrite
- License: mit
- Created: 2023-07-10T11:01:01.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-01-15T08:42:30.000Z (10 months ago)
- Last Synced: 2025-05-15T16:10:06.877Z (6 months ago)
- Topics: appwrite, cpp, dart, dotnet, java, kotlin, nodejs, php, python, ruby, serverless, serverless-functions, swift
- Language: JavaScript
- Homepage: https://appwrite.io
- Size: 1.1 MB
- Stars: 147
- Watchers: 12
- Forks: 111
- Open Issues: 31
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# đ Appwrite Templates
[](https://appwrite.io/company/careers)
[](https://hacktoberfest.appwrite.io)
[](https://appwrite.io/discord?r=Github)
[](https://twitter.com/appwrite)
Templates for [Appwrite](https://appwrite.io/) Functions. These templates can be used as starters for your functions, or for learning purposes.
# List of Templates
| Template | Node.js | Python | PHP | Node.js (TypeScript) | Bun | Dart | Deno | Ruby | Kotlin | python-ml | C++ | .NET | Java | Swift |
| -------------------------------------- | ----------------------------------------------- | --------------------------------- | ------------------------------ |--------------------------------------------| ------------------------------ | ------------------------------ | ------------------------------- | ------------------------------- | --------------------------------- | --------------------------------------- | ---------------- | ------------------- | ----------------- | ------------------ |
| Starter | [â
](node/starter) | [â
](python/starter) | [â
](php/starter) | [â
](node-typescript/starter) | [â
](bun/starter) | [â
](dart/starter) | [â
](deno/starter) | [â
](ruby/starter) | [â
](kotlin/starter) | [â
](python-ml/starter) | [â
](cpp/starter) | [â
](dotnet/starter) | [â
](java/starter) | [â
](swift/starter) |
| Sync with Meilisearch | [â
](node/sync-with-meilisearch) | [â
](python/sync_with_meilisearch) | [â
](php/sync-with-meilisearch) | [â
](node-typescript/sync-with-meilisearch) | [â
](bun/sync-with-meilisearch) | đī¸ | [â
](deno/sync-with-meilisearch) | [â
](ruby/sync_with_meilisearch) | [â
](kotlin/sync-with-meilisearch) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| WhatsApp with Vonage | [â
](node/whatsapp-with-vonage) | [â
](python/whatsapp_with_vonage) | [â
](php/whatsapp-with-vonage) | [â
](node-typescript/whatsapp-with-vonage) | [â
](bun/whatsapp-with-vonage) | [â
](dart/whatsapp_with_vonage) | [â
](deno/whatsapp-with-vonage) | [â
](ruby/whatsapp-with-vonage) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Sync with Qdrant | [â
](node/sync-with-qdrant) | [â
](python/sync_with_qdrant) | đī¸ | [â
](node-typescript/sync-with-qdrant) | [â
](bun/sync-with-qdrant) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Prompt ChatGPT | [â
](node/prompt-chatgpt) | [â
](python/prompt_chatgpt) | [â
](php/prompt-chatgpt) | đī¸ | đī¸ | [â
](dart/prompt_chatgpt) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Censor with Redact | [â
](node/censor-with-redact) | [â
](python/censor_with_redact) | đī¸ | đī¸ | đī¸ | [â
](dart/censor_with_redact) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Email Contact Form | [â
](node/email-contact-form) | [â
](python/email_contact_form) | [â
](php/email-contact-form) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Sync with Algolia | [â
](node/sync-with-algolia) | [â
](python/sync_with_algolia) | [â
](php/sync-with-algolia) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Discord Command Bot | [â
](node/discord-command-bot) | [â
](python/discord_command_bot) | đī¸ | [â
](node-typescript/discord-command-bot)ī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Github Issue Bot | [â
](node/github-issue-bot) | đī¸ | đī¸ | [â
](node-typescript/github-issue-bot) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Analyze with PerspectiveAPI | [â
](node/analyze-with-perspectiveapi) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Chat with Anyscale | [â
](node/chat-with-anyscale) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Chat with Perplexity Ai | [â
](node/chat-with-perplexity-ai) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Database Cleaner | [â
](node/database-cleaner) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Generate PDF | [â
](node/generate-pdf) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Generate with Fal.ai | [â
](node/generate-with-fal) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Generate with Replicate | [â
](node/generate-with-replicate) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Generate with Together Ai | [â
](node/generate-with-together-ai) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Image Classification with Hugging Face | [â
](node/image-classification-with-huggingface) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Language Translation with Hugging Face | [â
](node/language-translation-with-huggingface) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Music Generation with Hugging Face | [â
](node/music-generation-with-huggingface) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Object Detection with Hugging Face | [â
](node/object-detection-with-huggingface) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Password Expiry | [â
](node/password-expiry) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Payments with Lemon Squeezy | [â
](node/payments-with-lemon-squeezy) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Payments with Stripe | [â
](node/payments-with-stripe) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Push Notification with FCM | [â
](node/push-notification-with-fcm) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Query Mongo Atlas | [â
](node/query-mongo-atlas) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Query Neo4j Auradb | [â
](node/query-neo4j-auradb) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Query Neon Postgres | [â
](node/query-neon-postgres) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Query Redis Labs | [â
](node/query-redis-labs) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Query Upstash Vector | [â
](node/query-upstash-vector) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| RAG with LangChain | [â
](node/rag-with-langchain) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Slack Command Bot | [â
](node/slack-command-bot) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Speak with ElevenLabs | [â
](node/speak-with-elevenlabs) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Speak with Lmnt | [â
](node/speak-with-lmnt) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Speech Recognition with Hugging Face | [â
](node/speech-recognition-with-huggingface) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Storage Cleaner | [â
](node/storage-cleaner) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Subscriptions with Lemon Squeezy | [â
](node/subscriptions-with-lemon-squeezy) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Subscriptions with Stripe | [â
](node/subscriptions-with-stripe) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Sync with Pinecone | [â
](node/sync-with-pinecone) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Text Generation with Hugging Face | [â
](node/text-generation-with-huggingface) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Text to Speech with Hugging Face | [â
](node/text-to-speech-with-huggingface) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| URL Shortener | [â
](node/url-shortener) | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ |
| Generate with Tensorflow | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | đī¸ | [â
](python-ml/generate_with_tensorflow) | đī¸ | đī¸ | đī¸ | đī¸ |
â
= Done - Function is implemented in this runtime.
đī¸ = Missing - Function isn't implemented in this runtime yet. Contributions are welcomed.
## 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.
All functions should have the exactly same functionality as their other language counterparts and if possible you should avoid using any third-party libraries to keep the functions simple and secure.
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](https://github.com/open-runtimes/.github/blob/main/CONTRIBUTING.md).
## Security
For security issues, kindly email us at [security@appwrite.io](mailto:security@appwrite.io) instead of posting a public issue on GitHub.
## Discord Server
Join our live [Discord server](https://appwrite.io/discord) for more help, ideas, and discussions.
## License
This repository is available under the [MIT License](./LICENSE).