You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
See [this guide](https://codehike.org/docs/installation/contentlayer).
3
+
See [this guide](https://codehike.org/docs/installation/contentlayer) or try it on [Stackblitz](https://stackblitz.com/github/code-hike/codehike/tree/main/examples/contentlayer).
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus. Praesent elementum facilisis leo vel fringilla. Congue mauris rhoncus aenean vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies.
20
10
21
11
<CH.Scrollycoding>
22
12
@@ -28,6 +18,8 @@ Also, make sure you include `"md"` and `"mdx"` on the _`pageExtensions`_ setting
28
18
29
19
After this step, you can use MDX files in your project, but you can't use Code Hike yet.
30
20
21
+
<CH.Code>
22
+
31
23
{/* prettier-ignore */}
32
24
```js next.config.js
33
25
constwithMDX=require("@next/mdx")({
@@ -47,6 +39,17 @@ module.exports = withMDX({
47
39
48
40
---
49
41
42
+
```css index.css
43
+
.scrollycoding {
44
+
overflow: auto;
45
+
max-height: calc(100vh-100px);
46
+
}
47
+
```
48
+
49
+
</CH.Code>
50
+
51
+
---
52
+
50
53
To set up Code Hike you need to [import the <CH.InlineCode>@code-hike/mdx</CH.InlineCode> plugin](focus://1,6[1:6]), and add it to the remarkPlugins array in the next.config.js file.
51
54
52
55
You will also want to import a theme. You can import one from shiki, or make a custom one.
@@ -81,6 +84,8 @@ Then you need to create a `pages/_app.js` file if you don't have one.
81
84
82
85
You can find more information about the `_app.js` file in the [Next.js official docs](https://nextjs.org/docs/advanced-features/custom-app).
83
86
87
+
<CH.Codeshow={["pages/_app.js"]}>
88
+
84
89
{/* prettier-ignore */}
85
90
```js pages/_app.js
86
91
functionMyApp({ Component, pageProps }) {
@@ -90,6 +95,8 @@ function MyApp({ Component, pageProps }) {
90
95
exportdefaultMyApp
91
96
```
92
97
98
+
</CH.Code>
99
+
93
100
---
94
101
95
102
The pages/\_app.js file is where you add global stylesheets in Next.js.
@@ -98,8 +105,14 @@ Here we need to import Code Hike's CSS.
98
105
99
106
If you want to customize Code Hike's styles with a global stylesheet make sure to import it after this import to avoid specificity issues.
@@ -109,12 +122,16 @@ function MyApp({ Component, pageProps }) {
109
122
exportdefaultMyApp
110
123
```
111
124
125
+
</CH.Code>
126
+
112
127
---
113
128
114
129
Now you can create mdx files using codehike.
115
130
116
131
Markdown (.md) files should also work.
117
132
133
+
<CH.Codeshow={["next.config.js","pages/my.mdx"]}>
134
+
118
135
{/* prettier-ignore */}
119
136
~~~md pages/my.mdx
120
137
# Hello
@@ -128,8 +145,16 @@ print("Rendered with Code Hike")
128
145
Lorem ipsum dolor sit amet.
129
146
~~~
130
147
148
+
</CH.Code>
149
+
131
150
</CH.Scrollycoding>
132
151
133
152
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus. Praesent elementum facilisis leo vel fringilla. Congue mauris rhoncus aenean vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies.
134
153
154
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus. Praesent elementum facilisis leo vel fringilla. Congue mauris rhoncus aenean vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies.
155
+
156
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus. Praesent elementum facilisis leo vel fringilla. Congue mauris rhoncus aenean vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies.
157
+
135
158
Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus. Praesent elementum facilisis leo vel fringilla. Congue mauris rhoncus aenean vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies.
Copy file name to clipboardExpand all lines: packages/mdx/dev/content/section.mdx
+25-2
Original file line number
Diff line number
Diff line change
@@ -4,8 +4,8 @@ Lorem ipsum dolor sit amet.
4
4
5
5
<CH.Section>
6
6
7
-
Consectetur adipiscing elit, sed do eiusmod tempor [incididunt](focus://4:7) ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget.
8
-
_`orem`_, _`sum`_
7
+
Consectetur adipiscing elit, sed do eiusmod tempor [incididunt](focus://4:7) ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget._`rem(ipsum, dol`_ xxx
8
+
_`orem`_, xxx _`sum`_
9
9
10
10
```js
11
11
functionlorem(ipsum, dolor) {
@@ -49,3 +49,26 @@ function lorem(ipsum, dolor) {
49
49
_`ackground-color: va`_
50
50
51
51
</CH.Section>
52
+
53
+
## Issue #117
54
+
55
+
<CH.Section>
56
+
57
+
{/* prettier-ignore */}
58
+
```js
59
+
constPostLayout= ({ post }) => {
60
+
constMDXContent=useMDXComponent(
61
+
post.body.code
62
+
)
63
+
return (
64
+
<article style={{ width:600 }}>
65
+
<h1>{post.title}</h1>
66
+
<MDXContent />
67
+
</article>
68
+
)
69
+
}
70
+
```
71
+
72
+
It transforms the _`post.body.code`_ into a React component.
0 commit comments