Box UI Elements
Box UI Elements are pre-built UI components that allow developers to add features of the main Box web application into their own applications. Use Box UI Elements to navigate through, upload, preview, and select content stored on Box. Box UI Elements are available as React components and framework-agnostic JavaScript libraries.
Demo
Please note that the demo page has limited functionality.
Installation
yarn add box-ui-elements
or npm install box-ui-elements
To prevent library duplication, the UI Elements require certain peer dependencies to be installed manually. For a list of required peer dependencies, see package.json.
Usage
This documentation describes how to use UI Elements in a React application using webpack. If instead you require a framework-agnostic solution, please refer to our developer documentation. You can also reference our Elements Demo App and Preview Demo App for examples of minimal React applications using ContentExplorer and ContentPreview, respectively.
Common
Elements
* These components utilize code splitting. See the Code Splitting section for more information.
Code Splitting
Code splitting is currently supported for some UI Elements. In order to use an Element with code splitting, you need to set it up in webpack.
Stylesheets
Box UI Elements use SCSS stylesheets. Each of the Elements include their corresponding SCSS stylesheet to render properly. Once you import
an Element within your React app, the corresponding stylesheet will automatically get included. However, you will need to setup webpack to handle .scss
files by using the sass-loader / css-loader. This will direct webpack to properly include our SCSS files in your final CSS output. A sample configuration is shown here under the rules section.
Browser Support
- Desktop Chrome, Firefox, Safari, Edge (latest 2 versions)
- Mobile Chrome and Safari
Supported Packages
- React 17: Box UI Elements currently supports usage in React 17 environments. Developers implementing UI Elements in React 18 may experience unexpected issues.
Contributing
Our contributing guidelines can be found in CONTRIBUTING.md. The development setup instructions can be found in DEVELOPING.md.
Questions
If you have any questions, please visit our developer forum or contact us via one of our available support channels.
Copyright and License
Copyright 2016-present Box, Inc. All Rights Reserved.
Licensed under the Box Software License Agreement v.20170516. You may not use this file except in compliance with the License. You may obtain a copy of the License at
https://developer.box.com/docs/box-sdk-license
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.