[New Plugin] Bdk Utilities

Hello Bubblers,

We have a new addition to the Bubble Developer Kit :smiley:

Bdk Utilities (Documentation):

1. Easy list
2. Transform list
3. List processor
4. Super workflows
5. Text list
6. If-then Workflow
7. If-then Value
8. Transform list (server-side)
9. Text list (server-side)
10. If-then Value (server-side)

Description and screenshots of each below.

The plugin is priced the same as all plugins in the Bubble Developer Kit at $4/month. I’m experimenting with the one-time pricing for this plugin at $16. Check out the demos.

Happy Bubbling!
Cheers,
Gaurav

22 Likes

Easy list

Easy lists are pretty useful to easily manipulate lists without using states / repeating groups to store your lists. In a single workflow step, you can (1) add a list of items (2) add a single item (3) set to a list of items (4) set to a single item.

Easy lists also have an inbuilt ‘memory’. You can undo an easy list to go back to its previous contents in a single workflow step. Undo can be used upto 5 times consecutively

Example applications include (1) Tabs in your app. Imagine a ‘back button’ for user to go back to where they were previously (2) Undo stuff anywhere in the app for a user
Some example applications include (1) making real-time calculations for your invoice line items, (2) better shopping carts, (3) group edit/delete items in repeating groups

Easy List Demo: (1) Add an Item / List to an Easy list (2) Set an Easy list to an Item / List (3) Undo a List

2 Likes

Transform List

Ever wanted to transform a list into some other list in bubble? For instance constructing a HTML table for your products or a JSON for your api call. Transform list allows you to do exactly that. Using this plugin you can run any piece of code on every item of your list, to generate a new list.

Simple yet super powerful. Define the input list, the type of output list and write the code to apply on each item of the input list.

For example applications, think of the instances wherein you had to ’ Spend tons of time creating fields, complex workflows to do simple processing on a list of things

Transform List Demo: Run code on a list of things to generate a new list of anything. Set up in seconds.
5c1a056b0eecb743428852

2 Likes

List Processor

List Processor brings a much awaited functionality. Currently if you want to run a workflow on a bunch of things, you can run api workflow on a list. But that also means you don’t know when its done, and you have to store and retrieve value from the database making it complex and slow.

List processor allows you to do this right on the page. Unlike api workflows, it can also trigger another workflow that you define once its done.

For Example applications, think of the instances wherein you had to ‘Schedule an API workflow on a list’

List Processor: Run a workflow on each item of a list. Run something when done processing the entire list.

7 Likes

Super Workflows

Super Workflows are just like bubble’s custom workflows but with a major difference: You are not limited to passing one value. You can pass upto 3 values to a Super Workflow.

Super Workflow Demo: Just like custom workflows but you can pass multiple things to it.

2 Likes

Text List

Quickly generate a list of text from a text and a separator of your choice. Of course, you can dynamically change the list using conditional formatting. Superfast as it doesn’t touch the database.

Example applications include dynamically changing choices in a dropdown based on conditional formatting

2 Likes

If-then workflow

Set up a series of if-then-else statements in seconds. When a ‘If’ condition is true, the If-then workflow element runs the workflow corresponding to the ‘then’ condition

If-then Workflow: Construct a set of if-then-else conditions and run a workflow corresponding to each 'then'

If-then value

Set up a series of if-then-else statements in seconds. When a ‘If’ condition is true, the If-then value element gets its ‘value’ from the corresponding ‘then’ value you define

If-then Value: Construct a set of if-then-else conditions and set a value corresponding to each 'then'

6 Likes

Just wanted to recognize that you’re doing a couple things I appreciate with your posts and plugin building 1) Keeping forum postings consolidated, 2) giving good documentation for getting started, and 3) providing practical demos.

Glad to see how Bdk continues to develop!

13 Likes

Thank you for the kind words @dan1 :smiley:

4 Likes

this is really significant…excellent @gaurav and also to echo @dan1 comments. Frequent, insightful, pertinent and useful updates as well as the obvious high quality documentation

5 Likes

Thank you @Bubbleboy! :smile: Glad you found it useful.

Great work, thank you.

1 Like

[Plugin Update] 28-Dec-2018

  1. Transform list is now also available server side so you can use in API workflows
  2. If-then-value is now also available server side so you can use in API workflows
  3. If-then-value (both client and server side) now allows you to output two values for each condition
  4. Text list is now also available server side so you can use in API workflows
  5. Text list now supports adding additional 6 dynamic text values in addition to split strings by separator

Feel free to check out the demo.

Happy Bubbling,
Cheers,
Gaurav

4 Likes

Awesome plug in, and I’ve only used transform list so far!

A really smart and fast solution, enabling features that i previously had to build complex data structures for, slowing down my app.

My use case (so far) is to reference the current user’s rank in a list, in an entirely different group from the repeating group.

A bit of javascript within the transform list plugin, produces this for me in a blink of an eye, even when the list changes entirely, without touching the database.

This has opened a lot of doors for my app. :smile:

Thank you Gaurav!

1 Like

Being unfamiliar with javascript (why I’m using Bubble) could you please help me? Can I use your List Processor to find and replace multiple text values on just one thing in a list, server side?

For instance I’d like to replace ##first name## ##last name## with things in the database i.e This event’s first_name and This event’s last_name - how would the expression be constructed?

1 Like

Hi @peter8,
Sure. So

  1. If you want to do an operation on a list of things server-side, you can use bubble’s ‘Schedule API workflow on a list’ action
  2. If you want to do an operation on a list of things client-side, you can use Utilities (bdk)'s List processor element. Documentation and demo for how to use this is here

I didnt fully understand by this what exactly you’re looking for… maybe you could post an image / screen recording here with more details so that I / other people on the forum can help out?

Hey Gaurav firstly thanks for your hard work these utilities are the bomb.

I’m having a strange problem and I’m not sure if its with list processor or bubble.

Basically I have a list of a couple hundred items, they’re text and in json format displaying in a repeating group.
In each cell I have a RGData fed by database item (which is an existing product) and a bunch of inputs drawing the values out of the json via way of regex.
To give perspecting the RGData looks like Product (obj), Buy Price number, Quantity number and Unit Buy Price number.

I then have a button which updates the product (obj)'s with the number values.
To know that it has been updated I have a little checkbox that checks if the Product (obj) modified date is today.

I run the listprocessor, it updates each item, the checkbox becomes checked and when I inspect the group using the debugger that references the Product(obj) in my database it appears with the updated prices and the correct modified date.

but not all is well, it’s actually not modifying the data.
If I search in the bubble backend the items haven’t been updated and the modified dates aren’t updated.

Whats even more strange, on my repeating group I have check boxes to select which Items I want updated, if I only select a few they all work correctly but when I do all of them it appears to work, in the debug_mode it shows that its work but it hasn’t.

Have you encountered any issues like this

Hi @chad,
Glad you like the plugins!
I’m unable to picture the setup you described quite clearly… Could you share something more visual… e.g. images / screen recordings / link to editor so that its a bit easier to understand
Cheers,
Gaurav

Hey Gaurav any chance you could do a little tutorial on turning a list Json to a list of objects?

1 Like

Working on this… I’ll send through a video. I ended up changing it all to try and do it a different way. It didnt work so I have to change it all back