Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
ffd56f4
chore: initial astro setup
Solant Jan 29, 2026
266a4ad
feat: add i18n
Solant Jan 29, 2026
934d8a1
add get-started pages
Solant Feb 2, 2026
f73c218
docs: migrate /get-started/tutorial page
Solant Feb 4, 2026
0f402ee
chore: add discord link
Solant Feb 4, 2026
a687cd2
docs: migrate /guides/examples/auth
Solant Feb 4, 2026
9c604c8
chore: ignore .astro
Solant Feb 4, 2026
708e3b9
docs(kr): fix title mismatch in Next.js guide (#896)
choisuhyeok1255 Jan 29, 2026
91626ec
docs: code smells/cross-imports add (#888)
Gaic4o Feb 3, 2026
0d0362f
docs: refactor desegmentation page (#895)
Solant Feb 3, 2026
1ae476f
docs: migrate examples/guides/types
Solant Feb 5, 2026
d87edb9
docs: migrate guides/examples/page-layout
Solant Feb 5, 2026
64d00ba
docs: migrate guides/examples/api-requests
Solant Feb 5, 2026
acfcf1e
docs: migrate guides/migration articles
Solant Feb 5, 2026
9d2a585
docs: migrate tech category
Solant Feb 5, 2026
df2c27a
docs: migrate issues
Solant Feb 5, 2026
ede6c0b
docs: migrate reference
Solant Feb 5, 2026
c2d24fd
chore: add fsd logo
Solant Feb 5, 2026
89e2a4d
docs: change home page
Solant Feb 5, 2026
47d72ff
chore: replace build script with astro
Solant Feb 5, 2026
da53d39
docs: add favicon
Solant Feb 6, 2026
b09f16d
docs: add missing en pages
Solant Feb 6, 2026
ba284d8
docs: add llms.txt support
Solant Feb 6, 2026
0cf06f4
docs: follow exiting docs routing
Solant Feb 6, 2026
844e28f
add missing root pages
Solant Feb 6, 2026
b841a29
fix language order and social links
Solant Feb 6, 2026
04fc231
add sidebar ru translations
Solant Feb 6, 2026
48001ac
add ru translations for get-started
Solant Feb 6, 2026
9f28aab
migrate ru/docs/about articles
Solant Feb 6, 2026
335d2ba
add ru/docs/reference articles
Solant Feb 7, 2026
c6826b3
use aside consistently across the files
Solant Feb 7, 2026
077d9a0
migrate ru guides
Solant Feb 7, 2026
d8f76c6
add ja translations
Solant Feb 7, 2026
fb6ee7e
migrate the rest of ja articles
Solant Feb 8, 2026
bbeaee3
add uz translations
Solant Feb 8, 2026
1f4b2d0
migrate kr about articles
Solant Feb 8, 2026
3e453c7
add korean translations
Solant Feb 8, 2026
e5d00e6
add vi translations
Solant Feb 9, 2026
bce0114
add missing Aside components
Solant Feb 9, 2026
1e45462
fix linter
Solant Feb 9, 2026
99562f9
add missing component
Solant Feb 9, 2026
aac4afd
add zh translations
Solant Feb 9, 2026
0d06dfa
add available category translations
Solant Feb 10, 2026
efc0227
add placeholder home pages
Solant Feb 10, 2026
5ea9efd
fix review comments
Solant Feb 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,13 @@ module.exports = {
"linebreak-style": [2, "unix"],
"import/no-unresolved": [
2,
{ ignore: ["^@theme", "^@docusaurus/plugin-content-docs/client"] },
{
ignore: [
"^@theme",
"^@docusaurus/plugin-content-docs/client",
"astro:content",
],
},
],
"import/extensions": 0,
"import/no-extraneous-dependencies": 0,
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
# IDE
.idea

# Astro
.astro

# Dependencies
node_modules

Expand Down
166 changes: 166 additions & 0 deletions astro.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,166 @@
// @ts-check
import { defineConfig } from "astro/config";
import starlight from "@astrojs/starlight";
import remarkHeaderId from "remark-heading-id";
import starlightLlmsTxt from "starlight-llms-txt";

// https://astro.build/config
export default defineConfig({
outDir: "./build",
site: "https://fsd.how",
markdown: {
remarkPlugins: [remarkHeaderId],
},
integrations: [
starlight({
title: "Feature-Sliced Design",
favicon: "./static/img/favicon/adaptive.svg",
defaultLocale: "root",
customCss: ["./src/styles/custom.css"],
logo: {
src: "./static/img/brand/logo-primary.png",
replacesTitle: true,
},
plugins: [starlightLlmsTxt()],
locales: {
root: {
label: "English",
lang: "en",
},
ru: {
label: "Русский",
},
uz: {
label: "O'zbekcha",
},
kr: {
label: "한국어",
lang: "ko",
},
ja: {
label: "日本語",
},
vi: {
label: "Tiếng Việt",
},
zh: {
label: "中文",
},
},
social: [
{
icon: "github",
label: "GitHub",
href: "https://github.com/feature-sliced/documentation",
},
{
icon: "discord",
label: "Discord",
href: "https://discord.gg/S8MzWTUsmp",
},
],
sidebar: [
{
label: "🚀 Get Started",
translations: {
ru: "🚀 Начало работы",
ja: "🚀 はじめに",
},
autogenerate: { directory: "docs/get-started" },
},
{
label: "🎯 Guides",
translations: {
ru: "🎯 Гайды",
ja: "🎯 ガイド",
},
items: [
{
label: "Examples",
translations: {
ru: "Примеры",
ja: "例",
},
autogenerate: { directory: "docs/guides/examples" },
},
{
label: "Migration",
translations: {
ru: "Миграция",
ja: "移行",
uz: "Migratsiya",
},
autogenerate: {
directory: "docs/guides/migration",
},
},
{
label: "Tech",
translations: {
ru: "Технологии",
ja: "技術",
uz: "Texnologiya",
},
autogenerate: { directory: "docs/guides/tech" },
},
{
label: "Code smells & Issues",
translations: {
ru: "Известные проблемы",
ja: "コード臭いと問題",
uz: "Muammolar",
},
autogenerate: { directory: "docs/guides/issues" },
},
],
},
{
label: "📚 Reference",
translations: {
ru: "📚 Справочник",
ja: "📚 参考書",
},
autogenerate: { directory: "docs/reference" },
},
{
label: "🍰 About",
translations: {
ru: "🍰 О нас",
ja: "🍰 メソッドについて",
},
items: [
{
slug: "docs/about/mission",
},
{
slug: "docs/about/motivation",
},
{
slug: "docs/about/alternatives",
},
{
label: "Understanding",
translations: {
ru: "Понимание",
ja: "理解",
},
autogenerate: {
directory: "docs/about/understanding",
},
collapsed: true,
},
{
label: "Promote",
translations: {
ru: "Продвижение",
ja: "プロモート",
},
autogenerate: { directory: "docs/about/promote" },
collapsed: true,
},
],
},
],
}),
],
});
Loading