From 79a2853984031a1faff3173ea6d11f300d723953 Mon Sep 17 00:00:00 2001
From: loks0n <22452787+loks0n@users.noreply.github.com>
Date: Tue, 2 Apr 2024 14:52:21 +0100
Subject: [PATCH 1/8] feat: new templates
---
src/lib/stores/marketplace.ts | 732 ++++++++++++++++++++++++++++++++++
1 file changed, 732 insertions(+)
diff --git a/src/lib/stores/marketplace.ts b/src/lib/stores/marketplace.ts
index 5e74be642..e7190d2a3 100644
--- a/src/lib/stores/marketplace.ts
+++ b/src/lib/stores/marketplace.ts
@@ -902,6 +902,738 @@ export const marketplace: MarketplaceTemplate[] = [
type: 'text'
}
]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'text-generation-with-huggingface',
+ name: 'Text generation',
+ tagline: 'Generate text using the Hugging Face inference API.',
+ permissions: ['any'],
+ events: [],
+ cron: '',
+ timeout: 30,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install',
+ 'src/main.js',
+ 'node/text-generation-with-huggingface'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'HUGGINGFACE_ACCESS_TOKEN',
+ description: `Secret for sending requests to the Hugging Face API. Learn more.`,
+ placeholder: 'hf_MUvn...',
+ required: true,
+ type: 'password'
+ }
+ ]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'language-translation-with-huggingface',
+ name: 'Language translation',
+ tagline: 'Translate text using the Hugging Face inference API.',
+ permissions: ['any'],
+ events: [],
+ cron: '',
+ timeout: 30,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install',
+ 'src/main.js',
+ 'node/language-translation-with-huggingface'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'HUGGINGFACE_ACCESS_TOKEN',
+ description: `Secret for sending requests to the Hugging Face API. Learn more.`,
+ placeholder: 'hf_MUvn...',
+ required: true,
+ type: 'password'
+ }
+ ]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'image-classification-with-huggingface',
+ name: 'Image classification',
+ tagline: 'Classify images using the Hugging Face inference API.',
+ permissions: ['any'],
+ events: ['buckets.*.files.*.create'],
+ cron: '',
+ timeout: 15,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install && npm run setup',
+ 'src/main.js',
+ 'node/image-classification-with-huggingface'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'APPWRITE_API_KEY',
+ description: `The API Key to authenticate against Appwrite's Server APIs. Learn more.`,
+ value: '',
+ placeholder: 'd1efb...aec35',
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'APPWRITE_ENDPOINT',
+ description: `The URL endpoint of the Appwrite server. Learn more.`,
+ value: 'https://cloud.appwrite.io/v1',
+ placeholder: 'https://cloud.appwrite.io/v1',
+ required: false,
+ type: 'url'
+ },
+ {
+ name: 'APPWRITE_DATABASE_ID',
+ description: `The ID of the database where the responses are stored. Learn more.`,
+ value: 'ai',
+ placeholder: 'ai',
+ required: false,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_COLLECTION_ID',
+ description: `The ID of the collection where the responses are stored. Learn more.`,
+ value: 'image_classification',
+ placeholder: 'image_classification',
+ required: false,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_BUCKET_ID',
+ description: `The ID of the bucket where the images are stored. Learn more.`,
+ value: 'image_classification',
+ placeholder: 'image_classification',
+ required: false,
+ type: 'text'
+ },
+ {
+ name: 'HUGGINGFACE_ACCESS_TOKEN',
+ description: `Secret for sending requests to the Hugging Face API. Learn more.`,
+ placeholder: 'hf_MUvn...',
+ required: true,
+ type: 'password'
+ }
+ ]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'object-detection-with-huggingface',
+ name: 'Object detection',
+ tagline: 'Detect objects in images using the Hugging Face inference API.',
+ permissions: ['any'],
+ events: ['buckets.*.files.*.create'],
+ cron: '',
+ timeout: 15,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install && npm run setup',
+ 'src/main.js',
+ 'node/object-detection-with-huggingface'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'APPWRITE_API_KEY',
+ description: `The API Key to authenticate against Appwrite's server APIs. Learn more.`,
+ value: '',
+ placeholder: 'd1efb...aec35',
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'APPWRITE_ENDPOINT',
+ description: `The URL endpoint of the Appwrite server. Learn more.`,
+ value: 'https://cloud.appwrite.io/v1',
+ placeholder: 'https://cloud.appwrite.io/v1',
+ required: false,
+ type: 'url'
+ },
+ {
+ name: 'APPWRITE_DATABASE_ID',
+ description: `The ID of the database where the responses are stored. Learn more.`,
+ value: 'ai',
+ placeholder: 'ai',
+ required: false,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_COLLECTION_ID',
+ description: `The ID of the collection where the responses are stored. Learn more.`,
+ value: 'object_detection',
+ placeholder: 'object_detection',
+ required: false,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_BUCKET_ID',
+ description: `The ID of the bucket where the images are stored. Learn more.`,
+ value: 'object_detection',
+ placeholder: 'object_detection',
+ required: false,
+ type: 'text'
+ },
+ {
+ name: 'HUGGINGFACE_ACCESS_TOKEN',
+ description: `Secret for sending requests to the Hugging Face API. Learn more.`,
+ placeholder: 'hf_MUvn...',
+ required: true,
+ type: 'password'
+ }
+ ]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'speech-recognition-with-huggingface',
+ name: 'Speech recognition',
+ tagline: 'Transcribe audio to text using the Hugging Face inference API.',
+ permissions: ['any'],
+ events: ['buckets.*.files.*.create'],
+ cron: '',
+ timeout: 15,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install && npm run setup',
+ 'src/main.js',
+ 'node/speech-recognition-with-huggingface'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'APPWRITE_API_KEY',
+ description: `The API Key to authenticate against Appwrite's server APIs. Learn more.`,
+ value: '',
+ placeholder: 'd1efb...aec35',
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'APPWRITE_ENDPOINT',
+ description: `The URL endpoint of the Appwrite server. Learn more.`,
+ value: 'https://cloud.appwrite.io/v1',
+ placeholder: 'https://cloud.appwrite.io/v1',
+ required: false,
+ type: 'url'
+ },
+ {
+ name: 'APPWRITE_DATABASE_ID',
+ description: `The ID of the database where the responses are stored. Learn more.`,
+ value: 'ai',
+ placeholder: 'ai',
+ required: false,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_COLLECTION_ID',
+ description: `The ID of the collection where the responses are stored. Learn more.`,
+ value: 'speech_recognition',
+ placeholder: 'speech_recognition',
+ required: false,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_BUCKET_ID',
+ description: `The ID of the bucket where audio is stored. Learn more.`,
+ value: 'speech_recognition',
+ placeholder: 'speech_recognition',
+ required: false,
+ type: 'text'
+ },
+ {
+ name: 'HUGGINGFACE_ACCESS_TOKEN',
+ description: `Secret for sending requests to the Hugging Face API. Learn more.`,
+ placeholder: 'hf_MUvn...',
+ required: true,
+ type: 'password'
+ }
+ ]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'text-to-speech-with-huggingface',
+ name: 'Text to speech',
+ tagline: 'Convert text to speech using the Hugging Face inference API.',
+ permissions: ['any'],
+ events: ['databases.*.collections.*.documents.*.create'],
+ cron: '',
+ timeout: 15,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install && npm run setup',
+ 'src/main.js',
+ 'node/text-to-speech-with-huggingface'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'APPWRITE_API_KEY',
+ description: `The API Key to authenticate against Appwrite's server APIs. Learn more.`,
+ value: '',
+ placeholder: 'd1efb...aec35',
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'APPWRITE_ENDPOINT',
+ description: `The URL endpoint of the Appwrite server. Learn more.`,
+ value: 'https://cloud.appwrite.io/v1',
+ placeholder: 'https://cloud.appwrite.io/v1',
+ required: false,
+ type: 'url'
+ },
+ {
+ name: 'APPWRITE_DATABASE_ID',
+ description: `The ID of the database where the responses are stored. Learn more.`,
+ value: 'ai',
+ placeholder: 'ai',
+ required: false,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_COLLECTION_ID',
+ description: `The ID of the collection where the responses are stored. Learn more.`,
+ value: 'speech_recognition',
+ placeholder: 'speech_recognition',
+ required: false,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_BUCKET_ID',
+ description: `The ID of the bucket where audio is stored. Learn more.`,
+ value: 'speech_recognition',
+ placeholder: 'speech_recognition',
+ required: false,
+ type: 'text'
+ },
+ {
+ name: 'HUGGINGFACE_ACCESS_TOKEN',
+ description: `Secret for sending requests to the Hugging Face API. Learn more.`,
+ placeholder: 'hf_MUvn...',
+ required: true,
+ type: 'password'
+ }
+ ]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'chat-with-perplexity-ai',
+ name: 'Chat with Perplexity AI',
+ tagline: 'Create a chatbot using the Perplexity AI API.',
+ permissions: ['any'],
+ events: [],
+ cron: '',
+ timeout: 15,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install',
+ 'src/main.js',
+ 'node/chat-with-perplexity-ai'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'PERPLEXITY_API_KEY',
+ description: `A unique key used to authenticate with the Perplexity API. Learn more.`,
+ placeholder: `pplex-68...999`,
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'PERPLEXITY_MAX_TOKENS',
+ description: `The maximum number of tokens to generate. Learn more.`,
+ placeholder: `512`,
+ required: false,
+ type: 'number'
+ }
+ ]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'generate-with-replicate',
+ name: 'Generate with Replicate',
+ tagline: "Generate text, audio and images using Replicate's API.",
+ permissions: ['any'],
+ events: [],
+ cron: '',
+ timeout: 300,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install',
+ 'src/main.js',
+ 'node/generate-with-replicate'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'REPLICATE_API_KEY',
+ description: `A unique key used to authenticate with the Replicate API. Learn more.`,
+ value: '',
+ placeholder: 'd1efb...aec35',
+ required: true,
+ type: 'password'
+ }
+ ]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'chat-with-perplexity-ai',
+ name: 'Chat with Perplexity AI',
+ tagline: 'Create a chatbot using the Perplexity AI API.',
+ permissions: ['any'],
+ events: [],
+ cron: '',
+ timeout: 15,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install',
+ 'src/main.js',
+ 'node/chat-with-perplexity-ai'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'PERPLEXITY_API_KEY',
+ description: `A unique key used to authenticate with the Perplexity API. Learn more.`,
+ placeholder: `pplex-68...999`,
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'PERPLEXITY_MAX_TOKENS',
+ description: `The maximum number of tokens to generate. Learn more.`,
+ placeholder: `512`,
+ required: false,
+ type: 'number'
+ }
+ ]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'generate-with-replicate',
+ name: 'Generate with Replicate',
+ tagline: "Generate text, audio and images using Replicate's API.",
+ permissions: ['any'],
+ events: [],
+ cron: '',
+ timeout: 300,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install',
+ 'src/main.js',
+ 'node/generate-with-replicate'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'REPLICATE_API_KEY',
+ description: `A unique key used to authenticate with the Replicate API. Learn more.`,
+ value: '',
+ placeholder: 'd1efb...aec35',
+ required: true,
+ type: 'password'
+ }
+ ]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'sync-with-pinecone',
+ name: 'Sync with Pinecone',
+ tagline: "Sync your Appwrite database with Pinecone's vector database.",
+ permissions: ['any'],
+ events: [],
+ cron: '',
+ timeout: 30,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install',
+ 'src/main.js',
+ 'node/sync-with-pinecone'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'OPENAI_API_KEY',
+ description: `A unique key used to authenticate with the OpenAI API. This is a paid service and you will be charged for each request made to the API. Learn more.`,
+ value: '',
+ placeholder: 'sk-wzG...vcy',
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'PINECONE_API_KEY',
+ description: `A unique key used to authenticate with the Pinecone API. Learn more.`,
+ placeholder: 'd1efb...aec35',
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'PINECONE_INDEX_NAME',
+ description: `The name of the index in Pinecone. Learn more.`,
+ placeholder: 'my-index',
+ required: true,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_API_KEY',
+ description: `The API Key to authenticate against Appwrite's server APIs. Learn more.`,
+ value: '',
+ placeholder: 'd1efb...aec35',
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'APPWRITE_ENDPOINT',
+ description: `The URL endpoint of the Appwrite server. Learn more.`,
+ value: 'https://cloud.appwrite.io/v1',
+ placeholder: 'https://cloud.appwrite.io/v1',
+ required: false,
+ type: 'url'
+ },
+ {
+ name: 'APPWRITE_DATABASE_ID',
+ description: `The ID of the database where the documents are stored. Learn more.`,
+ placeholder: 'my-database',
+ required: true,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_COLLECTION_ID',
+ description: `The ID of the collection where the documents are stored. Learn more.`,
+ placeholder: 'my-collection',
+ required: true,
+ type: 'text'
+ }
+ ]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'rag-with-langchain',
+ name: 'RAG with LangChain',
+ tagline: 'Generate text using a LangChain RAG model',
+ permissions: ['any'],
+ events: [],
+ cron: '',
+ timeout: 30,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install',
+ 'src/main.js',
+ 'node/rag-with-langchain'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'OPENAI_API_KEY',
+ description: `A unique key used to authenticate with the OpenAI API. This is a paid service and you will be charged for each request made to the API. Learn more.`,
+ value: '',
+ placeholder: 'sk-wzG...vcy',
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'PINECONE_API_KEY',
+ description: `A unique key used to authenticate with the Pinecone API. Learn more.`,
+ placeholder: 'd1efb...aec35',
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'PINECONE_INDEX_NAME',
+ description: `The name of the index in Pinecone. Learn more.`,
+ placeholder: 'my-index',
+ required: true,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_API_KEY',
+ description: `The API Key to authenticate against Appwrite's server APIs. Learn more.`,
+ value: '',
+ placeholder: 'd1efb...aec35',
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'APPWRITE_ENDPOINT',
+ description: `The URL endpoint of the Appwrite server. Learn more.`,
+ value: 'https://cloud.appwrite.io/v1',
+ placeholder: 'https://cloud.appwrite.io/v1',
+ required: false,
+ type: 'url'
+ },
+ {
+ name: 'APPWRITE_DATABASE_ID',
+ description: `The ID of the database where the documents are stored. Learn more.`,
+ placeholder: 'my-database',
+ required: true,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_COLLECTION_ID',
+ description: `The ID of the collection where the documents are stored. Learn more.`,
+ placeholder: 'my-collection',
+ required: true,
+ type: 'text'
+ }
+ ]
+ },
+ {
+ icon: 'icon-chip',
+ id: 'speak-with-elevenlabs',
+ name: 'Speak with ElevenLabs',
+ tagline: 'Convert text to speech using the ElevenLabs API.',
+ permissions: ['any'],
+ cron: '',
+ events: [],
+ timeout: 15,
+ usecases: ['AI'],
+ runtimes: [
+ ...getRuntimes(
+ TemplateRuntimes.NODE,
+ 'npm install',
+ 'src/main.js',
+ 'node/speak-with-elevenlabs'
+ )
+ ],
+ instructions: `For documentation and instructions check out file.`,
+ vcsProvider: 'github',
+ providerRepositoryId: 'templates',
+ providerOwner: 'appwrite',
+ providerBranch: 'main',
+ variables: [
+ {
+ name: 'ELEVENLABS_API_KEY',
+ description: `A unique key used to authenticate with the ElevenLabs API. Learn more.`,
+ placeholder: 'd03xxxxxxxx26',
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'APPWRITE_API_KEY',
+ description: `The API Key to authenticate against Appwrite's server APIs. Learn more.`,
+ value: '',
+ placeholder: 'd1efb...aec35',
+ required: true,
+ type: 'password'
+ },
+ {
+ name: 'APPWRITE_ENDPOINT',
+ description: `The URL endpoint of the Appwrite server. Learn more.`,
+ value: 'https://cloud.appwrite.io/v1',
+ placeholder: 'https://cloud.appwrite.io/v1',
+ required: false,
+ type: 'url'
+ },
+ {
+ name: 'APPWRITE_DATABASE_ID',
+ description: `The ID of the database where the responses are stored. Learn more.`,
+ placeholder: 'my-database',
+ required: true,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_COLLECTION_ID',
+ description: `The ID of the collection where the responses are stored. Learn more.`,
+ placeholder: 'my-collection',
+ required: true,
+ type: 'text'
+ },
+ {
+ name: 'APPWRITE_BUCKET_ID',
+ description: `The ID of the bucket where audio is stored. Learn more.`,
+ placeholder: 'generated_speech',
+ required: true,
+ type: 'text'
+ }
+ ]
}
];
From ec6a93cdc3e709d0a4612e5a437b7b5e7c4c9891 Mon Sep 17 00:00:00 2001
From: loks0n <22452787+loks0n@users.noreply.github.com>
Date: Tue, 2 Apr 2024 15:27:11 +0100
Subject: [PATCH 2/8] chore: remove duplicate perplexity
---
src/lib/stores/marketplace.ts | 40 -----------------------------------
1 file changed, 40 deletions(-)
diff --git a/src/lib/stores/marketplace.ts b/src/lib/stores/marketplace.ts
index e7190d2a3..02484e498 100644
--- a/src/lib/stores/marketplace.ts
+++ b/src/lib/stores/marketplace.ts
@@ -1261,46 +1261,6 @@ export const marketplace: MarketplaceTemplate[] = [
}
]
},
- {
- icon: 'icon-chip',
- id: 'chat-with-perplexity-ai',
- name: 'Chat with Perplexity AI',
- tagline: 'Create a chatbot using the Perplexity AI API.',
- permissions: ['any'],
- events: [],
- cron: '',
- timeout: 15,
- usecases: ['AI'],
- runtimes: [
- ...getRuntimes(
- TemplateRuntimes.NODE,
- 'npm install',
- 'src/main.js',
- 'node/chat-with-perplexity-ai'
- )
- ],
- instructions: `For documentation and instructions check out file.`,
- vcsProvider: 'github',
- providerRepositoryId: 'templates',
- providerOwner: 'appwrite',
- providerBranch: 'main',
- variables: [
- {
- name: 'PERPLEXITY_API_KEY',
- description: `A unique key used to authenticate with the Perplexity API. Learn more.`,
- placeholder: `pplex-68...999`,
- required: true,
- type: 'password'
- },
- {
- name: 'PERPLEXITY_MAX_TOKENS',
- description: `The maximum number of tokens to generate. Learn more.`,
- placeholder: `512`,
- required: false,
- type: 'number'
- }
- ]
- },
{
icon: 'icon-chip',
id: 'generate-with-replicate',
From b3b42ee512fd89c7b5240eae1ea8f130737a564c Mon Sep 17 00:00:00 2001
From: Arman
Date: Wed, 3 Apr 2024 14:03:13 +0200
Subject: [PATCH 3/8] feat: add downgrade alerts
---
.../confirmDetails.svelte | 26 +++++++++++++++----
1 file changed, 21 insertions(+), 5 deletions(-)
diff --git a/src/routes/console/wizard/cloudOrganizationChangeTier/confirmDetails.svelte b/src/routes/console/wizard/cloudOrganizationChangeTier/confirmDetails.svelte
index a67c5086e..b89bc897c 100644
--- a/src/routes/console/wizard/cloudOrganizationChangeTier/confirmDetails.svelte
+++ b/src/routes/console/wizard/cloudOrganizationChangeTier/confirmDetails.svelte
@@ -1,5 +1,5 @@