Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

📄 Enhance Appwrite Databases with SurrealDB Adapter #3976

Closed
4 tasks
christyjacob4 opened this issue Sep 29, 2022 · 15 comments
Closed
4 tasks

📄 Enhance Appwrite Databases with SurrealDB Adapter #3976

christyjacob4 opened this issue Sep 29, 2022 · 15 comments
Assignees
Labels
good first issue Good for newcomers hacktoberfest Issues that can win you some cool swags! product / databases Fixes and upgrades for the Appwrite Database.

Comments

@christyjacob4
Copy link
Member

💭 Introduction

Appwrite Databases allows you to store your application and users' data. Not only that, it comes with query system that allows you to read those data. We put a lot of effort into making Appwrite Databases secure by default, and the whole security layer is truly easy to configure. 😇 You can learn more about Appwrite Databases and Appwrite Permissions in our official docs.

Every collection and document in Appwrite Database needs to be stored somewhere, and for that, we have many different adapters such as MySQL or MongoDB. Each provider implements simple methods such as createDocument(), deleteDocument(), find(), etc...

Your task is to implement support for SurrealDB in the Utopia PHP database library. We have prepared detailed documentation on how to create a Utopia PHP database adapter. Please read these documents and ensure you understand them before working on this issue.

🎯 Requirements

✅ Task Summary

  • Ask to be assigned to the issue.
  • Wait to be assigned.
  • Implement Utopia PHP database adapter for SurrealDB.
  • Submit a pull request in utopia-php/database.

If you have questions, need any help, or just want to hang out, make sure to join us on our Discord server.

Happy Appwriting!

@christyjacob4 christyjacob4 added product / databases Fixes and upgrades for the Appwrite Database. feature good first issue Good for newcomers hacktoberfest Issues that can win you some cool swags! labels Sep 29, 2022
@koolgax99
Copy link

Hi @christyjacob4, i would like to work on this issue. Can you assign it to me?

@stnguyen90
Copy link
Contributor

@koolgax99, thanks for your interest! You may work on this issue 🙏 Happy hacking! 🎃

@stnguyen90 stnguyen90 removed the hacktoberfest Issues that can win you some cool swags! label Nov 7, 2022
@eldadfux
Copy link
Member

Thank you everyone for celebrating Hacktoberfest 22 with us! This issue will now be closed as we're getting ready to celebrate Hacktoberfest 23.

@christyjacob4
Copy link
Member Author

We are accepting submissions for this issue once again for Hacktoberfest 2023

@christyjacob4 christyjacob4 reopened this Oct 1, 2023
@christyjacob4 christyjacob4 added the hacktoberfest Issues that can win you some cool swags! label Oct 1, 2023
@faisalill
Copy link
Contributor

Hey, @christyjacob4 can you please assign me this issue.

@Haimantika
Copy link
Contributor

Hey, @christyjacob4 can you please assign me this issue.

Hi @faisalill have assigned the issue to you! Thank you for showing interest in contributing to Appwrite! Happy Hacktoberfest 🎃

Notes:

Please update us with your progress every 3 days, so that we know that you are working on it.
Join us on Discord - https://appwrite.io/discord to chat about Hacktoberfest and Appwrite!

@surya0180
Copy link

Hey @christyjacob4 , I would like to work on this issue. Can you please assign this to me ?

@Haimantika
Copy link
Contributor

Hey @christyjacob4 , I would like to work on this issue. Can you please assign this to me ?

Hi, we are assigning issues on a first-come, first-serve basis, if @faisalill decides to drop off, we will assign it to you.

@HARSHALJETHWA19
Copy link

Hello, can you please assign this task to me for Hacktoberfest 2023

@Haimantika
Copy link
Contributor

Hello, can you please assign this task to me for Hacktoberfest 2023

Hi, we are assigning issues on a first-come, first-serve basis, if the other user decides to drop, we will assign it to you.

@faisalill
Copy link
Contributor

faisalill commented Oct 5, 2023

@Haimantika @christyjacob4
SurrealDB has no sdk for php, the only route as of now is to use the http endpoints provided by the database.
Should I use async http requests or sync ???
Coz in the end appwrite runs on swoole(guzzle http client works with swoole) which mutli threads requests.
And is there preference for any http php library i shoud use for these requests or plain php curl?

As of now I have implemented $database->ping().

@christyjacob4
Copy link
Member Author

@faisalill please check how their other SDKs are functioning. If they are interfacing directly with Surreal DBs HTTP API as well, then you can go ahead with that approach.

As for the HTTP client, you can use guzzle for now.

@faisalill
Copy link
Contributor

@christyjacob4 @Haimantika
SurrealDB SDK's (python, js) make async http requests.
Tried to do the same with Guzzle but async in php blocks the main thread. check here for more info
As of now PHPSDK for surrealdb is on it's way.
Waiting for it would be a better option.

@christyjacob4
Copy link
Member Author

@faisalill we don't need to make async requests inside the db library. They can be synchronous. You can continue to use guzzle or even our new http library https://github.com/utopia-php/fetch to make the blocking requests.

As you can see even with the other adapters like MariaDB, Postgres etc, all the methods are indeed blocking..

@tessamero
Copy link

Closing this issue as hacktoberfest is now over and there's no pending PR or a draft PR attached. Thank you to everyone who participated this year :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers hacktoberfest Issues that can win you some cool swags! product / databases Fixes and upgrades for the Appwrite Database.
Projects
None yet
Development

No branches or pull requests

9 participants