# Getting Started with Video API in React SignalWire hosts community supported tools and libraries, including the [@signalwire-community/react](https://signalwire-community.github.io/docs/react/) package, which has a lot of React components and hooks to simplify your UI programming. In this article, we will create a simple, dynamic UI for the SignalWire Video conference using the tools provided in the [@signalwire-community/react](https://www.npmjs.com/package/@signalwire-community/react) npm package. ## Setting up the Project First, to set up the codebase, we need to initialize an empty React project and install the @signalwire-community/react package. bash npm2yarn npx create-react-app videoapp cd videoapp npm install @signalwire-community/react npm run start ## Getting a Video Conference Going It is exceedingly simple to situate a fully functional video call within your React app. Simply use either the component or the from the package. As long as you supply it with a valid token, the components and the SDK will handle the messy details needed for setting up a reliable video connection between participants. import Tabs from @theme/Tabs; import TabItem from @theme/TabItem; jsx title=App.js import { VideoConference } from @signalwire-community/react; export default function Video() { return ; } jsx title=App.js import { Video } from @signalwire-community/react; export default function Video() { return If you havent already generated a token for Video, the [Getting Started](../../../getting-started/getting-started-with-the-signalwire-video-api-1/index.mdx#obtaining-your-api-key-and-project-id) guide will help. For demo purposes, feel free to use the following token. We maintain these particular tokens for demo of our guides, so expect to run into other developers here. vpt_78f91a752d4d9c685e47bd4a19fe72c1 eyJ0eXAiOiJWUlQiLCJjaCI6InJlbGF5LnNpZ25hbHdpcmUuY29tIiwiYWxnIjoiSFM1MTIifQ.eyJpYXQiOjE2NjAyODA0ODUsImp0aSI6ImE4NTc5MzU2LTc0NGItNGM5OS05NWQ2LTZhMTY4YmEyNTFhZCIsInN1YiI6IjUwNmNlYTMzLWViNDctNGI1Ni04MmIwLWQzYzVhZmFmMzlkNCIsInUiOiJxdWlja3Rva2VudXNlciIsImphIjoibWVtYmVyIiwiciI6InJvb20iLCJzIjpbInJvb20ubGlzdF9hdmFpbGFibGVfbGF5b3V0cyIsInJvb20uc2VsZi5hdWRpb19tdXRlIiwicm9vbS5zZWxmLmF1ZGlvX3VubXV0ZSIsInJvb20uc2VsZi52aWRlb19tdXRlIiwicm9vbS5zZWxmLnZpZGVvX3VubXV0ZSIsInJvb20uc2VsZi5kZWFmIiwicm9vbS5zZWxmLnVuZGVhZiIsInJvb20uc2VsZi5zZXRfaW5wdXRfdm9sdW1lIiwicm9vbS5zZWxmLnNldF9vdXRwdXRfdm9sdW1lIiwicm9vbS5zZWxmLnNldF9pbnB1dF9zZW5zaXRpdml0eSIsInJvb20uaGlkZV92aWRlb19tdXRlZCIsInJvb20uc2hvd192aWRlb19tdXRlZCJdLCJhY3IiOnRydWUsIm1hIjoiYWxsIiwiZXJwIjp0cnVlLCJtdGEiOnt9LCJybXRhIjp7fX0.ke-qPuTmp6tUOgdHMHv_i82PjuWQgr8lsX_VRS_Krq4nwYt3REGhSn1p68N3gXTXxp7DGd6dIJIzJwjVZvdDmA If you have setup everything till this point, you should have a working video call. If you were using