Skip to content

Commit 2bf3ba4

Browse files
committed
chore(playground):update readme
1 parent 22ee7aa commit 2bf3ba4

File tree

1 file changed

+19
-24
lines changed

1 file changed

+19
-24
lines changed

playground/README.md

Lines changed: 19 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,25 @@
1-
# React + TypeScript + Vite
1+
# react-shiki-example
22

3-
This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
3+
## Syntax highlighter component for react using shiki
44

5-
Currently, two official plugins are available:
5+
### Usage
66

7-
- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh
8-
- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh
9-
10-
## Expanding the ESLint configuration
11-
12-
If you are developing a production application, we recommend updating the configuration to enable type aware lint rules:
13-
14-
- Configure the top-level `parserOptions` property like this:
15-
16-
```js
17-
export default {
18-
// other rules...
19-
parserOptions: {
20-
ecmaVersion: 'latest',
21-
sourceType: 'module',
22-
project: ['./tsconfig.json', './tsconfig.node.json', './tsconfig.app.json'],
23-
tsconfigRootDir: __dirname,
24-
},
7+
```tsx
8+
function AyuDark() {
9+
return (
10+
<ShikiHighlighter language="jsx" theme="ayu-dark">
11+
{code.trim()}
12+
</ShikiHighlighter>
13+
);
2514
}
2615
```
16+
The ShikiHighlighter is imported in your project and used as a component, with code to be highlighted passed as children.
17+
18+
Shiki handles dynamically imports only the languages and themes used on the page.
19+
20+
The component accepts several props in addition to language and theme:
2721

28-
- Replace `plugin:@typescript-eslint/recommended` to `plugin:@typescript-eslint/recommended-type-checked` or `plugin:@typescript-eslint/strict-type-checked`
29-
- Optionally add `plugin:@typescript-eslint/stylistic-type-checked`
30-
- Install [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and add `plugin:react/recommended` & `plugin:react/jsx-runtime` to the `extends` list
22+
- `showLanguage: boolean` - Shows the language name in the top right corner of the code block.
23+
- `style: object` - Style object to be passed to the component.
24+
- `as: string` - The component to be rendered. Defaults to 'pre'.
25+
- `className: string` - Class name to be passed to the component.

0 commit comments

Comments
 (0)