Skip to content

mapbox/mr-ui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Jan 19, 2023
da218a6 · Jan 19, 2023
Nov 30, 2018
Sep 14, 2022
Jan 19, 2023
Jul 28, 2022
Jul 28, 2022
Jun 9, 2021
Jul 28, 2022
Jul 16, 2018
Jun 9, 2021
Jun 9, 2021
Jan 19, 2023
Jul 28, 2022
Jul 28, 2022
Jul 28, 2022
Jan 19, 2023
Jan 19, 2023
Jul 28, 2022

Repository files navigation

@mapbox/mr-ui

mr-ui logo

Build Status

Pronounced 'mis-tər yü-'ī. Mapbox React UI components.

UI components for Mapbox projects. See docs at https://mapbox.github.io/mr-ui/.

This project is for internal Mapbox usage. The code is open source and we appreciate bug reports; but we will only consider feature requests and pull requests from Mapbox developers.

Installation

npm install @mapbox/mr-ui

On Mapbox projects, pair these components with version 1.1.0+ of Mapbox's custom Assembly build. (This is not in peerDependencies because you might use <link> and <script> tags instead of the npm package.)

The public Assembly build should work fine, with maybe one or two hiccups.

Usage

Import individual components! All components are exposed at @mapbox/mr-ui/{component-name}. For example:

import Modal from '@mapbox/mr-ui/modal';
import Tooltip from '@mapbox/mr-ui/tooltip';

Only the component itself and whatever it depends on will be drawn into your bundle.

Utility functions

There are a few utility functions you can import from @mapbox/mr-ui/utils/{name}.

See the utils documentation.

Development

Here are some commands you'll probably want to use:

# Start the documentation site.
npm start

# Start Jest's CLI in watch mode.
npx jest --watchAll

# Lint and test everything.
npm test

Publishing

The build command creates a pkg/ directory that contains the code we want to publish, organized the way we want it. So pkg/ is the directory that we publish. pkg/package.json is a clone of package.json but with private: true removed.

  • Increment version numbers in package.json and package.lock.json, and ensure the changelog has an entry for the latest version. Then, create a new Git tag.
  • Build the pkg/ directory: npm run build.
  • cd into the pkg/ directory and mbx npm publish from there.
  • cd back to root and run npm run deploy-docs to update the docs at https://mapbox.github.io/mr-ui/