The Power of "Tape API + SQL + JS" and Building Companion Applications

Hello everyone,

We are indeed living in exciting times on the Tape platform and it’s been incredible to be a part of it. As is most likely the same with a lot of you, we have been working diligently to discover all of the features within Tape that can help us achieve all the same goals that a lot of us developers have already been achieving in Podio and PWA and adjust our strategies to suit Tape’s incredible Automation engine.

One of Syncrony’s biggest passions has been building custom web apps to act as companion applications to a low code system. If we take Wordpress as an example, it has two primary interfaces: a frontend and a backend. While Tape makes an amazing backend for data storage and automations, most often additional frontends are desirable in order to better organize related data (although the new Dashboards are freakin’ sweet) and to provide granular access to different user roles, for instance, a client. Some data types are so complex that additional UIs are the best way to interact with the data, especially when entering many-to-one related records, like line items.

We have converted our own PHP-based API that we were using to catch hooks from Podio to catch from Tape instead. It’s actually been a lot easier to develop, because we only manage one developer API key rather than managing an oAuth access token for each app. The API installs hooks and processes Tape fields into SQL columns for insertion into SQL. This is our preferred method (deploying our API on DigitalOcean App Platform takes a few clicks, and they manage the SQL data as well) and it works for us. This process could easily be replicated using other API integration tools like Make or Zapier. We would be happy to consult with anyone who would be looking for this functionality.

While we have built many systems using Procfu Mini Apps and enjoy what is possible there, we also find it easier most times to build from scratch using raw Javascript. You can make all the UI choices you want with fewer limitations and gain access a ton of UI/UX libraries which can help speed the process along even more.

QUICK TANGENT…

It’s actually never been easier to build and deploy UIs and it’s only getting easier by the day. Our preference has been Nuxt 3, a SPA web framework written in Vue.js, but if anyone’s interested in learning how to code your own UIs, I highly recommend you take a look at Svelte and do their awesome tutorial. Svelte is having a meteoric rise as a top tier framework and v5 just landed this month with incredible new features.

We are also closely watching developments in Cloudflare’s new backend framework. New features are being launched every day, we’re seeing it in real time. There are lots of Javascript driven tools available there to build your own APIs, handle async tasks with a queue manager, and lots of other cool features. Cloudflare can also deploy static front ends (like those built using Nuxt 3 or Svelte). You can achieve an incredible amount just on their free tier.

I enjoy playing with new toys and both of these have been exciting journeys and I just wanted to geek out on them for a moment!

BACK TO THE SHOW…

By syncing Tape data with SQL, you make it more readily available to a powerful frontend that can do anything that Tape’s UI cannot do. As I’ve said, there’s many ways to achieve this. There’s also many other available OOTB APIs to let you access the SQL data that a frontend can then feed off. If you haven’t already checked them out, you can build your own serverless, SQL integrated API using only Procfu Code Blocks. You also gain immediate access to all of Procfu’s other functions which makes coding even more efficient.

There are considerations to be made regarding security and user management, but these are all minor and can also be solved in a number of ways. Again, we are happy to consult on these topics.

We just finished our first major Tape build that has a SQL bridge and companion application installed, and because it has no data in it yet and the portal is actually a public facing application (one of our first, you can go register for it right now), I thought I would share our journey with you. Please give this a watch if you’re interested in learning more.

https://www.loom.com/share/367422c4d361433fa66299f5d2610b8e

A huge thank you to the Tape team, @Stefan @Leo and especially @Tim for all his efforts in helping me test the API to get to this point.

Cheers and happy developing!
Andrew

PS: If you were so inclined, you could register right now at https://portal.nscf.ca and sign up for an individual membership, and if you did, please know that you would be supporting one of the best non-profit organizations in Canada that makes a difference in so many people’s lives.

7 Likes

PPS: Apologies for saying “Podio” once, I actually was trying super hard and feel I did pretty good given the circumstances lol

6 Likes

:smiling_face_with_three_hearts: Thanks for sharing!
This is pretty amazing.

4 Likes

wow, thank you @andrew.cranston
This is a very impressive integration showing the portal you’ve built on top of tape. Your write up and video made it seem ‘easy’ but you’ve clearly put a ton of work into getting this to work so nicely. Great job!

I’m working on a project that needs a user portal built on top of tape at the moment and this is massively helpful in getting me past a few hurdles I was stuck on.

4 Likes

I just completed the migration from Podio to Tape for all of NSCF’s data. In spite of Podio glitching the entire day (for the second weekend in a row), our efforts were successful. I wanted to list a few comments about my experience:

We obviously hit the system pretty hard most of the day, importing hundreds of records and wanting to run key workflows on all items. I really enjoyed how easy it was to trigger an automation to run on all records, watching them schedule themselves over time, and occasionally even throttling when the system was working too hard. Throttling is to be expected when you’re pushing the system in this regard, but what I enjoyed most was how TRANSPARENT the throttling is. You can see when the flows are sitting in the throttle, and can watch the runs in real time when they go back to Scheduled. There was even a time when I attempted to run a manual workflow on over 300 items, realized about 25 items in that the flow was failing, and then was easily and immediately able to terminate the entire thing. What a concept!!

Speaking of real time, it’s incredible to watch the table update itself before my eyes while the automations are running.

Filtering by text based values, and being able to filter when a relationship field contains ANY value was also a vital part of the migration. We ran a workflow to push a related member record to all related contacts, and I could build a filter of records where the relationship field was blank and watch the filter run itself down to 0 without ever having to refresh. Also, the import tool and the previews that are shown made it SO incredibly easy.

Thank god for SQL and our API helping me with exported data while I struggled for several hours waiting for Podio calculation fields to update with the item ID. Podio simply did not want to let go of this but we finally did it.

First massive migration done, and I’m ready for more!!

6 Likes

Hi @andrew.cranston,

Thank you so much for your kind words. We’re really happy to hear that your migration from Podio has been such a success. These are indeed exciting times for all of us, aour goal is to keep improving Tape and keep adding new features so that everyone benefits from migrating to us.

A special thank you for showcasing your portal as well. It’s genuinely impressive and provides immense value to the whole community and all Tape users who face similar challenges. Your contributions help strengthen and inspire our entire user base.

Thanks again, and we’re so happy to have you on board :rocket:

Cheers
Leo

2 Likes

Andrew

I love this, thanks.

I totally with Cloudflare being worth a watch I recently moved most of my S3 storage across to their offering.

The other people that seem to be growing and adding features is Supabase

1 Like

Yes, I did not mention it in my comments but we are exploring Supabase as well. Supabase + Svelte is a great combo for a serverless application, and you get to take advantage of the “real-time” aspect of things as well.

I adore Cloudflare’s Durable Objects, we’re using it to manage user sessions and it’s sort of like a mini database for each user logged into the system.

Exciting times to be a developer! :smiley:

2 Likes