# Video Conference AppKit AppKit allows you to include [Video Conferences](guides/video-api/getting-started/video-conferences/index.mdx) with prebuilt UI into your applications, in the form of Web Components. ## Installation bash npm2yarn npm install @signalwire/app-kit ## <sw-video-conference> This component represents a Video Conference. ### Properties | Property | Attribute | Type | Description | | | | | - | | audio | audio | [MediaTrackConstraints][media-track-constraints] \| boolean | [Audio constraints][media-track-constraints] to use for the devices. Set to false if you do not want to use audio devices. Default: true | | chat | chat | boolean | Set to false to disable the chat. Default: true | | devicePicker | device-picker | boolean | Set to false to allow only default devices to be used. If false, this will disable pre-join steps for device selection and remove the ability for the user to change devices after joining the room. Default: true | | memberList | member-list | boolean | Set to false to disable the member list. Default: true | | setupRoomSession | -- | (roomSession: RoomSession) => void | A callback which will be invoked as soon as a [RoomSession][room-session] object is ready. The [RoomSession.join][room-session-join] method will be called automatically _after_ executing this callback. Default: undefined | | theme | theme | auto \| dark \| light | Set a specific color scheme. Auto will use the operating systems dark-mode setting. Default: auto | | token | token | string | The Video Conference token to access the room. Starts with vpt_. Default: undefined | | userName | user-name | string | A custom user name for the user joining the room. Default: | | video | video | [MediaTrackConstraints][media-track-constraints] \| boolean | [Video constraints][media-track-constraints] to use for the devices. Set to false if you do not want to use video devices. Default: true | | layouts | layouts | boolean | Set to false to disable the layout selection. Default: true | :::info Using setupRoomSession Please note that the setupRoomSession callback function must be initialized before the component is rendered to the DOM. For an example, see it implemented below or with React in the blog [AppKit Integration with React](https://signalwire.com/blogs/developers/using-the-video-conference-app-kit-with-react). ::: ### Examples #### Basic Instantiation html