appwrite / templates

Templates for Appwrite Functions ⚡️🌩️
https://appwrite.io
MIT License
127 stars 102 forks source link

Translate 3 Node.js templates to PHP #313

Open Meldiron opened 2 weeks ago

Meldiron commented 2 weeks ago

Introduction

Appwrite allows developers to run serverless functions on Appwrite Cloud. While most of the business logic requires entirely custom code, parts of the application have a generic solution.

To address this problem, Appwrite introduced Function templates, allowing developers to use templates for problems such as Stripe payments, AI prompting, or generating invoices.

Those templates are meant to be extended by the developer to precisely fit the needs of their application. Considering that developers come from different backgrounds and experiences, Appwrite Functions supports templates for over 10 languages.

Starting this issue requires an understanding of Node.js and PHP syntax. Finishing this issue will give you a basic understanding of Chat GPT, the code review process, and writing quality code.

Task summary

Your goal is to prepare 3 Appwrite Function templates in PHP programming language.

1. Pick 3 templates you want to translate

Look at appwrite/templates README, and look for templates that are missing implementation in PHP. Pick 3 templates you want to work on, and make sure they have been implemented in Node.js.

We highly recommend picking an integration template with the tool you are familiar with. If you are up for a challenge, pick the ones you wanted to learn but didn't have time to check out yet.

2. Translate templates from Node.js to PHP

For each template, prepare a folder inside the PHP directory. Initial setup shouldn't be a problem if you are familiar with PHP, but it's also perfectly fine to look at other PHP templates to see what they look like.

Once you have folders ready, look at the template implementation in Node.js, which shows you how the template was implemented in JavaScript. You should read the code and understand it clearly.

Finally, re-implement the same logic in PHP. It's not necessary to follow it line-by-line, but it's best to follow the same logical structure.

In this step, you are allowed to use ChatGPT to help you out, but please don't copy entire chunks of code. Use it as a tool to show you what a solution could look like, but make sure you are the one making a decision about what the final PR looks like.

Hazel122 commented 2 weeks ago

I am working on translating Payments with Stripe, Sync with Qdrant, and GitHub Issue Bot from Node.js to PHP. Thanks!