Android Palette API brought to react native. It extracts prominent colors from images to help you create visually engaging apps. At the moment it only supports Android.
Check out this medium article for a broader introduction!
Installation and setup guide can be found here: Setup guide.
createMaterialPalette
import { createMaterialPalette } from "react-native-material-palette";
const palette = await createMaterialPalette({ uri: 'http://dummySite/images/yummy.jpg' });
MaterialPaletteProvider
and withMaterialPalette
import { MaterialPaletteProvider, withMaterialPalette } from 'react-native-material-palette';
const PaletteView = withMaterialPalette(
palette => ({ backgroundColor: palette.vibrant.color }),
)(View);
// later ...
<MaterialPaletteProvider
image={require('../assets/image.png')}
options={{
type: 'vibrant',
}}
defaults={{
vibrant: {
color: '#3792dd',
bodyTextColor: '#ffffff',
titleTextColor: '#ffffff',
},
}}
>
<PaletteView style={{ flex: 1 }}>
<Text>Hello World</Text>
</PaletteView>
</MaterialPaletteProvider>
Full API documentation can be found here: API documentation.
The repo includes an example app that covers all the API cases. Go here to try it out!
Development instructions can be found here: react-native-material-palette
development.