Skip to content

Commit

Permalink
DocsUpdate-958: App Platform - Getting Started Docs
Browse files Browse the repository at this point in the history
  • Loading branch information
NovaBran authored and gitbook-bot committed Oct 15, 2024
1 parent 748e87f commit 2c734b2
Show file tree
Hide file tree
Showing 6 changed files with 440 additions and 1 deletion.
7 changes: 6 additions & 1 deletion SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -312,7 +312,7 @@
* [Custom Integrations](documentation/integrations/other/custom-integrations/README.md)
* [Custom Integrations (v2)](documentation/integrations/custom-integrations/custom-integrations-v2.md)
* [Custom Integrations (v1)](documentation/integrations/other/custom-integrations/integration-setup.md)
* [App Platform (Coming Soon!)](documentation/app-platform-coming-soon/README.md)
* [App Builder](documentation/app-platform-coming-soon/README.md)
* [General](documentation/app-platform-coming-soon/getting-started/README.md)
* [Glossary](documentation/app-platform-coming-soon/getting-started/glossary.md)
* [Manage your apps](documentation/app-platform-coming-soon/getting-started/manage-your-apps.md)
Expand Down Expand Up @@ -341,6 +341,11 @@
* [Text](documentation/app-platform-coming-soon/components/text.md)
* [Time Saved](documentation/app-platform-coming-soon/components/time-saved.md)
* [Workflow Input](documentation/app-platform-coming-soon/components/workflow-input.md)
* [Getting Started](documentation/app-platform-coming-soon/getting-started-1/README.md)
* [Create your first App](documentation/app-platform-coming-soon/getting-started-1/create-your-first-app.md)
* [Add your first page](documentation/app-platform-coming-soon/getting-started-1/add-your-first-page.md)
* [Create a Workflow to utilise in your App](documentation/app-platform-coming-soon/getting-started-1/create-a-workflow-to-utilise-in-your-app.md)
* [Use in-built App components](documentation/app-platform-coming-soon/getting-started-1/use-in-built-app-components.md)

## 📦 Prebuilt Automations

Expand Down
32 changes: 32 additions & 0 deletions documentation/app-platform-coming-soon/getting-started-1/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Getting Started

#### Welcome to the App Builder Getting Started Guide!

Welcome, and congratulations on taking the first step toward building your first app on the App Builder platform! In this guide, we will walk you through creating your very first App, starting with a simple "Hello World" project. As we progress, you'll learn how to build powerful workflows, design user-friendly pages, and leverage the platform's in-built components to create your app without needing extensive coding experience.

**Why App Builder?**

Whether you're streamlining internal processes, enhancing user experiences, or developing entirely new services, App Builder enables you to create Apps with minimal effort and maximum flexibility.

With the App Builder platform, you can:

* Create Apps with ease, using drag-and-drop interfaces and pre-built components.
* Utilise Rewst workflows and Jinja with a beautiful branded frontend that can be used by your techs and end users alike.
* Design modern, stylised pages with built-in tools, eventually expanding to full CSS customisation for a professional, polished finish.

**What We'll Accomplish**

In this guide, we’ll focus on:

1. **Creating Your First App**: A simple "Hello World" to introduce the basics.
2. **Building Your First Page**: Learn how to add structure to your app.
3. **Designing a Workflow**: See how workflows bring your app to life.
4. **Utilising Built-in Components**: Make your app functional with ready-made building blocks.

As we move through these steps, we’ll gradually evolve our project into a fully-functional Forms Portal—a complete system that your users can interact with. Later on, we’ll add CSS styling to ensure that your app not only works well but also looks great.

**What’s Next?**

We’ll start with the basics to get you comfortable with the platform. You’ll soon see how easy it is to build and scale your Apps. Each section of this guide will build on the last, taking you from a simple "Hello World" to a professional, end-user-friendly portal.

Let’s dive in and start building your first app!
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Add your first page

***

## Hello World - Create your first page

***

