Getting Started
There are three ways to integrate the schedule widget into your website:
Method 1: Interactive Embed Builder (Recommended)
The easiest way to get started is through our visual embed builder:
Click the "Embed Schedule" button in any schedule via the dashboard
Choose your layout: Select between Grid (weekly calendar view) or List (chronological list view)
Configure your settings:
Set your preferred start day (Monday - Sunday)
Choose your locale for date formatting
Toggle "Focus On-Air On Load" to automatically scroll to the current on-air show on page load
Customize the appearance:
Select font type (Default, Google Fonts, or Custom)
Set background colors for schedule and grid
Configure show colors and text colors
Adjust grid border and text colors
Click "Get Code" to generate your custom embed code
Copy and paste the generated code into your website's HTML
Method 2: Direct Script Embed
For quick implementation without customization, use this basic embed code:
<script src="https://unpkg.com/studiio-embeddable-radio-schedule@latest/build/static/js/studiio-schedule-latest.min.js"></script>
<studiio-schedule
id="your-schedule-id"
layout="grid"
start-day="1"
locale="en-US"
></studiio-schedule>
Method 3: NPM Package Integration
For React applications and modern build processes:
npm install studiio-embeddable-radio-schedule
Then import and use in your React application:
import 'studiio-embeddable-radio-schedule/build/static/js/studiio-schedule-latest.min.js';
function MyApp() {
return (
<studiio-schedule
id="your-schedule-id"
layout="grid"
start-day="1"
locale="en-US"
/>
);
}
Layout Options
Grid Layout
The grid layout displays your schedule as a weekly calendar view with:
Days of the week as columns
Time slots as rows (15-minute intervals)
Shows positioned as blocks spanning their duration
Automatic handling of overnight shows
"ON AIR" indicator for currently broadcasting shows
Search functionality with live filtering
Navigation tools (go to on-air, back to top)
List Layout
The list layout presents your schedule as a chronological list with:
Shows grouped by day of the week
Sidebar navigation with day selection
Search functionality with real-time filtering
Compact mobile-friendly design
Current show highlighting
Configurable sidebar position (left or right)
Configuration Properties
Basic Properties
Property | Type | Default | Required | Description |
| string | required | Yes | Your unique schedule ID from Studiio |
| string |
| No | Layout type: |
| string |
| No | Week start day ( |
| string |
| No | Locale for date/time formatting, a string with a BCP 47 language tag |
| string |
| No | Auto-scroll to currently on-air show on first page load, |
| string |
| No | Sidebar position for list layout: |
Styling Properties
Property | Type | Description |
| string | Custom font family |
| string | Google Fonts font family |
| string | Main background color (hex) |
| string | Grid/sidebar background color (hex) |
| string | Grid border color (hex) |
| string | Grid text color (hex) |
| string | Show background color (hex) |
| string | Show text color (hex) |
| string | Day title color for list layout (hex) |
Features
Automatic Timezone Handling
The widget automatically detects and displays times in the user's local timezone, with timezone information shown in the footer.
Responsive Design
Both layouts are fully responsive and adapt to different screen sizes:
Desktop: Full feature set with hover effects
Tablet: Optimized touch interactions
Mobile: Streamlined interface with touch-friendly controls
Real-time Updates
"ON AIR" indicators update automatically
Current time highlighting
Live search results
Interactive Elements
Clickable shows (if external URLs are configured)
Search functionality with instant filtering
Navigation shortcuts (go to on-air, back to top)
Smooth scrolling animations
Accessibility Features
Proper ARIA labels and roles
Keyboard navigation support
High contrast mode compatibility
Custom Branding Example
<studiio-schedule
id="your-id"
layout="list"
style-google-font="Roboto"
style-background-color="#f8f9fa"
style-show-color="#e74c3c"
sidebar-position="right"
start-day="1"
></studiio-schedule>
Technical Notes
Browser Compatibility
Modern browsers (Chrome 60+, Firefox 55+, Safari 12+, Edge 79+)
Mobile browsers (iOS Safari 12+, Chrome Mobile 60+)
Performance
Lazy loading for improved page speed
Efficient DOM updates for real-time features
Minimal external dependencies
Data Source
The widget fetches schedule data from the Studiio API using your unique schedule ID. Data is cached for optimal performance and includes automatic error handling with user-friendly error messages.
Shadow DOM
The widget uses Shadow DOM encapsulation to prevent CSS conflicts with your existing website styles while maintaining full customization control through the provided styling properties.
Version History
Version | Release Date | Changes |
1.0.1 | 2025-08-31 | β’ Initial publish on GitHub/npm |