From 1092b844621658a60b45506e86b6af9a985e7040 Mon Sep 17 00:00:00 2001 From: Bradley Schofield Date: Mon, 31 Jul 2023 14:04:21 +0100 Subject: [PATCH 01/12] Start work on Firebase docs --- app/views/docs/migration-firebase.phtml | 58 ++++++++++++++++++++++++- app/views/docs/migration.phtml | 2 +- 2 files changed, 58 insertions(+), 2 deletions(-) diff --git a/app/views/docs/migration-firebase.phtml b/app/views/docs/migration-firebase.phtml index 4f811a0ea..835c6553e 100644 --- a/app/views/docs/migration-firebase.phtml +++ b/app/views/docs/migration-firebase.phtml @@ -1,3 +1,59 @@ +

Things to keep in mind

- [TODO: Bradley try to fill this in with necessary information + limitations] + - Appwrite will waive usage fees during the migration process, however Firebase may still charge you for usage on their platform. + + - At the moment only top level document migrations are supported. Nested documents will not be transferred at this moment. + + - Appwrite migrations only supports Firestore. Realtime Database is not supported at this time. + + - OAuth users will not be transferred. You will need to re-authenticate with your OAuth provider after the migration is complete. +

+ +

Supported Resources

+ + + + + + + + + + + + + + + + + + + + + +
UsersDatabasesDocumentsFilesFunctions
Firebase
+ +

Migrating to Appwrite from Firebase

+

+ To begin migrating to Appwrite make sure to read the migration overview and + things to keep in mind sections above. + + To begin you can either migrate while creating a new project or go into your project settings and click on the "Migrations" tab. + + Next click on the "Create Migration" button and select "Firebase" as your source. + +

Migrating to Appwrite Cloud

+ To simplify the migration process we have created an OAuth application that will allow you to sign in with Google and automatically + discover your Firebase projects then you can simply just select the project you want to migrate from. + +

Migrating to Appwrite Self-Hosted

+ If you are self-hosting Appwrite you will need to create a service account in your Firebase project and download the JSON file. + + To create a service account navigate to your Firebase console then click on the gear icon and select "Project Settings". + Next click on the "Service Accounts" tab and click on the "Generate New Private Key" button to download the JSON file. + + + + Once you have the JSON file downloaded you can click on "Manual Authentication" while going through the migration process and\ + upload the JSON file.

\ No newline at end of file diff --git a/app/views/docs/migration.phtml b/app/views/docs/migration.phtml index 9757c6526..542744618 100644 --- a/app/views/docs/migration.phtml +++ b/app/views/docs/migration.phtml @@ -56,5 +56,5 @@

Limitations

- [TODO] @bradley help me out here. include performance, feature, all things annoying + - Migrations cannot transfer all data perfectly, so certain fields, such as $createdAt and $updatedAt, may not be transferred. More information can be found on the migration page for each source.

\ No newline at end of file From 7e10cc90feee9dc24849aab3e87f493f7b89d755 Mon Sep 17 00:00:00 2001 From: "Vincent (Wen Yu) Ge" Date: Mon, 31 Jul 2023 19:44:12 +0000 Subject: [PATCH 02/12] Did some formatting --- app/views/docs/migration-firebase.phtml | 79 +++++++++++++++++-------- 1 file changed, 54 insertions(+), 25 deletions(-) diff --git a/app/views/docs/migration-firebase.phtml b/app/views/docs/migration-firebase.phtml index 835c6553e..300fbfd43 100644 --- a/app/views/docs/migration-firebase.phtml +++ b/app/views/docs/migration-firebase.phtml @@ -1,15 +1,20 @@ -

Things to keep in mind

- - Appwrite will waive usage fees during the migration process, however Firebase may still charge you for usage on their platform. - - - At the moment only top level document migrations are supported. Nested documents will not be transferred at this moment. + Moving your project from Firebase to Appwrite? + Appwrite Migrations can help you streamline the process. + + Here's what you need to know to get started. +

- - Appwrite migrations only supports Firestore. Realtime Database is not supported at this time. +

Things to keep in mind

- - OAuth users will not be transferred. You will need to re-authenticate with your OAuth provider after the migration is complete. -

+
    +
  1. Appwrite will not charge usage during migrations, but Firebase may still incur service charges.
  2. +
  3. Appwrite migrations only supports Firestore as a database source. Realtime Database is currently not supported.
  4. +
  5. At the moment only top level document migration is supported. Nested documents will not be transferred automatically.
  6. +
  7. OAuth users will not be transferred. You will need to re-authenticate with your OAuth provider after the migration is complete.
  8. +
-

Supported Resources

+

Supported resource types

@@ -35,25 +40,49 @@

Migrating to Appwrite from Firebase

- To begin migrating to Appwrite make sure to read the migration overview and - things to keep in mind sections above. - - To begin you can either migrate while creating a new project or go into your project settings and click on the "Migrations" tab. - - Next click on the "Create Migration" button and select "Firebase" as your source. + To begin migrating to Appwrite make sure to read the migration overview + and things to keep in mind sections above. +

+ +
    +
  1. + Create a new project and click on the Migrations tab. +
  2. +
  3. + Click on the Create Migration button and select Firebase as your source. +
  4. +
  5. + Depending on where your Appwrite project is hosted, you'll need to use different methods to authorize with Firebase. +
  6. +
-

Migrating to Appwrite Cloud

- To simplify the migration process we have created an OAuth application that will allow you to sign in with Google and automatically - discover your Firebase projects then you can simply just select the project you want to migrate from. -

Migrating to Appwrite Self-Hosted

- If you are self-hosting Appwrite you will need to create a service account in your Firebase project and download the JSON file. - To create a service account navigate to your Firebase console then click on the gear icon and select "Project Settings". - Next click on the "Service Accounts" tab and click on the "Generate New Private Key" button to download the JSON file. +

Appwrite Cloud

+

+ To simplify the migration process we have created an OAuth application that will allow you to sign in with Google and automatically + discover your Firebase projects. Simply select the source project and follow the migration wizard. +