#### 1. Navigate to the newly created App

You'll see two default pages that we create for every App, `home` and `login` - you can customise both of these pages....later!

![](https://dubble-prod-01.s3.amazonaws.com/assets/44e2a190-9953-4bb3-955f-dc9972ca0b26.png?0)

#### 2. Click on Create New Page

The bottom pane will consist of all non-default pages

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/25b8296b-6208-4786-bb7f-466e46ea356d/2.5/13.449777841267/70.063724201871?0)

#### 3. Choose a name

Give your page a name - remember that we'll create the url slug based off this name

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/b63ce97a-76be-4959-9f9e-eb2b935b7482/2.5/50.000998010752/39.227590253276?0)

#### 4. Choose a Page Preset

To make it easier to create pages, we give you some default templates to use for your new page. For now, go ahead and just choose `Blank`

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/9511d12d-a1e1-40c7-bba0-c25f056fd386/2.5/61.225201453217/56.654002381701?0)

> #### 💡 Experiment
>
> Curious what the other pages look like? Experiment by creating new pages with each preset to have a look!
#### 5. Click on Create

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/22d3965b-6878-4c96-ac63-bc0fc13f3745/2.5/61.267112292578/65.413914874209?0)

#### 6. Click on the arrow

Once the page has been created, you can navigate to that page's builder by clicking the arrow under the `Actions` column

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/7ee60483-3e3d-41a4-a35a-f5fb638c9337/2.5/93.141374912719/79.173926342646?0)
Original file line number Diff line number Diff line change
@@ -0,0 +1,201 @@
# Create a Workflow to utilise in your App



***

## Hello World - Workflow Creation

***

> #### 💡 The Power
>
> One of the most powerful aspects of Apps in Rewst, is that the data within can all be made dynamic by utilising Workflows and Jinja as the backend. If you have no idea what these are, make sure you go run through the Cluck U - Foundation series to get a basic understanding. When you come back, we'll make a simple workflow that utilises Rewst's API!
#### 1. Navigate to the Rewst Platform

Start pretty simply, load up the Rewst platform and you'll see the dashboard

![](https://dubble-prod-01.s3.amazonaws.com/assets/dcc929bc-97c5-4ff6-b6ed-d40d0e1fbbb8.png?0)

#### 2. Click on Automations

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/0adf19da-6d60-4920-88a9-efbb00adc44f/2.5/2.2693606773912/13.073701201674?0)

#### 3. Click on Workflows

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/495649de-c084-40ee-be46-a6a15e6d2128/2.5/3.3577532966681/23.011634780099?0)

#### 4. Click on Create

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/9292ed8b-8158-48ef-8d3f-b25f42e550db/2.5/92.548384712543/16.061567657391?0)

#### 5. Give the workflow a name

Give the workflow a name, something that you'll understand. You can also give it a tag, which we recommend doing to ensure your workflows are grouped together.

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/6f6620ef-ba27-4c8d-b6da-8f51083e060b/2.5/50.000998652147/42.015659694788?0)

#### 6. The Start

We'll start by creating a noop action, which is an action that does nothing.

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/2ac4dd18-cac3-4a4c-a527-35c068a80bb3/1/65.506212347543/52.570494674244?0)

#### 7. Click on the noop, then the pencil on the right hand menu

Change the name of the action to BEGIN, which allows other users reviewing the workflow to clearly identify the "top" of a workflow.

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/ee8a294e-6809-43da-95b6-f522fcd5629a/2.5/69.357908328274/6.7974073947152?0)

#### 8. List Forms with Granular Permissions

Next, grab the "List Forms with Granular Permissions" action, which you caan search for. This action is a prebuilt Rewst action that utilises our GraphQL backend to return the requested data.

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/14a011bf-8ffa-4324-93f0-a769c5c03596/2.5/5.5676903229594/18.878180479733?0)

#### 9. Connect the BEGIN > list\_forms action

