Skip to content

gmsgowtham/react-native-code-highlighter

Repository files navigation

react-native-code-highlighter

GitHub CI Coverage Status npm npm

Code/Syntax highlighter for React Native. Inspired by react-native-syntax-highlighter, using react-syntax-highlighter

Installation

NPM

npm install react-native-code-highlighter react-syntax-highlighter

Yarn

yarn add react-native-code-highlighter react-syntax-highlighter

Additional for typescript

NPM

npm install --save-dev @types/react-syntax-highlighter

Yarn

yarn add -D @types/react-syntax-highlighter

Usage

Props

Prop Description Type Optional
hljsStyle Highlight.js style imported from react-syntax-highlighter/dist/esm/styles/hljs { [key: string]: React.CSSProperties } false
textStyle Style for the text text components. Note: color property will be overridden StyleProp<TextStyle> true
scrollViewProps Props for the underlying scroll view. horizontal is ignored ScrollViewProps true
containerStyle Deprecated. containerStyle for the underlying ScrollView. Use scrollViewProps.contentContainerStyle instead StyleProp<ViewStyle> true
react-syntax-highlighter Props Props supported by react-syntax-highlighter. i.e. language

Example

import React from "react";
import { StyleSheet } from "react-native";
import CodeHighlighter from "react-native-code-highlighter";
import { atomOneDarkReasonable } from "react-syntax-highlighter/dist/esm/styles/hljs";

const CODE_STR = `var hello = "world"`;

export default function HighlightComponent() {
	return (
		<CodeHighlighter
			hljsStyle={atomOneDarkReasonable}
			containerStyle={styles.codeContainer}
			textStyle={styles.text}
			language="typescript"
		>
			{CODE_STR}
		</CodeHighlighter>
	);
}

const styles = StyleSheet.create({
	codeContainer: {
		padding: 16,
		minWidth: "100%",
	},
	text: {
		fontSize: 16,
	},
});

CodeSandbox: https://codesandbox.io/s/react-native-code-highligher-knfsyx?file=/src/App.js

Screenshots

Image

Contributing

See the contributing guide to learn how to contribute to the repository and the development workflow.

License

MIT


Built using

Buy Me A Coffee

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy