Advice and your thorughts

Hi all,
I am building a learning hub for my company.
In short, the learning hub will have a series of pre-session work that I want participants to complete prior to having a f2f with me.

Some of these pre-sessions will be in video form.
I have been told on numerous how to videos that uploading content onto the database will slow it down and actually creating links to Vimeo is more effective which i have started doing
Side question:
I will have around 30-50 videos ranging from 3 mins to several which will last 30 mins. Will this quantity of video’s being stored in the database actually slow it down? OR would it actually be ok due to it being a relatively low amount? - if it will be ok then my life will be a lot easier.

Anyway, if i assume that the how to videos I’ve watched are correct and the best means of storing them are through links then what do you think are the best ways to do this as id like to:

Have tags or categories so learners can search for and watch them? > how would i do this?

*Have a “video template” (like on youtube) which when a learner clicks on a thumbnail it loads this video page template up which will then play the video

  • i have actually already created this page but can see the only way I can ensure the correct video is played would be to create a template page PER video which doesn’t seem efficient.
    *Is there a way to simply have one video page template and then send the video ID to it when clicked? (again I assume if the video was on my database this would be easy enough to do but if its actually stored on vimeo then this is where the challenge would be)

Any advice or suggestions would be greatly appreciated.

Tanks in advance,

It’s not really about ‘slowing down’…. and has nothing to do with how many videos you have or how long they are.,

There’s a lot more to hosting and displaying videos than just storing them in the database.

If you want your videos to be accessible on any device, then you not only need to upload and store them, you’ll then need to compress the files, convert them into various file formats (to ensure compatibility on all devices), make copies at various resolutions (to ensure they can be viewed in real-time regardless of internet connection speed), and then deliver the correct file-format and resolution to the user viewing the video depending on their device and connection speed, at the right time.

Whist you can handle all of those things yourself (using various AWS services, for example), it can get very complicated and expensive.,

Services such as Vimeo handle it all for you, at a very reasonable price.

Of course, if your not worried about users being able to view your videos in real-time (without them stopping and buffering every few seconds), or about some videos not being able to be viewed on certain devices, then by all means you can just upload the raw files, store them in a database, and play back those raw files…

But for any serous video-based app, using some kind of video transcoding hosting and delivery service (such as Vimeo) is essential.

In terms of how to do o it, it’s simple. Just store the video ID as a text in your database (on your lesson data type for example), then use that in whatever Video plater element you’re using on your page (i.e. the current page’s lesson’s video ID).


Got it. And thanks for that

So If I am creating fields in the data base for the individual fields I may create fields like:
Video id.
Which I would then fill out each time.

At the moment I have a home page which I’d like to add the fields described above in a reccuring group which the learner would then click on AND/OR they have a page which tells them to watch a specific video as part of their pre-session.

What would the workflow be then to direct the learner to the specific video ID which is on the video page template I mentioned?

Thanks again for your help!

Personally, I like to have a datatype of Video in the database to store all the data about video, as well as a datatype for Lesson. So the database might look like this:

Name (text)
URL (text)
Vimeo ID (text)
Thumbnail (image)
Duration (number)
Duration text (text)
Description (text)

Name (text)
Description (text)
Lesson number (number)
Video (Video)

…as an example.

Of course, you could just store it all on the one datatype, but I find it better and more efficient to use two.

What would the workflow be then to direct the learner to the specific video ID which is on the video page template I mentioned?

Just use a ‘Go To Page’ action, to send the User to the Lesson page (or whatever page it is in your app), and obviously just ‘send’ the current cell’s Lesson (or whatever it is in your app).

Think I get that.
Is there any chance you have an example or a screen video you could send me so I can see?
I ask because A I’m a visual learner but b, not sure how I’d use the video template I’ve created to show different videos/display the data fields.

I’m not too sure what you mean by ‘Video Template’…?

But if you’re using dynamic pages correctly, then just refer to the current page's video (or Lesson, of whatever ‘Thing’ it is in your app) as the video source (and other data).

Although it sounds to me, from your question, as if you might not be too familiar with dynamic pages in Bubble?

In which case, as they are such a fundamental feature of building apps with Bubble, and exactly what you need to be using for your use-case, I’d recommend taking the time to get to grips with how dynamic pages and content work with Bubble.

1 Like

Understood and managed to sort it thanks to your advice.

1 Like