Connect the two actions together from BEGIN > the new action

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/6e4bc9ce-a86e-4644-9553-ef32aafa9d58/1/65.506212347543/52.570494674244?0)

#### 10. Publish Result

In the new action, add `all_available_forms` as the Publish Results As variable name. This ensures that the output of the action gets added to this variable.

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/69d53102-8ba4-4d7e-93da-ec61c194a1c1/2.4153988716738/98.657144463929/38.955140384052?0)

#### 11. Code Editor

Under the params on the action, click the "Edit Code" icon highlighted in the image below

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/d5b46956-d1ea-4213-adc9-120d88307001/2.5/94.829629398585/64.303357058644?0)

#### 12. Enter Jinja referencing the running user

In Jinja, we can use \{{ [CTX.user.id](http://ctx.user.id) \}} which uses the ID of the running user, ensuring we always get the right forms based on the logged in user.

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/0c27ed0c-8d35-4eb6-8e64-08959f2c46f1/2.1142858896301/51.047481554504/36.090524236119?0)

#### 13. Advanced Tab

On the Advanced tab, we can amend the "Run as Org" which works in the same way as the Run As User, and ensures that we always run as the org we are logged into. If you have a form that is only enabled for certain orgs, this is how we return the correct ones.

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/0560b5c8-52ae-4748-b138-ed30f6a18995/2.5/78.076518228346/48.017990225382?0)

#### 14. Jinja in Run as Org

We add \{{ [ORG.ATTRIBUTES.id](http://org.attributes.id) \}} into the Run as Org box under the Advanced tab.

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/30a89a45-0058-4bfc-aebe-9b63df8e43be/2.5/50.984305421461/34.398740919757?0)

#### 15. And another noop...

Let's add another noop and connect our list\_forms action to it. We can name this one `set_form_output` to make it clear what we're going to do.

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/e5082cb9-955f-4da3-9e55-0b0e33bef9f7/1/65.506212347543/52.570494674244?0)

#### 16. Add a Data Alias

On the noop, we're going to create a new data alias called `form_output`

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/87d3965c-567a-4831-9953-130914869491/2.5/98.657139012071/45.069695017914?0)

#### 17. Code Editor

Once again, click the code editor icon next to your new data alias

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/e2a7c13f-af58-4125-8da5-8adead293264/2.5/87.237153568404/56.866768701449?0)

#### 18. The Jinja

We wont go fully into the Jinja here, but feel free to reach out to the ROC if you'd like to understand more what's happening here. The jist of it is that we are looking at all the returned forms, and creating a new key/value dict with name, tags, view and triggerId key. Eventually we'll display the name and tags to the user and use the view key to allow an action for the user - in our case, to go directly to the form. The Jinja can be copied below.

```
{#- Assumes single trigger per form -#}
{{ [
{
"name": form.name,
"tags": form.tags,
"view": "https://app.rewst.io/form/"~form.id,
"triggerId": form.triggers[0].id | d
} for form in CTX.all_available_forms
] }}
```

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/f58dee63-48f2-4c77-8c4e-53309def4233/2.5/50.984305421461/34.398740919757?0)

#### 19. Final Noop

Add one more noop into the workflow and call it "END", and connect it to the 3rd action as per the image.

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/cfd20285-c098-4e70-bd1a-bc467f7edf48/1/65.506212347543/52.570494674244?0)

#### 20. Set Workflow Outputs

Next, we need to ensure that the data alias we created actually gets output when the form runs. Click the pencil in the top right of the Workflow Builder, as shown in the image below

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/e7a084d1-6fa2-4191-ae35-48adb974320d/2.5/85.498228870855/1.3933863552529?0)

#### 21. Add Output Configuration

Click the + next to the Output Configuration and call it `form_output` (we can call this whatever we want). In the Jinja, enter \{{ CTX.form\_output \}} - this references the Jinja we made earlier on in the 3rd noop. Remember that one we called `set_form_output` ?

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/eedb0c79-75fe-4dc9-b659-0ecf47f48cbf/2.5/56.535105887658/71.406511607748?0)

