Next Your Home

Blog

blog

nextjs

Welocome!

next your home bannernext your home banner

What is it?

🏠 Blog

  1. Focus on Content
  2. Focus on UI/UX
  3. Focus on Performance
  4. Focus on Intuitive Layout
  5. Focus on Maintanance
  6. Focus on Customizability
πŸ’‘

Visit Next Your Home Guide built with this template

πŸ›  Tech stack

  1. Language πŸ“œ
    • typescript
  2. Framework βš™οΈ
    • NextJs
  3. Styling πŸ’…
    • styled-components
  4. Markup πŸ“
    • mdx
      • πŸ“Œ More than markdown, it's rich
      • πŸ“Œ Use javascript expressions
      • πŸ“Œ Use JSX
      • πŸ”Ž Explore more features on official MDX site
    • mdx-bundler
      • πŸ“¦ Import pure react component in .mdx post files
      • πŸ”Ž Visit mdx-bundler for more config options

Why should I use it?

πŸ˜€ Easy to start

πŸ”₯ Performance

😲 Intuitive post grouping

  • πŸ“Œ Category based grouping
    • And you can describe the category
  • πŸ“Œ Category pagination
    • Configurable with blog.config.ts
  • πŸ“Œ 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 the partytownπŸŽ‰ thread and get the performance (partytown πŸ”Ž)
  • πŸ“Œ 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 copy button
  • etc...

How can I start?

  1. Click Use this template button in this page and make own repo with 1commit

    • Get this repo to your local development env
  2. Install packages

    pnpm i
    
    bash
    • this project use pnpm for package managing

    • if pnpm is not installed, visit pnpm install guide

      npm install -g pnpm
      
      bash
  3. Update πŸ“œ blog.config.ts, πŸ“œ public/robots.txt

    1. blog.config.ts:
      • authorInfo
        • name
        • currentState
        • currentGoal
        • contacts
      • blogInfo
        • url: deploy url
        • siteName
        • subtitle
        • language
    2. at public/robots.txt:
      • update Sitemap to your deploy url
  4. Dev test

    pnpm dev
    
    bash

    port 3000 will be used by default

  5. First post

    pnpm post
    
    bash
  6. Build test

    pnpm build
    
    bash

    build result in .next folder

  7. Deploy with vercel

    1. make account
    2. choose blog repo
    3. follow vercel deploy step or click deploy button below

How can I customize?

  • Check config options in blog.config.ts
  • Easy to customize
    1. πŸ™Œ You know react
    2. πŸ™Œ You know styled-components
    3. πŸ™Œ Just modify the style that you want to
  • Whole project includes README.md about structures and description

Questions you might have!

πŸ€” Why not use gatsby?

  1. Stricter than NextJs

  2. Use graphql for content api

    • just use typescript
    • for the people don't know about graphql
  3. Rely on gatsby community to implement some feature

πŸ€” How much fast you mean?

  1. Run pagespeed test

    • desktop result: 100 / 100 / 100 / 100
    • mobile result: 100 / 97 / 100 / 100
  2. Run Webpage Test: pretty good

  3. Check build bundle size result below

    Page                                         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λ…„ 08μ›” 01일

β€’

Thanks For Reading !

What is MDX component?

Blog의 λ§ˆμ§€λ§‰ κΈ€μ΄μ—μš”!