diff --git a/packages/builder/package.json b/packages/builder/package.json
index 33a3e55b6a..61a4dfa1f5 100644
--- a/packages/builder/package.json
+++ b/packages/builder/package.json
@@ -55,11 +55,12 @@
]
},
"dependencies": {
- "@budibase/bbui": "^1.17.0",
+ "@budibase/bbui": "^1.18.0",
"@budibase/client": "^0.1.1",
"@budibase/colorpicker": "^1.0.1",
"@nx-js/compiler-util": "^2.0.0",
"@sentry/browser": "5.19.1",
+ "@svelteschool/svelte-forms": "^0.7.0",
"codemirror": "^5.51.0",
"date-fns": "^1.29.0",
"deepmerge": "^4.2.2",
@@ -74,7 +75,8 @@
"string_decoder": "^1.2.0",
"svelte-portal": "^0.1.0",
"svelte-simple-modal": "^0.4.2",
- "uikit": "^3.1.7"
+ "uikit": "^3.1.7",
+ "yup": "^0.29.2"
},
"devDependencies": {
"@babel/core": "^7.5.5",
diff --git a/packages/builder/src/components/start/CreateAppModal.svelte b/packages/builder/src/components/start/CreateAppModal.svelte
index 20fbaba402..cb97209b28 100644
--- a/packages/builder/src/components/start/CreateAppModal.svelte
+++ b/packages/builder/src/components/start/CreateAppModal.svelte
@@ -1,4 +1,14 @@
+
+
@@ -88,38 +175,41 @@
-
(name = e.target.value)}
- on:input={e => (name = e.target.value)} />
-
- {#if error.description}
-
- Please enter a short description of your application
-
- {/if}
+
- {#if loading}
+ {#if submitting}
Creating your app...
@@ -129,6 +219,7 @@
diff --git a/packages/builder/src/components/start/Steps/API.svelte b/packages/builder/src/components/start/Steps/API.svelte
index e69de29bb2..5f7a6d71f8 100644
--- a/packages/builder/src/components/start/Steps/API.svelte
+++ b/packages/builder/src/components/start/Steps/API.svelte
@@ -0,0 +1,25 @@
+
+
+
Setup your API Key
+
+
(blurred.api = true)}
+ label="API Key"
+ name="apiKey"
+ placeholder="Enter your API Key"
+ type="password"
+ error={blurred.api && validationErrors.apiKey} />
+
Get API Key
+
+
+
diff --git a/packages/builder/src/components/start/Steps/Info.svelte b/packages/builder/src/components/start/Steps/Info.svelte
index e69de29bb2..25dcf39be8 100644
--- a/packages/builder/src/components/start/Steps/Info.svelte
+++ b/packages/builder/src/components/start/Steps/Info.svelte
@@ -0,0 +1,24 @@
+
+
+
Create your first web app
+
+ (blurred.appName = true)}
+ label="Web app name"
+ name="applicationName"
+ placeholder="Enter name of your web application"
+ type="name"
+ error={blurred.appName && validationErrors.applicationName} />
+
+
+
diff --git a/packages/builder/src/components/start/Steps/User.svelte b/packages/builder/src/components/start/Steps/User.svelte
index e69de29bb2..acbfbbe7cc 100644
--- a/packages/builder/src/components/start/Steps/User.svelte
+++ b/packages/builder/src/components/start/Steps/User.svelte
@@ -0,0 +1,35 @@
+
+
+
Create new user
+
+ (blurred.username = true)}
+ label="Username"
+ name="username"
+ placeholder="Username"
+ type="name"
+ error={blurred.username && validationErrors.username} />
+ (blurred.password = true)}
+ label="Password"
+ name="password"
+ placeholder="Password"
+ type="pasword"
+ error={blurred.password && validationErrors.password} />
+
+
+
+
diff --git a/packages/builder/src/pages/index.svelte b/packages/builder/src/pages/index.svelte
index b0cd341c2d..5058d9e74b 100644
--- a/packages/builder/src/pages/index.svelte
+++ b/packages/builder/src/pages/index.svelte
@@ -1,6 +1,7 @@