- +

Migrating to Appwrite Self-Hosted

+

+ If you are self-hosting Appwrite you will need to create a service account in your Firebase project and download the JSON file. +

- Once you have the JSON file downloaded you can click on "Manual Authentication" while going through the migration process and\ - upload the JSON file. -

\ No newline at end of file +
    +
  1. + Navigate to your Firebase console. +
  2. +
  3. + Click the gear icon to access your Project Settings. +
  4. +
  5. + Click Service Accounts, then Generate New Private Key. Don't share this key with anyone! +
  6. +
  7. + Once you've downloaded your private key, head back to Appwrite and click Manual Authentication. +
  8. +
  9. + Upload the JSON private key and follow the wizard. +
  10. +
From a76e1ea5536ce4908fd5e2e8f2d7319a376c0e15 Mon Sep 17 00:00:00 2001 From: "Vincent (Wen Yu) Ge" Date: Wed, 2 Aug 2023 19:09:58 +0000 Subject: [PATCH 03/12] Added instructions for setup to include adding platforms --- app/views/docs/migration-firebase.phtml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/app/views/docs/migration-firebase.phtml b/app/views/docs/migration-firebase.phtml index 300fbfd43..2d4951cc2 100644 --- a/app/views/docs/migration-firebase.phtml +++ b/app/views/docs/migration-firebase.phtml @@ -52,12 +52,14 @@ Click on the Create Migration button and select Firebase as your source.
  • - Depending on where your Appwrite project is hosted, you'll need to use different methods to authorize with Firebase. + Depending on where your Appwrite project is hosted, you'll need to use different methods to authorize with Firebase. + See the Cloud and Self-hosting sections for details. +
  • +
  • + Finally, add the platforms for your Web, Flutter, Android, and iOS apps.
  • - -

    Appwrite Cloud

    To simplify the migration process we have created an OAuth application that will allow you to sign in with Google and automatically From b4fb7387e93fe53a59f37da3322eac3e5c03a60b Mon Sep 17 00:00:00 2001 From: Bradley Schofield Date: Thu, 3 Aug 2023 00:50:36 +0100 Subject: [PATCH 04/12] Add docs for cloud to local and visa-versa --- app/views/docs/cloud-to-local.phtml | 33 ++++++++++++++++++++++++++++ app/views/docs/local-to-cloud.phtml | 34 +++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 app/views/docs/cloud-to-local.phtml create mode 100644 app/views/docs/local-to-cloud.phtml diff --git a/app/views/docs/cloud-to-local.phtml b/app/views/docs/cloud-to-local.phtml new file mode 100644 index 000000000..160c35c07 --- /dev/null +++ b/app/views/docs/cloud-to-local.phtml @@ -0,0 +1,33 @@ +

    + Want to leave the cloud and move your stuff to a Self Hosted instance? We're sorry to see you go, but we've got your back. + Migrations makes it easy as easy as a couple clicks to move all of your cloud data to a Self Hosted instance. +

    + +

    Things to keep in mind

    + +
      +
    1. Data transferred by migrations will reset `$createdAt` and `$updatedAt` timestamps to the date of the migration.
    2. +
    3. Your Appwrite Instace must be accessible from the internet for the migration to work.
    4. +
    + +

    Migrating to Self Hosted from Cloud

    + +

    + To begin migrating to Appwrite Self Hosted make sure to read the migration overview + and things to keep in mind sections above. +

    + +

    + Navigate to your Appwrite Cloud and click on the Migrations tab. + + From there you can click on the Export to Self Hosted button, you will then be asked to input the URL of your Self Hosted instance + aswell as an optional feedback question asking why Self Hosted is a better fit for you. Once done you can click on the Continue button and you will be + redirected to your Self Hosted instance to continue the migration process. + + Once your at Self Hosted instance you will be prompted to select the organization aswell as the option to either create a new project + or select an existing project to migrate to. + + After you have selected the project you want to migrate to you will be asked what data you want to migrate. You can select + to migrate users, databases, documents, files and functions. Once you have selected what data you want to migrate you can + click on the Start Migration button to begin the migration process. +

    diff --git a/app/views/docs/local-to-cloud.phtml b/app/views/docs/local-to-cloud.phtml new file mode 100644 index 000000000..3648b25ee --- /dev/null +++ b/app/views/docs/local-to-cloud.phtml @@ -0,0 +1,34 @@ +

    + Making the move to Appwrite Cloud? We've got your back. + Migrations makes it easy as easy as a couple clicks to move all of your self hosted data to Appwrite Cloud. +

    + +

    Things to keep in mind

    + +
      +
    1. Data transferred by migrations will reset `$createdAt` and `$updatedAt` timestamps to the date of the migration.
    2. +
    + +

    Migrating to Cloud from Self Hosted

    +

    + To begin migrating to Appwrite Self Hosted make sure to read the migration overview + and things to keep in mind sections above. +

    + +

    + Navigate to your Self Hosted instance and click on the Migrations tab. + + From there you can click on the Deploy to Cloud button, you will then be redirected to Appwrite Cloud. + + Once your at Appwrite Cloud you will be prompted to select the organization aswell as the option to either create a new project + or select an existing project to migrate to. + + After you have selected the project you want to migrate to you will be asked what data you want to migrate. You can select + to migrate users, databases, documents, files and functions. Once you have selected what data you want to migrate you can + click on the Start Migration button to begin the migration process. +

    + +
    +

    Keep in mind

    +

    Your Self Hosted instance will generate a API Key in the background to pass to Cloud. You can revoke this key after the migration process is complete.

    +
    \ No newline at end of file From 573755c693697d5bc26cdd76cb4cc245e7b32628 Mon Sep 17 00:00:00 2001 From: "Vincent (Wen Yu) Ge" Date: Thu, 3 Aug 2023 21:58:08 +0000 Subject: [PATCH 05/12] Fix cloud -> local --- app/views/docs/cloud-to-local.phtml | 33 ------------------- app/views/docs/migration-cloud-to-local.phtml | 33 +++++++++++++++++++ ...d.phtml => migration-local-to-cloud.phtml} | 0 3 files changed, 33 insertions(+), 33 deletions(-) delete mode 100644 app/views/docs/cloud-to-local.phtml create mode 100644 app/views/docs/migration-cloud-to-local.phtml rename app/views/docs/{local-to-cloud.phtml => migration-local-to-cloud.phtml} (100%) diff --git a/app/views/docs/cloud-to-local.phtml b/app/views/docs/cloud-to-local.phtml deleted file mode 100644 index 160c35c07..000000000 --- a/app/views/docs/cloud-to-local.phtml +++ /dev/null @@ -1,33 +0,0 @@ -

    - Want to leave the cloud and move your stuff to a Self Hosted instance? We're sorry to see you go, but we've got your back. - Migrations makes it easy as easy as a couple clicks to move all of your cloud data to a Self Hosted instance. -

    - -

    Things to keep in mind

    - -
      -
    1. Data transferred by migrations will reset `$createdAt` and `$updatedAt` timestamps to the date of the migration.
    2. -
    3. Your Appwrite Instace must be accessible from the internet for the migration to work.
    4. -
    - -

    Migrating to Self Hosted from Cloud

    - -

    - To begin migrating to Appwrite Self Hosted make sure to read the migration overview - and things to keep in mind sections above. -

    - -

    - Navigate to your Appwrite Cloud and click on the Migrations tab. - - From there you can click on the Export to Self Hosted button, you will then be asked to input the URL of your Self Hosted instance - aswell as an optional feedback question asking why Self Hosted is a better fit for you. Once done you can click on the Continue button and you will be - redirected to your Self Hosted instance to continue the migration process. - - Once your at Self Hosted instance you will be prompted to select the organization aswell as the option to either create a new project - or select an existing project to migrate to. - - After you have selected the project you want to migrate to you will be asked what data you want to migrate. You can select - to migrate users, databases, documents, files and functions. Once you have selected what data you want to migrate you can - click on the Start Migration button to begin the migration process. -

    diff --git a/app/views/docs/migration-cloud-to-local.phtml b/app/views/docs/migration-cloud-to-local.phtml new file mode 100644 index 000000000..5927d792c --- /dev/null +++ b/app/views/docs/migration-cloud-to-local.phtml @@ -0,0 +1,33 @@ +

    + Moving to a self-hosted instance? We've got you covered. + Migrations makes it easy as easy as a couple clicks to move all of your Appwrite Cloud project data to a self-hosted instance. +

    + +

    Things to keep in mind

    + +
      +
    1. Data transferred by migrations will reset `$createdAt` and `$updatedAt` timestamps to the date of the migration.
    2. +
    3. Your Appwrite Instace must be accessible from the internet for the migration to work.
    4. +
    + +

    Migrating to Self-hosted from Cloud

    + +

    + To begin migrating to Appwrite Self Hosted make sure to read the migration overview + and things to keep in mind sections above. +

    + +

    Steps on Your Cloud Project

    +
      +
    1. Navigate to your Appwrite Cloud Console and click on the Migrations tab.
    2. +
    3. Click Export to Self Hosted, you will be prompted to input the URL of your self-hosted Appwrite project.
    4. +
    5. Optionally, tell us about why you're moving to self-hosted.
    6. +
    7. After clicking Continue, you'll be directed back to your self-hosted project to complete the process.
    8. +
    + +

    Steps on Your Self-hosted Project

    +
      +
    1. Once redirected to your self-hosted project, you'll be prompted to select an organization and a project. You can migrate to an existing project or create a new one.
    2. +
    3. Select the data you wish to migrate. You can choose among accounts, databases, documents, files, and functions.
    4. +
    5. Click Start migration to start the migration process. You do not need to keep the Appwrite Console open through the process.
    6. +
    \ No newline at end of file diff --git a/app/views/docs/local-to-cloud.phtml b/app/views/docs/migration-local-to-cloud.phtml similarity index 100% rename from app/views/docs/local-to-cloud.phtml rename to app/views/docs/migration-local-to-cloud.phtml From b84453104cbacea6743e38fee8e0068d328a645d Mon Sep 17 00:00:00 2001 From: "Vincent (Wen Yu) Ge" Date: Fri, 4 Aug 2023 14:59:52 +0000 Subject: [PATCH 06/12] Complete appwrite->appwrite guides --- app/views/docs/migration-cloud-to-local.phtml | 9 +++--- app/views/docs/migration-local-to-cloud.phtml | 32 +++++++++++-------- 2 files changed, 23 insertions(+), 18 deletions(-) diff --git a/app/views/docs/migration-cloud-to-local.phtml b/app/views/docs/migration-cloud-to-local.phtml index 5927d792c..3f601a2ec 100644 --- a/app/views/docs/migration-cloud-to-local.phtml +++ b/app/views/docs/migration-cloud-to-local.phtml @@ -1,26 +1,27 @@

    Moving to a self-hosted instance? We've got you covered. - Migrations makes it easy as easy as a couple clicks to move all of your Appwrite Cloud project data to a self-hosted instance. + Migrations makes it as easy as a couple clicks to move all of your Appwrite Cloud project data to a self-hosted instance.

    Things to keep in mind

    1. Data transferred by migrations will reset `$createdAt` and `$updatedAt` timestamps to the date of the migration.
    2. -
    3. Your Appwrite Instace must be accessible from the internet for the migration to work.
    4. +
    5. Your self-hosted Appwrite project must be accessible from the internet for the migration to work.
    6. +
    7. Migrations are non-destructive. No data will be deleted or lost in the source project.

    Migrating to Self-hosted from Cloud

    - To begin migrating to Appwrite Self Hosted make sure to read the migration overview + To begin migrating to Appwrite Self-hosted, make sure to read the migration overview and things to keep in mind sections above.

    Steps on Your Cloud Project

    1. Navigate to your Appwrite Cloud Console and click on the Migrations tab.
    2. -
    3. Click Export to Self Hosted, you will be prompted to input the URL of your self-hosted Appwrite project.
    4. +
    5. Click Export to Self-hosted, you will be prompted to input the URL of your self-hosted Appwrite project.
    6. Optionally, tell us about why you're moving to self-hosted.
    7. After clicking Continue, you'll be directed back to your self-hosted project to complete the process.
    diff --git a/app/views/docs/migration-local-to-cloud.phtml b/app/views/docs/migration-local-to-cloud.phtml index 3648b25ee..e30783d4b 100644 --- a/app/views/docs/migration-local-to-cloud.phtml +++ b/app/views/docs/migration-local-to-cloud.phtml @@ -1,34 +1,38 @@

    Making the move to Appwrite Cloud? We've got your back. - Migrations makes it easy as easy as a couple clicks to move all of your self hosted data to Appwrite Cloud. + Migrations makes it as easy as a couple clicks to move all of your self-hosted project data to a Cloud instance.

    Things to keep in mind

    1. Data transferred by migrations will reset `$createdAt` and `$updatedAt` timestamps to the date of the migration.
    2. +
    3. Your self-hosted Appwrite project must be accessible from the internet for the migration to work.
    4. +
    5. Migrations are non-destructive. No data will be deleted or lost in the source project.
    -

    Migrating to Cloud from Self Hosted

    +

    Migrating to Self-hosted from Cloud

    - To begin migrating to Appwrite Self Hosted make sure to read the migration overview + To begin migrating to self-hosted, make sure to read the migration overview and things to keep in mind sections above.

    -

    - Navigate to your Self Hosted instance and click on the Migrations tab. - - From there you can click on the Deploy to Cloud button, you will then be redirected to Appwrite Cloud. +

    Steps on Your Self-hosted Project

    - Once your at Appwrite Cloud you will be prompted to select the organization aswell as the option to either create a new project - or select an existing project to migrate to. +
      +
    1. Navigate to your self-hosted project's console and click on the Migrations tab.
    2. +
    3. Click Deploy to cloud, you will be redirected to Appwrite Cloud.
    4. +
    5. You will complete the migration on Appwrite Cloud.
    6. +
    - After you have selected the project you want to migrate to you will be asked what data you want to migrate. You can select - to migrate users, databases, documents, files and functions. Once you have selected what data you want to migrate you can - click on the Start Migration button to begin the migration process. -

    +

    Steps on Your Cloud Project

    +
      +
    1. Once redirected to Appwrite Cloud, you'll be prompted to select an organization and a project. You can migrate to an existing project or create a new one.
    2. +
    3. Select the data you wish to migrate. You can choose among accounts, databases, documents, files, and functions.
    4. +
    5. Click Start migration to start the migration process. You do not need to keep the Appwrite Console open through the process.
    6. +

    Keep in mind

    -

    Your Self Hosted instance will generate a API Key in the background to pass to Cloud. You can revoke this key after the migration process is complete.

    +

    Your Self-hosted instance will generate a API Key in the background to pass to Cloud. You can revoke this key after the migration process is complete.

    \ No newline at end of file From 46ffc50db33703f4a9191e4ae226fca2a5aa27b5 Mon Sep 17 00:00:00 2001 From: Bradley Schofield Date: Tue, 15 Aug 2023 10:23:07 +0100 Subject: [PATCH 07/12] Add NHost and Supabase Docs --- app/views/docs/migration-nhost.phtml | 88 ++++++++++++++++++++++++ app/views/docs/migration-supabase.phtml | 91 +++++++++++++++++++++++++ 2 files changed, 179 insertions(+) diff --git a/app/views/docs/migration-nhost.phtml b/app/views/docs/migration-nhost.phtml index e69de29bb..154555757 100644 --- a/app/views/docs/migration-nhost.phtml +++ b/app/views/docs/migration-nhost.phtml @@ -0,0 +1,88 @@ +

    + Moving your project from NHost to Appwrite? + Appwrite Migrations can help you streamline the process. + + Here's what you need to know to get started. +

    + +

    Things to keep in mind

    + +
      +
    1. Appwrite will not charge usage during migrations, but NHost may still incur service charges.
    2. +
    3. Appwrite's Database doesn't support all the features of the postgreSQL database so more advanced postgres centric things things like advanced indexes, postgres functions and scheduling will not be migrated.
    4. +
    5. OAuth users will not be transferred. You will need to re-authenticate with your OAuth provider after the migration is complete.
    6. +
    + +

    Supported resource types

    +
    + + + + + + + + + + + + + + + + + + + + +
    UsersDatabasesDocumentsFilesFunctions
    NHost
    + +

    Migrating to Appwrite from NHost

    +

    + To begin migrating to Appwrite make sure to read the migration overview + and things to keep in mind sections above. +

    + +
      +
    1. + Create a new project and click on the Migrations tab. +
    2. +
    3. + Click on the Create Migration button and select NHost as your source. +
    4. +
    5. + Enter the credentials following the instructions below and click Next. +
    6. +
    7. + Select the resources you want to migrate and finally click Start migration to begin the migration process. +
    8. +
    + +

    Migrating to Appwrite from NHost

    +

    +

      +
    1. + Enter all the following credentials from your NHost project. +
        +
      • + Region - The region your NHost project is hosted in. This can be found in your NHost project environment variables as NHOST_REGION. +
      • +
      • + Subdomain - The subdomain of your NHost project. This can be found in your NHost project environment variables as NHOST_SUBDOMAIN. +
      • +
      • + Database - The name of your NHost database. This can be found in your NHost project Database settings. +
      • +
      • + Username - The username of your NHost database. This can be found in your NHost project Database settings. +
      • +
      • + Password - The password of your NHost database. You set this when you created your NHost project, if you don't remember it you can reset it from your NHost project Database settings. +
      • +
      • + Admin Secret - The admin secret of your NHost project. This can be found in your NHost project environment variables as NHOST_ADMIN_SECRET. We use this to transfer your NHost Files to Appwrite. +
      • +
      +
    2. +
    +

    \ No newline at end of file diff --git a/app/views/docs/migration-supabase.phtml b/app/views/docs/migration-supabase.phtml index e69de29bb..76f0188c6 100644 --- a/app/views/docs/migration-supabase.phtml +++ b/app/views/docs/migration-supabase.phtml @@ -0,0 +1,91 @@ +

    + Moving your project from Supabase to Appwrite? + Appwrite Migrations can help you streamline the process. + + Here's what you need to know to get started. +

    + +

    Things to keep in mind

    + +
      +
    1. Appwrite will not charge usage during migrations, but Supabase may still incur service charges.
    2. +
    3. Appwrite's Database doesn't support all the features of the postgreSQL database so more advanced postgres centric things things like advanced indexes, postgres functions and scheduling will not be migrated.
    4. +
    5. OAuth users will not be transferred. You will need to re-authenticate with your OAuth provider after the migration is complete.
    6. +
    + +

    Supported resource types

    + + + + + + + + + + + + + + + + + + + + + +
    UsersDatabasesDocumentsFilesFunctions
    Supabase
    + +

    Migrating to Appwrite from Supabase

    +

    + To begin migrating to Appwrite make sure to read the migration overview + and things to keep in mind sections above. +

    + +
      +
    1. + Create a new project and click on the Migrations tab. +
    2. +
    3. + Click on the Create Migration button and select Supabase as your source. +
    4. +
    5. + Enter the credentials following the instructions below and click Next. +
    6. +
    7. + Select the resources you want to migrate and finally click Start migration to begin the migration process. +
    8. +
    + +

    Migrating to Appwrite from Supabase

    +

    +

      +
    1. + Enter all the following credentials from your Supabase project. +
        +
      • + Region - The region your Supabase project is hosted in. This can be found in your Supabase project environment variables as Supabase_REGION. +
      • +
      • + Host - The host of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Host. +
      • +
      • + Port - The port of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Port. By default this is 5432. +
      • +
      • + Username - The username of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Username. +
      • +
      • + Password - The password of your Supabase Database, this was set when you created your Supabase project. If you forgot it you can reset it within your Database Settings +
      • +
      • + Endpoint - This is the endpoint of your Supabase instance under Project Settings -> API. This is used to migrate your files. +
      • +
      • + API Key - This is the key of your Supabase instance under Project Settings -> API. This is used to migrate your files. Make sure to use the hidden service_role key. +
      • +
      +
    2. +
    +

    \ No newline at end of file From 7d7c029dbfc9c1e32743271a70677aeaca73d050 Mon Sep 17 00:00:00 2001 From: "Vincent (Wen Yu) Ge" Date: Tue, 15 Aug 2023 14:34:23 +0000 Subject: [PATCH 08/12] update index to have all pages --- app/views/docs/index.phtml | 14 +++++++++++++- app/views/docs/migration.phtml | 3 ++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/app/views/docs/index.phtml b/app/views/docs/index.phtml index 11c8f4882..dac01f024 100644 --- a/app/views/docs/index.phtml +++ b/app/views/docs/index.phtml @@ -96,7 +96,19 @@ $cols = [
  • Migration + + + +
  • diff --git a/app/views/docs/migration.phtml b/app/views/docs/migration.phtml index 542744618..336689026 100644 --- a/app/views/docs/migration.phtml +++ b/app/views/docs/migration.phtml @@ -56,5 +56,6 @@

    Limitations

    - - Migrations cannot transfer all data perfectly, so certain fields, such as $createdAt and $updatedAt, may not be transferred. More information can be found on the migration page for each source. + Migrations cannot transfer all data perfectly, so certain fields, such as $createdAt and $updatedAt, may not be transferred. + More information can be found on the migration page for each source.

    \ No newline at end of file From fc5ba4004d64e87dcd6f7abb9ac0593942890692 Mon Sep 17 00:00:00 2001 From: "Vincent (Wen Yu) Ge" Date: Tue, 15 Aug 2023 15:11:06 +0000 Subject: [PATCH 09/12] Fix ordered list tags and headings --- app/views/docs/migration-nhost.phtml | 54 +++++++++++----------- app/views/docs/migration-supabase.phtml | 61 ++++++++++++------------- 2 files changed, 56 insertions(+), 59 deletions(-) diff --git a/app/views/docs/migration-nhost.phtml b/app/views/docs/migration-nhost.phtml index 154555757..a556de4a0 100644 --- a/app/views/docs/migration-nhost.phtml +++ b/app/views/docs/migration-nhost.phtml @@ -58,31 +58,29 @@ -

    Migrating to Appwrite from NHost

    -

    -

      -
    1. - Enter all the following credentials from your NHost project. -
        -
      • - Region - The region your NHost project is hosted in. This can be found in your NHost project environment variables as NHOST_REGION. -
      • -
      • - Subdomain - The subdomain of your NHost project. This can be found in your NHost project environment variables as NHOST_SUBDOMAIN. -
      • -
      • - Database - The name of your NHost database. This can be found in your NHost project Database settings. -
      • -
      • - Username - The username of your NHost database. This can be found in your NHost project Database settings. -
      • -
      • - Password - The password of your NHost database. You set this when you created your NHost project, if you don't remember it you can reset it from your NHost project Database settings. -
      • -
      • - Admin Secret - The admin secret of your NHost project. This can be found in your NHost project environment variables as NHOST_ADMIN_SECRET. We use this to transfer your NHost Files to Appwrite. -
      • -
      -
    2. -
    -

    \ No newline at end of file +

    NHost Credentials

    +
      +
    1. + Enter all the following credentials from your NHost project. +
        +
      • + Region - The region your NHost project is hosted in. This can be found in your NHost project environment variables as NHOST_REGION. +
      • +
      • + Subdomain - The subdomain of your NHost project. This can be found in your NHost project environment variables as NHOST_SUBDOMAIN. +
      • +
      • + Database - The name of your NHost database. This can be found in your NHost project Database settings. +
      • +
      • + Username - The username of your NHost database. This can be found in your NHost project Database settings. +
      • +
      • + Password - The password of your NHost database. You set this when you created your NHost project, if you don't remember it you can reset it from your NHost project Database settings. +
      • +
      • + Admin Secret - The admin secret of your NHost project. This can be found in your NHost project environment variables as NHOST_ADMIN_SECRET. We use this to transfer your NHost Files to Appwrite. +
      • +
      +
    2. +
    \ No newline at end of file diff --git a/app/views/docs/migration-supabase.phtml b/app/views/docs/migration-supabase.phtml index 76f0188c6..871ca85a9 100644 --- a/app/views/docs/migration-supabase.phtml +++ b/app/views/docs/migration-supabase.phtml @@ -58,34 +58,33 @@ -

    Migrating to Appwrite from Supabase

    -

    -

      -
    1. - Enter all the following credentials from your Supabase project. -
        -
      • - Region - The region your Supabase project is hosted in. This can be found in your Supabase project environment variables as Supabase_REGION. -
      • -
      • - Host - The host of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Host. -
      • -
      • - Port - The port of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Port. By default this is 5432. -
      • -
      • - Username - The username of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Username. -
      • -
      • - Password - The password of your Supabase Database, this was set when you created your Supabase project. If you forgot it you can reset it within your Database Settings -
      • -
      • - Endpoint - This is the endpoint of your Supabase instance under Project Settings -> API. This is used to migrate your files. -
      • -
      • - API Key - This is the key of your Supabase instance under Project Settings -> API. This is used to migrate your files. Make sure to use the hidden service_role key. -
      • -
      -
    2. -
    -

    \ No newline at end of file +

    Credentials

    + +
      +
    1. + Enter all the following credentials from your Supabase project. +
        +
      • + Region - The region your Supabase project is hosted in. This can be found in your Supabase project environment variables as Supabase_REGION. +
      • +
      • + Host - The host of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Host. +
      • +
      • + Port - The port of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Port. By default this is 5432. +
      • +
      • + Username - The username of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Username. +
      • +
      • + Password - The password of your Supabase Database, this was set when you created your Supabase project. If you forgot it you can reset it within your Database Settings +
      • +
      • + Endpoint - This is the endpoint of your Supabase instance under Project Settings -> API. This is used to migrate your files. +
      • +
      • + API Key - This is the key of your Supabase instance under Project Settings -> API. This is used to migrate your files. Make sure to use the hidden service_role key. +
      • +
      +
    2. +
    From 4b5185846b0041c4fe6aac6d745cafc8e408f290 Mon Sep 17 00:00:00 2001 From: "Vincent (Wen Yu) Ge" Date: Tue, 15 Aug 2023 16:03:00 +0000 Subject: [PATCH 10/12] Fix migrations index --- app/views/docs/index.phtml | 9 --------- 1 file changed, 9 deletions(-) diff --git a/app/views/docs/index.phtml b/app/views/docs/index.phtml index dac01f024..c4889dee5 100644 --- a/app/views/docs/index.phtml +++ b/app/views/docs/index.phtml @@ -97,19 +97,10 @@ $cols = [ Migration - - - - From 3b7d63e33e7a96f9a2aa37268836192af6030742 Mon Sep 17 00:00:00 2001 From: "Vincent (Wen Yu) Ge" Date: Tue, 15 Aug 2023 17:24:39 +0000 Subject: [PATCH 11/12] Fix language in migration guides for firebase, supabase, and nhost --- app/views/docs/index.phtml | 12 +-- app/views/docs/migration-supabase.phtml | 90 ------------------- ....phtml => migrations-cloud-to-local.phtml} | 4 +- ...rebase.phtml => migrations-firebase.phtml} | 8 +- ....phtml => migrations-local-to-cloud.phtml} | 2 +- ...ion-nhost.phtml => migrations-nhost.phtml} | 48 +++++----- app/views/docs/migrations-supabase.phtml | 88 ++++++++++++++++++ .../{migration.phtml => migrations.phtml} | 32 +++++-- 8 files changed, 151 insertions(+), 133 deletions(-) delete mode 100644 app/views/docs/migration-supabase.phtml rename app/views/docs/{migration-cloud-to-local.phtml => migrations-cloud-to-local.phtml} (92%) rename app/views/docs/{migration-firebase.phtml => migrations-firebase.phtml} (87%) rename app/views/docs/{migration-local-to-cloud.phtml => migrations-local-to-cloud.phtml} (97%) rename app/views/docs/{migration-nhost.phtml => migrations-nhost.phtml} (56%) create mode 100644 app/views/docs/migrations-supabase.phtml rename app/views/docs/{migration.phtml => migrations.phtml} (52%) diff --git a/app/views/docs/index.phtml b/app/views/docs/index.phtml index c4889dee5..125f562c6 100644 --- a/app/views/docs/index.phtml +++ b/app/views/docs/index.phtml @@ -94,13 +94,13 @@ $cols = [
  • Functions
  • - Migration + Migrations diff --git a/app/views/docs/migration-supabase.phtml b/app/views/docs/migration-supabase.phtml deleted file mode 100644 index 871ca85a9..000000000 --- a/app/views/docs/migration-supabase.phtml +++ /dev/null @@ -1,90 +0,0 @@ -

    - Moving your project from Supabase to Appwrite? - Appwrite Migrations can help you streamline the process. - - Here's what you need to know to get started. -

    - -

    Things to keep in mind

    - -
      -
    1. Appwrite will not charge usage during migrations, but Supabase may still incur service charges.
    2. -
    3. Appwrite's Database doesn't support all the features of the postgreSQL database so more advanced postgres centric things things like advanced indexes, postgres functions and scheduling will not be migrated.
    4. -
    5. OAuth users will not be transferred. You will need to re-authenticate with your OAuth provider after the migration is complete.
    6. -
    - -

    Supported resource types

    - - - - - - - - - - - - - - - - - - - - - -
    UsersDatabasesDocumentsFilesFunctions
    Supabase
    - -

    Migrating to Appwrite from Supabase

    -

    - To begin migrating to Appwrite make sure to read the migration overview - and things to keep in mind sections above. -

    - -
      -
    1. - Create a new project and click on the Migrations tab. -
    2. -
    3. - Click on the Create Migration button and select Supabase as your source. -
    4. -
    5. - Enter the credentials following the instructions below and click Next. -
    6. -
    7. - Select the resources you want to migrate and finally click Start migration to begin the migration process. -
    8. -
    - -

    Credentials

    - -
      -
    1. - Enter all the following credentials from your Supabase project. -
        -
      • - Region - The region your Supabase project is hosted in. This can be found in your Supabase project environment variables as Supabase_REGION. -
      • -
      • - Host - The host of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Host. -
      • -
      • - Port - The port of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Port. By default this is 5432. -
      • -
      • - Username - The username of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Username. -
      • -
      • - Password - The password of your Supabase Database, this was set when you created your Supabase project. If you forgot it you can reset it within your Database Settings -
      • -
      • - Endpoint - This is the endpoint of your Supabase instance under Project Settings -> API. This is used to migrate your files. -
      • -
      • - API Key - This is the key of your Supabase instance under Project Settings -> API. This is used to migrate your files. Make sure to use the hidden service_role key. -
      • -
      -
    2. -
    diff --git a/app/views/docs/migration-cloud-to-local.phtml b/app/views/docs/migrations-cloud-to-local.phtml similarity index 92% rename from app/views/docs/migration-cloud-to-local.phtml rename to app/views/docs/migrations-cloud-to-local.phtml index 3f601a2ec..801d93c0e 100644 --- a/app/views/docs/migration-cloud-to-local.phtml +++ b/app/views/docs/migrations-cloud-to-local.phtml @@ -11,10 +11,10 @@
  • Migrations are non-destructive. No data will be deleted or lost in the source project.
  • -

    Migrating to Self-hosted from Cloud

    +

    Migrating to Self-hosted from Cloud

    - To begin migrating to Appwrite Self-hosted, make sure to read the migration overview + To begin migrating to Appwrite Self-hosted, make sure to read the migrations overview and things to keep in mind sections above.

    diff --git a/app/views/docs/migration-firebase.phtml b/app/views/docs/migrations-firebase.phtml similarity index 87% rename from app/views/docs/migration-firebase.phtml rename to app/views/docs/migrations-firebase.phtml index 2d4951cc2..f8c236ea3 100644 --- a/app/views/docs/migration-firebase.phtml +++ b/app/views/docs/migrations-firebase.phtml @@ -8,10 +8,10 @@

    Things to keep in mind

      -
    1. Appwrite will not charge usage during migrations, but Firebase may still incur service charges.
    2. -
    3. Appwrite migrations only supports Firestore as a database source. Realtime Database is currently not supported.
    4. +
    5. Appwrite will not incur usage charges during migrations, but Firebase may still incur service charges.
    6. +
    7. Appwrite Migrations only supports Firestore as a database source. Realtime Database is currently not supported.
    8. At the moment only top level document migration is supported. Nested documents will not be transferred automatically.
    9. -
    10. OAuth users will not be transferred. You will need to re-authenticate with your OAuth provider after the migration is complete.
    11. +
    12. OAuth users will not be transferred. Users will need to re-authenticate with your OAuth provider after the migration is complete.

    Supported resource types

    @@ -40,7 +40,7 @@

    Migrating to Appwrite from Firebase

    - To begin migrating to Appwrite make sure to read the migration overview + To begin migrating to Appwrite make sure to read the migration overview and things to keep in mind sections above.

    diff --git a/app/views/docs/migration-local-to-cloud.phtml b/app/views/docs/migrations-local-to-cloud.phtml similarity index 97% rename from app/views/docs/migration-local-to-cloud.phtml rename to app/views/docs/migrations-local-to-cloud.phtml index e30783d4b..3e19aef74 100644 --- a/app/views/docs/migration-local-to-cloud.phtml +++ b/app/views/docs/migrations-local-to-cloud.phtml @@ -13,7 +13,7 @@

    Migrating to Self-hosted from Cloud

    - To begin migrating to self-hosted, make sure to read the migration overview + To begin migrating to self-hosted, make sure to read the migration overview and things to keep in mind sections above.

    diff --git a/app/views/docs/migration-nhost.phtml b/app/views/docs/migrations-nhost.phtml similarity index 56% rename from app/views/docs/migration-nhost.phtml rename to app/views/docs/migrations-nhost.phtml index a556de4a0..0d625eb67 100644 --- a/app/views/docs/migration-nhost.phtml +++ b/app/views/docs/migrations-nhost.phtml @@ -8,7 +8,7 @@

    Things to keep in mind

      -
    1. Appwrite will not charge usage during migrations, but NHost may still incur service charges.
    2. +
    3. Appwrite will not incur usage charges during migrations, but NHost may still incur service charges.
    4. Appwrite's Database doesn't support all the features of the postgreSQL database so more advanced postgres centric things things like advanced indexes, postgres functions and scheduling will not be migrated.
    5. OAuth users will not be transferred. You will need to re-authenticate with your OAuth provider after the migration is complete.
    @@ -39,7 +39,7 @@

    Migrating to Appwrite from NHost

    - To begin migrating to Appwrite make sure to read the migration overview + To begin migrating to Appwrite make sure to read the migration overview and things to keep in mind sections above.

    @@ -59,28 +59,26 @@

    NHost Credentials

    +

    +Enter all the following credentials from your NHost project. +

      -
    1. - Enter all the following credentials from your NHost project. -
        -
      • - Region - The region your NHost project is hosted in. This can be found in your NHost project environment variables as NHOST_REGION. -
      • -
      • - Subdomain - The subdomain of your NHost project. This can be found in your NHost project environment variables as NHOST_SUBDOMAIN. -
      • -
      • - Database - The name of your NHost database. This can be found in your NHost project Database settings. -
      • -
      • - Username - The username of your NHost database. This can be found in your NHost project Database settings. -
      • -
      • - Password - The password of your NHost database. You set this when you created your NHost project, if you don't remember it you can reset it from your NHost project Database settings. -
      • -
      • - Admin Secret - The admin secret of your NHost project. This can be found in your NHost project environment variables as NHOST_ADMIN_SECRET. We use this to transfer your NHost Files to Appwrite. -
      • -
      -
    2. +
    3. + Region - The region your NHost project is hosted in. This can be found in your NHost project environment variables as NHOST_REGION. +
    4. +
    5. + Subdomain - The subdomain of your NHost project. This can be found in your NHost project environment variables as NHOST_SUBDOMAIN. +
    6. +
    7. + Database - The name of your NHost database. This can be found in your NHost project Database settings. +
    8. +
    9. + Username - The username of your NHost database. This can be found in your NHost project Database settings. +
    10. +
    11. + Password - The password of your NHost database. You set this when you created your NHost project, if you don't remember it you can reset it from your NHost project Database settings. +
    12. +
    13. + Admin Secret - The admin secret of your NHost project. This can be found in your NHost project environment variables as NHOST_ADMIN_SECRET. We use this to transfer your NHost files to Appwrite. +
    \ No newline at end of file diff --git a/app/views/docs/migrations-supabase.phtml b/app/views/docs/migrations-supabase.phtml new file mode 100644 index 000000000..58036bc5e --- /dev/null +++ b/app/views/docs/migrations-supabase.phtml @@ -0,0 +1,88 @@ +

    + Moving your project from Supabase to Appwrite? + Appwrite Migrations can help you streamline the process. + + Here's what you need to know to get started. +

    + +

    Things to keep in mind

    + +
      +
    1. Appwrite will not incur usage charges during migrations, but Supabase may still incur service charges.
    2. +
    3. Appwrite's Databases services supports a different set of features as PostgreSQL. Some features like advanced indexes, Postgres functions and scheduling will not be migrated.
    4. +
    5. OAuth users will not be transferred. Users will need to re-authenticate with your OAuth provider after the migration is complete.
    6. +
    + +

    Supported resource types

    + + + + + + + + + + + + + + + + + + + + + +
    UsersDatabasesDocumentsFilesFunctions
    Supabase
    + +

    Migrating to Appwrite from Supabase

    +

    + To begin migrating to Appwrite make sure to read the migration overview + and things to keep in mind sections above. +

    + +
      +
    1. + Create a new project and click on the Migrations tab. +
    2. +
    3. + Click on the Create Migration button and select Supabase as your source. +
    4. +
    5. + Enter the credentials following the instructions below and click Next. +
    6. +
    7. + Select the resources you want to migrate and finally click Start migration to begin the migration process. +
    8. +
    + +

    Credentials

    + +

    Enter all the following credentials from your Supabase project.

    + +
      + +
    1. + Region - The region your Supabase project is hosted in. This can be found in your Supabase project environment variables as Supabase_REGION. +
    2. +
    3. + Host - The host of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Host. +
    4. +
    5. + Port - The port of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Port. By default this is 5432. +
    6. +
    7. + Username - The username of your Supabase Database, this can be found in your Supabase project settings under Database Settings and Username. +
    8. +
    9. + Password - The password of your Supabase Database, this was set when you created your Supabase project. If you forgot your password, you can reset it within Database Settings. +
    10. +
    11. + Endpoint - This is the endpoint of your Supabase instance under Project Settings > API. This is used to migrate your files. +
    12. +
    13. + API Key - This is the key of your Supabase instance under Project Settings > API. This is used to migrate your files. Make sure to use the hidden service_role key. +
    14. +
    diff --git a/app/views/docs/migration.phtml b/app/views/docs/migrations.phtml similarity index 52% rename from app/views/docs/migration.phtml rename to app/views/docs/migrations.phtml index 336689026..d15752efa 100644 --- a/app/views/docs/migration.phtml +++ b/app/views/docs/migrations.phtml @@ -1,6 +1,6 @@

    - Moving your app from another platform to Appwrite? - You can move your app from Firebase, Supabase, NHost, and even other Appwrite projects to another Appwrite project using Migrations. + Ready to migrate your project to Appwrite? + You can move your app from Firebase, Supabase, NHost, and even move between self-hosted and Cloud projects using Migrations. Migrations will automatically move accounts, database documents, and storage files from one source to another.

    @@ -26,7 +26,7 @@ Firebase -

    Migrate from Firebase

    +

    Migrate from Firebase

    @@ -37,7 +37,7 @@ Supabase -

    Migrate from Supabase

    +

    Migrate from Supabase

    @@ -48,7 +48,29 @@ NHost -

    Migrate from NHost

    +

    Migrate from NHost

    + + + + + [IMAGE] + + + Cloud to Self-host + + +

    Migrate from Appwrite Cloud to Self-hosted

    + + + + + [IMAGE] + + + Self-host to Cloud + + +

    Migrate from Self-hosted to Appwrite Cloud

    From 1819b3288c0aff003288fe4d2800b3af035f3a5d Mon Sep 17 00:00:00 2001 From: "Vincent (Wen Yu) Ge" Date: Tue, 15 Aug 2023 17:31:23 +0000 Subject: [PATCH 12/12] Fixed code tags in local to cloud page --- app/views/docs/migrations-local-to-cloud.phtml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/docs/migrations-local-to-cloud.phtml b/app/views/docs/migrations-local-to-cloud.phtml index 3e19aef74..5cfee4cb8 100644 --- a/app/views/docs/migrations-local-to-cloud.phtml +++ b/app/views/docs/migrations-local-to-cloud.phtml @@ -6,7 +6,7 @@

    Things to keep in mind

      -
    1. Data transferred by migrations will reset `$createdAt` and `$updatedAt` timestamps to the date of the migration.
    2. +
    3. Data transferred by migrations will reset $createdAt and $updatedAt timestamps to the date of the migration.
    4. Your self-hosted Appwrite project must be accessible from the internet for the migration to work.
    5. Migrations are non-destructive. No data will be deleted or lost in the source project.