Multi-Resource Configuration
The resource data structure for the scheduler is straightforward with a couple of base properties that the component understands and uses to render the UI. Besides the base properties you can add any custom property, like title, job ...
id- This is an id that can be referenced in the eventdataname- The name of the resource that will be printed at the top of the respective columncolor- The color controls the default event color of the resource. Event colors can be specific above this. If the color is omitted the underlying events will inherit the default calendar coloreventCreation- This controls if events can be created or dropped onto this resourceeventDragBetweenResources- Specifies whether the events in the specified resource are movable across resources. If set tofalsehas precedence overdragBetweenResourcesoption of the calendar.eventDragInTime- Specifies whether the events in the specified resource are movable in time. If set tofalsehas precedence overdragInTimeoption of the calendar.eventResize- Specifies whether the events in the specified resource are resizable. If set tofalsehas precedence overdragToResizeoption of the calendar.eventOverlap- Specifies whether the events in the specified resource are allowed to overlap. If set tofalsehas precedence overeventOverlapoption of the calendar.
Demo
mobiscroll.eventcalendar('#my-calendar', {
resources: [{
// base properties
id: 1,
name: 'Ryan',
color: '#ca4747',
eventCreation: true,
// add any property you'd like
title: 'UX Designer',
job: 'Apollo Project'
}, {
// base properties
id: 2,
name: 'Kate',
color: '#cc9900',
eventCreation: true,
// add any property you'd like
title: 'Product Developer',
job: 'Yorick Project'
}, {
// base properties
id: 3,
name: 'John',
color: '#01adff',
eventCreation: true,
// add any property you'd like
title: 'Data Analyst',
job: 'Titus Project'
}]
}); 
JSHTMLCSS
mobiscroll.setOptions({
locale: ,
theme: ' ',
themeVariant: ' '
});
mobiscroll.eventcalendar('#demo', {
clickToCreate: ,
dragToCreate: ,
dragToMove: ,
dragToResize: ,
eventDelete: ,
view: {
scheduler: { type: 'day' },
},
resources: [
{
// Base properties
id: 1,
name: 'Ryan',
color: '#ca4747',
eventCreation: true,
// Add any property you'd like
title: 'UX Designer',
job: 'Apollo Project',
},
{
// Base properties
id: 2,
name: 'Kate',
color: '#cc9900',
eventCreation: true,
// Add any property you'd like
title: 'Product Developer',
job: 'Yorick Project',
},
{
// Base properties
id: 3,
name: 'John',
color: '#01adff',
eventCreation: true,
// Add any property you'd like
title: 'Network Administrator',
job: 'Titus Project',
},
],
data: [
{
start: '2026-10-22T15:00',
end: '2026-10-22T18:00',
title: 'General orientation',
resource: 1,
},
{
start: '2026-10-22T09:00',
end: '2026-10-22T11:00',
text: 'Stakeholder mtg.',
resource: 2,
},
{
start: '2026-10-22T13:30',
end: '2026-10-22T15:00',
text: "Lunch @ Butcher's",
resource: 3,
},
],
renderResource: function (resource) {
return '<div>' + resource.name + '</div><div class="md-resource-data-structure-title">' + resource.title + '</div>';
},
});
<div id="demo"></div>
.md-resource-data-structure-title {
font-size: 13px;
opacity: .7;
}