Blog
blog
nextJs
Before You Read
Welocome!
next your home banner
What is it?
🏠 Blog
- Focus on Content
- Focus on UI/UX
- Focus on Performance
- Focus on Intuitive Layout
- Focus on Maintanance
- Focus on Customizability
💡Visit Next Your Home Guide built with this template
🛠 Tech stack
- Language 📜
typescript
- Framework ⚙️
NextJs
- Styling 💅
styled-components
- Markup 📝
mdx
- 📌 More than
markdown
, it's rich - 📌 Use
javascript expressions
- 📌 Use
JSX
- 🔎 Explore more features on official MDX site
- 📌 More than
mdx-bundler
- 📦 Import pure
react component
in.mdx
post files - 🔎 Visit mdx-bundler for more config options
- 📦 Import pure
Why should I use it?
😀 Easy to start
- 📌 You know
react
- 📌 Zero env configuration
- 📌 Easy deploying via
vercel
(Power of vercel + NextJs 🔎) - 📦 Easy posting with built in CLI🎉 tool
🔥 Performance
- 📌 Light house score
100
- 📌 SEO support with
next-seo
(More info about this package 🔎) - 📌 Bundle size optimized
Preact
on production build (3kb
) (What is Preact? 🔎)- etc...
😲 Intuitive post grouping
- 📌 Category based grouping
- And you can describe the category
- 📌 Category pagination
- Configurable with
blog.config.ts
- Configurable with
- 📌 Post series
- Group your post by subtitle
📔 Reading focused UI/UX
- 📌 Intuitive UI Elements
- 📌 Easy navigation with
post controller
- 📌 Less vertical scrolling for searching post
- 📌 Device width based, sized text content
🎨 Show your personality with colors
- 📌 You can set color for each category and post
- 📌 Your personal color will be adapted
- 📌 Different, but consistent design
🍻 Features
- 📌
Light
/Dark
mode full support - 📌 Intergrate Profile with full feature of
mdx
- 📌 Table of content on
desktop
/mobile
(optional on mobile) - 📌 Image optimization with
next/image
(More info about next/image 🔎) - 📌 Automatic image size support for
static
/external
- 📌 Automatic pagination
- 📌 Recover scroll position when navigating to previous page
- 📌 Analyze visitors with
Google Analytics
! Run it on thepartytown🎉
thread and get the performance - 📌 Support
sitemap
,rss
generation on build - 📌 Math
katex
support (optional) - 📌 Automatic post refreshing in
dev
mode - 📌 Specific
error
informations about blog posts - 📌 Decent
code
block with code copybutton
- etc...
How can I start?
-
Click
Use this template
button in this page and make ownrepo
with1commit
- Get this
repo
to yourlocal
development env
- Get this
-
Install packages
pnpm i
bash-
this project use
pnpm
for package managing -
if
pnpm
is not installed, visit pnpm install guidenpm install -g pnpm
bash
-
-
Update 📜
blog.config.ts
, 📜public/robots.txt
blog.config.ts
:authorInfo
- name
- currentState
- currentGoal
- contacts
blogInfo
- url: deploy url
- siteName
- subtitle
- language
- at
public/robots.txt
:- update
Sitemap
to your deploy url
- update
-
Dev test
pnpm dev
bashport
3000
will be used by default -
First post
pnpm post
bash -
Build test
pnpm build
bashbuild result in
.next
folder -
Deploy with
vercel
- make account
- choose blog repo
- follow vercel deploy step or click
deploy
button below
How can I customize?
- Check config options in
blog.config.ts
- Easy to customize
- 🙌 You know
react
- 🙌 You know
styled-components
- 🙌 Just modify the style that you want to
- 🙌 You know
- Whole project includes
README.md
about structures and description
Questions you might have!
🤔 Why not use gatsby
?
gatsby
?-
Stricter than
NextJs
-
Use
graphql
for content api- just use
typescript
- for the people don't know about
graphql
- just use
-
Rely on
gatsby
community to implement some feature
🤔 How much fast you mean?
-
Run pagespeed test
desktop
result:100
/100
/100
/100
mobile
result:100
/97
/100
/100
-
Run Webpage Test: pretty good
-
Check build
bundle size
result belowPage Size First Load JS ┌ ● / 1.46 kB 91.1 kB ├ /_app 0 B 70.3 kB ├ ● /[category] 748 B 90.4 kB ├ ● /[category]/[pageNumber] 832 B 90.5 kB ├ ● /[category]/[pageNumber]/[postTitle] 1.64 kB 96.8 kB ├ ○ /404 269 B 70.6 kB ├ ○ /500 269 B 70.6 kB ├ ● /category 3.21 kB 78.1 kB └ ● /profile 2.68 kB 89 kB + First Load JS shared by all 70.3 kB ├ chunks/main-be00b42900d433cc.js 36.8 kB ├ chunks/pages/_app-764e610a6d9ea0f7.js 32.7 kB ├ chunks/webpack-3373b0f21806983f.js 827 B └ css/a36597fbcc4c45ff.css 813 B
bash
LICENSE
const LICENSE = "MIT 🎉" const KOR = "감사합니다 😎" const ENG = "Thanks 😎"
ts
danpacho
•
2022년 07월 27일
•
Thanks For Reading !
Blog 글 목록으로 돌아가기
Blog의 마지막 글이에요!