logo

About This Site

Introduction

This is Riku-Mono's portfolio site.

I publish information about myself, blog posts, and works.

Currently, the site is built with Next.js v15 (App Router - TypeScript) and uses contentlayer2 for page composition and management with MDX files.

Site Structure

How to Use

  1. pnpm install
  2. pnpm dev
  3. Check at localhost:3000

Writing Guide

Blog Posts

  1. Create posts in src/contents/posts/[lang]/ for each language.
  2. Set the filename as src/contents/posts/[lang]/[slug].mdx.
  3. Configure post information in the Front Matter of src/contents/posts/[lang]/[slug].mdx.

Works

  1. Create works in src/contents/works/[lang]/ for each language.
  2. Set the filename as src/contents/works/[lang]/[slug].mdx.
  3. Configure work information in the Front Matter of src/contents/works/[lang]/[slug].mdx.

For required Front Matter information and configuration methods, please refer to Properties Available on This Site.

How to Add a New Language

  1. Add the language code to src/i18n/i18nLocales.js.
src/i18n/i18nLocales.js
  1. Create a directory with the language code in src/contents/posts/[lang]/, src/contents/pages/[lang], src/contents/categories/[lang], src/i18n/locales/[lang].

  2. In src/contents/posts/[lang]/ and src/contents/pages/[lang], if a corresponding language translation file doesn't exist, it will reference the defaultLocale file, so immediate translation is not necessary.

  3. Add category translations in src/contents/categories/[lang]. Please create all files by referring to the categories in the defaultLocale directory.

  4. Add language file translations in src/i18n/locales/[lang]. Please create all files by referring to the files in the defaultLocale directory.

  5. Add language metadata to scr/contents/siteLocaleMetadata.js.

src/contents/siteLocaleMetadata.js