#### 22. Click on Submit

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/e26fe2dd-5059-45a1-88e8-7823c80b2bdb/2.5/79.906770530595/78.771738187063?0)

#### 23. Click on Publish

Save the workflow!

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/8e575d46-9a37-4747-8bac-2d31d3038ee1/2.5/100.00199249383/0?0)

#### 24. Marvel in Rewsty

Click the Rewsty Robo-head and marvel at how we utilise AI to identify the changes made in the Workflow Builder to generate the commit notes.

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/8db705d2-3447-4c72-8393-90a45ca3d8db/2.5/65.13647999068/38.448484731739?0)

#### 25. Click on Submit

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/4ae59b8d-1cce-476b-a0e8-dc3d8a87cf2d/2.5/68.380444187134/96.504334813112?0)

#### 26. Click on Test

Finally, let's make sure it actually works!

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/d94dd980-e60f-4fd4-85b6-d8b14cc65def/2.5/96.496620194258/0?0)

#### 27. Click on Test

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/d694456b-9c5a-40fa-9a00-b7557886e0af/2.5/74.885777477058/54.958326544259?0)

#### 28. Click on View Results

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/6620cc93-6a1f-417c-9ead-9cdfead3d832/2.5/59.405584283214/7.7570362307242?0)

#### 29. Click on END

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/8fa2cc87-fbcc-4887-8fff-86c45a98c69a/2.0619180396/36.369196092847/60.363212791649?0)

#### 30. Click on output

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/543b30ed-75ad-422c-9a29-0e3336a7e775/2.5/72.376844992203/74.921114920738?0)

#### 31. Click on form\_output

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/c111fba0-f0ec-4344-a1fa-642459980d37/2.5/74.887025631892/77.01249226551?0)

#### 32. Click on ...

You'll see very similar to the below, where you'll see a list of the forms that have been output! You may not have three, that's fine as it just shows what you have access to.

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/171467b7-07ba-4008-8be6-d732ccd6bcc6/2.5/72.452533099771/78.730221759161?0)

> #### ⚠️ Ooooft!
>
> Okay, that was a lot. Building a workflow can be daunting, but if you ever have a problem know that everyone at Rewst wants to help you succeed! If you have had any issues with this, make sure you utilise your Discord private channel and tag ROC Support.
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Create your first App

***

## Hello World - App Creation

***

#### 1. Navigate to the Rewst Platform

Start pretty simply, load up the Rewst platform and you'll see the dashboard

![](https://dubble-prod-01.s3.amazonaws.com/assets/c3bebce5-6027-4334-8336-3c34c47a080e.png?0)

#### 2. Click on App Builder

Expand the App Builder menu on the left nav menu

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/9699d920-03a2-4505-8d86-3ea158f096bf/2.5/0.67242634000774/17.955742115131?0)

#### 3. Click on Apps

Navigate to the Apps section under App Builder, where you'll find all of your created apps!

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/05079d93-cfd0-45ae-9ba7-faa496244227/2.5/3.3577532966681/23.011634780099?0)

#### 4. Click on Create New App

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/6bd1e605-d6ae-4346-a026-5b80b47a5050/2.5/13.786303731462/23.188077998141?0)

#### 5. Enter a Name

Give your new app a name, we'll use "hello-world" in our examples. Note how it automatically creates a URL based on your org name and the [rew.st](http://rew.st) domain. Once created, you can even assocate a custom domain!

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/a06bcaeb-3d1d-4333-874a-d2bbc596f0f7/2.5/50.000998652147/38.886378719792?0)

#### 6. Click on Create

![](https://d3q7ie80jbiqey.cloudfront.net/media/image/zoom/755fa07c-abbd-4ac4-9162-c48a257b34fb/2.5/62.275436677167/71.161308720929?0)

**Congratulations! You just created your first Rewst App!**
Loading

0 comments on commit 2c734b2

Please sign in to comment.