diff --git a/src/lib/stores/marketplace.ts b/src/lib/stores/marketplace.ts
index 5c95eb771a..f4b8cb55b5 100644
--- a/src/lib/stores/marketplace.ts
+++ b/src/lib/stores/marketplace.ts
@@ -12,34 +12,40 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['Starter'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/starter'
},
{
- name: 'php-8.0',
+ name: 'php',
commands: 'composer install',
entrypoint: 'src/index.php',
providerRootDirectory: 'php/starter'
},
{
- name: 'ruby-3.0',
+ name: 'ruby',
commands: 'bundle install',
entrypoint: 'lib/main.rb',
providerRootDirectory: 'ruby/starter'
},
{
- name: 'python-3.9',
+ name: 'python',
commands: 'pip install -r requirements.txt',
entrypoint: 'src/main.py',
providerRootDirectory: 'python/starter'
},
{
- name: 'dart-2.17',
+ name: 'dart',
commands: 'dart pub get',
entrypoint: 'lib/main.dart',
providerRootDirectory: 'dart/starter'
+ },
+ {
+ name: 'bun',
+ commands: 'bun install',
+ entrypoint: 'src/main.ts',
+ providerRootDirectory: 'bun/starter'
}
],
instructions: `For documentation and instructions check out file.`,
@@ -70,25 +76,25 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['AI'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/prompt-chatgpt'
},
{
- name: 'python-3.9',
+ name: 'python',
commands: 'pip install -r requirements.txt',
entrypoint: 'src/main.py',
providerRootDirectory: 'python/prompt_chatgpt'
},
{
- name: 'php-8.0',
+ name: 'php',
commands: 'composer install',
entrypoint: 'src/index.php',
providerRootDirectory: 'php/prompt-chatgpt'
},
{
- name: 'dart-2.17',
+ name: 'dart',
commands: 'dart pub get',
entrypoint: 'lib/main.dart',
providerRootDirectory: 'dart/prompt_chatgpt'
@@ -130,13 +136,13 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['Messaging'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install && npm run setup',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/discord-command-bot'
},
{
- name: 'python-3.9',
+ name: 'python',
commands: 'pip install -r requirements.txt && python src/setup.py',
entrypoint: 'src/main.py',
providerRootDirectory: 'python/discord_command_bot'
@@ -186,7 +192,7 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['AI'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/analyze-with-perspectiveapi'
@@ -221,19 +227,19 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['AI'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/censor-with-redact'
},
{
- name: 'python-3.9',
+ name: 'python',
commands: 'pip install -r requirements.txt',
entrypoint: 'src/main.py',
providerRootDirectory: 'python/censor_with_redact'
},
{
- name: 'dart-2.17',
+ name: 'dart',
commands: 'dart pub get',
entrypoint: 'lib/main.dart',
providerRootDirectory: 'dart/censor_with_redact'
@@ -267,7 +273,7 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['Utilities'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/generate-pdf'
@@ -293,7 +299,7 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['Dev Tools'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/github-issue-bot'
@@ -335,7 +341,7 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['Utilities'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/url-shortener'
@@ -401,19 +407,19 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['Databases'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/sync-with-algolia'
},
{
- name: 'python-3.9',
+ name: 'python',
commands: 'pip install -r requirements.txt',
entrypoint: 'src/main.py',
providerRootDirectory: 'python/sync_with_algolia'
},
{
- name: 'php-8.0',
+ name: 'php',
commands: 'composer install',
entrypoint: 'src/index.php',
providerRootDirectory: 'php/sync-with-algolia'
@@ -490,7 +496,7 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['Databases'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/sync-with-meilisearch'
@@ -574,7 +580,7 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['Messaging'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/whatsapp-with-vonage'
@@ -629,7 +635,7 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['Messaging'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/push-notification-with-fcm'
@@ -684,19 +690,19 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['Utilities'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/email-contact-form'
},
{
- name: 'python-3.9',
+ name: 'python',
commands: 'pip install -r requirements.txt',
entrypoint: 'src/main.py',
providerRootDirectory: 'python/email_contact_form'
},
{
- name: 'php-8.0',
+ name: 'php',
commands: 'composer install',
entrypoint: 'src/index.php',
providerRootDirectory: 'php/email-contact-form'
@@ -766,7 +772,7 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['Utilities'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/subscriptions-with-stripe'
@@ -822,7 +828,7 @@ export const marketplace: MarketplaceTemplate[] = [
usecases: ['Utilities'],
runtimes: [
{
- name: 'node-18.0',
+ name: 'node',
commands: 'npm install && npm run setup',
entrypoint: 'src/main.js',
providerRootDirectory: 'node/payments-with-stripe'
@@ -932,7 +938,7 @@ Template:
"timeout": 15,
"runtimes": [
{
- "name": "node-18",
+ "name": "node",
"entrypoint": "src/main.js",
"commands": "npm install"
}
diff --git a/src/lib/wizards/functions/cover.svelte b/src/lib/wizards/functions/cover.svelte
index 189ed47d27..d84ee5b650 100644
--- a/src/lib/wizards/functions/cover.svelte
+++ b/src/lib/wizards/functions/cover.svelte
@@ -1,21 +1,21 @@
@@ -54,7 +60,6 @@
();
export const templateConfig = writable<{
$id: string;
name: string;
+ language: string;
runtime: string;
variables: { [key: string]: unknown };
repositoryBehaviour: 'new' | 'existing';
diff --git a/src/routes/console/project-[project]/functions/templates/+page.svelte b/src/routes/console/project-[project]/functions/templates/+page.svelte
index 3e6c37fb44..fc9fdfcb0b 100644
--- a/src/routes/console/project-[project]/functions/templates/+page.svelte
+++ b/src/routes/console/project-[project]/functions/templates/+page.svelte
@@ -13,7 +13,6 @@
} from '$lib/components';
import { Button, InputSearch } from '$lib/elements/forms';
import { Container } from '$lib/layout';
- import { app } from '$lib/stores/app';
import { connectTemplate } from '$lib/wizards/functions/cover.svelte';
export let data;
@@ -39,23 +38,6 @@
goto(target.toString());
}
- function getIconFromRuntime(runtime: string) {
- switch (true) {
- case runtime.includes('node'):
- return 'node';
- case runtime.includes('php'):
- return 'php';
- case runtime.includes('ruby'):
- return 'ruby';
- case runtime.includes('python'):
- return 'python';
- case runtime.includes('dart'):
- return 'dart';
- default:
- return undefined;
- }
- }
-
function applySearch(event: CustomEvent) {
const value = event.detail;
const target = new URL($page.url);
@@ -108,7 +90,6 @@
Runtime
- {#if data.templates.length > 0}
+ {#if data?.templates?.length}
{#each data.templates as template}
{@const displayed = template.runtimes.slice(0, 2)}
- {@const hidden = template.runtimes.slice(1, -1)}
+ {@const hidden = template.runtimes.slice(2)}
-
@@ -161,16 +143,12 @@
{#each displayed as runtime}
- {@const icon = getIconFromRuntime(runtime.name)}
- {#if icon}
+ {#if runtime.name}
-
-

+
{/if}
diff --git a/src/routes/console/project-[project]/functions/templates/template-[template]/+page.svelte b/src/routes/console/project-[project]/functions/templates/template-[template]/+page.svelte
index 7a8809820b..78a6fa9bda 100644
--- a/src/routes/console/project-[project]/functions/templates/template-[template]/+page.svelte
+++ b/src/routes/console/project-[project]/functions/templates/template-[template]/+page.svelte
@@ -52,7 +52,7 @@
diff --git a/src/routes/console/project-[project]/settings/smtp/+page.svelte b/src/routes/console/project-[project]/settings/smtp/+page.svelte
index cfe276fa43..b8254129c6 100644
--- a/src/routes/console/project-[project]/settings/smtp/+page.svelte
+++ b/src/routes/console/project-[project]/settings/smtp/+page.svelte
@@ -46,7 +46,7 @@
async function updateSmtp() {
try {
if (!enabled) {
- enabled = undefined;
+ enabled = false;
senderName = undefined;
senderEmail = undefined;
replyTo = undefined;
diff --git a/static/icons/dark/color/bun.svg b/static/icons/dark/color/bun.svg
new file mode 100644
index 0000000000..7ef15001d2
--- /dev/null
+++ b/static/icons/dark/color/bun.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/static/icons/light/color/bun.svg b/static/icons/light/color/bun.svg
new file mode 100644
index 0000000000..7ef15001d2
--- /dev/null
+++ b/static/icons/light/color/bun.svg
@@ -0,0 +1 @@
+
\ No newline at end of file