Add a Persistent Resource Library to Rise with Mighty
Use Mighty Custom Code to add a Resources button that stays available throughout a Rise 360 course and opens a shared Google Drive folder.
Sometimes learners need the job aid, template, or reference PDF right now—not three lessons later when they finally reach a downloads block. With Mighty’s Custom Code feature, you can add a persistent Resources button to your Rise 360 course that opens a resource library from anywhere in the course.
Rise now has a Code block for adding custom HTML, CSS, and JavaScript directly within a lesson. That’s great if you want a resource library at a particular point in the course. With Mighty, though, you can ensure the Resources button stays available to learners throughout the whole course so whenever they need it, it’s there.
What you’ll build#
You’ll create a button labeled Resources that appears in your Rise course and stays available as the learner scrolls and navigates. When selected, it will open a modal window containing a Google Drive folder in an iframe.
From that modal, learners can open files like:
- PDFs
- Documents
- Images
- Templates
- Job aids
- Other reference materials stored in the folder
In the video walkthrough, Nate uses a Google Drive folder with a few AI-generated images and a sample document, but the same pattern works for any set of files you want learners to access throughout the experience.
Before you start#
You’ll need three things:
- A Rise 360 course opened in the editor
- Mighty installed and available in your course
- A Google Drive folder that contains your course resources
The important setup detail is permissions. Your Drive folder must be accessible to learners or the library won’t load properly when they select the button.
Step 1: Create your Google Drive resource folder#
Start in Google Drive and create a folder for the course resources.
Add the files you want learners to use during the course. This could be a guide, a checklist, a worksheet, a policy document, or any other supporting material.
Then update the sharing settings:
- Open the Google Drive folder.
- Select the sharing settings for the folder.
- Set access so that anyone with the link can access it.
- Save the permission changes.
The permissions step is critical. The custom code will display the folder inside the course, and learners need permission to view the contents. If your folder is restricted to only you or your internal team, the modal may open but the resources won’t be available to the learner.
A quick permissions note
“Public” does not have to mean “editable.” For most course resource libraries, viewer access is the safer choice. You want learners to open and download resources, not change your source files.
If your organization has strict rules around Google Drive, check with your IT or security team before using this approach. Nate also notes in the video that the same idea may be adaptable to other repositories, like Dropbox or SharePoint, depending on what your organization allows.
Step 2: Copy the Google Drive folder ID#
Next, you’ll need the folder ID from your Google Drive URL.
Open the folder in your browser and look at the URL. Google Drive folder links include a unique ID for that folder. In the Mighty code snippet, that ID replaces the placeholder text that says your folder ID.
In the video, Nate copies only the folder ID portion and pastes it into the iframe source inside the JavaScript function. The snippet’s Drive URL also includes #grid, which sets the folder display to a grid view inside the modal.
Be sure to only replace the placeholder ID. Don’t remove the rest of the Drive URL structure unless you’re intentionally changing how the folder is displayed.
Step 3: Open Mighty Custom Code in Rise#
Now jump back into your Rise course.
- Open the course in the Rise editor.
- Go to the Theme area.
- Open the Custom Code section in Mighty.
- Add this JavaScript function.
The function does a few things:
- Creates a new button inside the course
- Adds styling for that button
- Creates the modal that opens when the button is selected
- Adds basic styling for the modal and modal content
- Creates a close button
- Creates an iframe that displays the Google Drive folder
- Calls the function so the button appears in the course
This is the part Mighty unlocks. Rise gives you many block-level options, but it does not provide a built-in way to add a persistent, course-wide resource button. Mighty’s Custom Code feature gives you a place to add that behavior directly in the course theme.
If you’re not a JavaScript person, don’t panic. You’re not writing the function from scratch here. You’re pasting the snippet, swapping in your folder ID, and adjusting small values like the button text or styles if needed.
Step 4: Replace the folder ID in the iframe source#
Inside the code snippet, look for the iframe source. In the tutorial, Nate points out the placeholder that says your folder ID.
Replace that placeholder with the folder ID you copied from Google Drive.
Conceptually, the iframe source is doing this:
iframe.src = "https://drive.google.com/embeddedfolderview?id=your folder ID#grid";You’ll replace your folder ID with your actual folder ID.
Keep the #grid portion if you want the Drive contents to appear in a grid layout, as shown in the video. That grid view works nicely for a resource library because learners can scan thumbnails and file names inside the modal.
Step 5: Run the code and check the button#
After the folder ID is in place, run the code in Mighty Custom Code.
You should see a new button appear in your Rise course labeled Resources.
Select the button. A modal should open and display the contents of your Google Drive folder. In the source video, selecting an image opens it in a new link, and selecting the sample document opens that document as expected.
If the modal appears but the folder contents do not, check the Drive folder permissions first. The folder needs to be shared so anyone with the link can access it.
Step 6: Customize the label, placement, and styling#
The tutorial uses Resources as the button text, but you can rename it in the snippet.
A few practical alternatives:
- Course Resources
- Downloads
- Job Aids
- Reference Library
- Templates
You can also adjust the button style and location by editing the style values generated through the JavaScript. The video doesn’t prescribe one “right” treatment here, and that’s useful. A resource button for a compliance course may need to be more subtle than one in a workshop-style course where learners are expected to use templates constantly.
Keep your brand requirements in mind:
- Use a label your learners will recognize.
- Make the button visible without covering core course content.
- Keep the modal readable and uncluttered.
- Make sure the interaction still feels like part of the course, not a random external add-on.
Step 7: Preview the full course experience#
Don’t stop after checking the button in the editor. Preview the course the way a learner would experience it.
In the video, Nate saves the course, leaves the Theme section, and runs a Rise preview. After selecting Begin, the Resources button remains available as he moves through the course.
That persistent behavior is the whole point. Learners don’t have to remember which lesson contained the downloads block or scroll backward to find a file. The library travels with them.
As you preview, check:
- Does the button remain visible throughout the course?
- Does the modal open and close reliably?
- Do files open as expected?
- Does the button interfere with navigation or important content?
- Are the folder permissions working for someone who is not the folder owner?
It’s worth doing that last test in a different browser, an incognito window, or with a colleague’s account. Permissions issues are much easier to fix before launch than after a stakeholder says, “I can’t open the resources.”
Why this matters for course design#
A persistent resource library is especially helpful when the course is designed as a performance support tool, not just a one-time learning experience.
For example, you might use it for:
- A manager training course with coaching templates
- A software rollout course with quick reference guides
- A policy course with downloadable forms
- A sales enablement course with product sheets
- A facilitator prep course with session materials
Native Rise blocks can absolutely provide downloads inside a lesson. That works well when a resource belongs to a specific moment in the learning flow. But when a resource is useful across the entire course, a persistent library reduces friction.
It also keeps your course cleaner. Instead of repeating the same attachments in multiple lessons, you can maintain one folder and update the files there as needed.
A note on accessibility and governance#
Because this approach uses custom code and embeds an external folder, give yourself time to test it against your organization’s accessibility and publishing requirements.
A few checks to consider:
- Confirm the button text is clear and descriptive.
- Make sure learners can close the modal easily.
- Test the experience with keyboard navigation if that is part of your accessibility review.
- Verify that documents inside the folder are themselves accessible.
- Confirm your LMS, browser, and security settings allow the embedded folder to display.
The code adds the access point, but the resources still need the same care you’d give any course materials.
If your team doesn’t use Google Drive#
The tutorial demonstrates Google Drive because it’s quick to set up and easy to embed. If your organization uses another document repository, the same general pattern may still be possible, but the embed link and permissions model will be different.
Nate mentions Dropbox and SharePoint as examples worth exploring. The safest path is to test with your approved repository and confirm that it supports the kind of embedded folder view your course needs.
If you want help thinking through that setup, the Mighty space in Maestro community is a great place to start.