From 92eb1d56161697d5c28d43d37c778bea3ec5626e Mon Sep 17 00:00:00 2001 From: Noa Virellia Date: Tue, 9 Dec 2025 16:27:26 +0800 Subject: [PATCH 1/5] feat(docs/meetup-2-guide): add register and badge customization actions Signed-off-by: Noa Virellia --- src/content/docs/en/meetup-2-guide.mdx | 9 ++++++++- src/content/docs/meetup-2-guide.mdx | 8 ++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/content/docs/en/meetup-2-guide.mdx b/src/content/docs/en/meetup-2-guide.mdx index 8f6f4a2..b556289 100644 --- a/src/content/docs/en/meetup-2-guide.mdx +++ b/src/content/docs/en/meetup-2-guide.mdx @@ -4,7 +4,7 @@ description: 'Nix CN Meetup #2 is the second Nix-themed meetup in China. We aim sidebar: label: 'Meetup #2 Guide' --- - +import { LinkButton } from '@astrojs/starlight/components'; import { Aside } from '@astrojs/starlight/components'; @@ -17,6 +17,13 @@ Nix CN Meetup #2 is the second Nix-themed gathering in China. We aim to bring to - **Venue:** Dong Xiayuan Building, Shanghai Jiao Tong University, Minhang Campus (800 Dongchuan Road, Minhang District, Shanghai) + + Register + + + Name Badge Customization Request (Coming Soon) + + ## Transportation Information ### Arriving in Shanghai diff --git a/src/content/docs/meetup-2-guide.mdx b/src/content/docs/meetup-2-guide.mdx index dfe4437..f518889 100644 --- a/src/content/docs/meetup-2-guide.mdx +++ b/src/content/docs/meetup-2-guide.mdx @@ -4,6 +4,7 @@ description: 'Nix CN Meetup #2 是国内第二次以 Nix 为主题的聚会。 sidebar: label: 'Meetup #2 参会指南' --- +import { LinkButton } from '@astrojs/starlight/components'; Nix/NixOS CN Meetup #2 是国内第二次以 Nix 为主题的聚会。我们希望汇聚国内 NixOS 爱好者、开发者和实践者,共同分享 NixOS 的使用经验、最佳实践以及在不同场景下的应用案例。 @@ -12,6 +13,13 @@ Nix/NixOS CN Meetup #2 是国内第二次以 Nix 为主题的聚会。我们希 - 日期(UTC +8):2025/12/27 (Sat.) ~ 2025/12/28 (Sun.) - 地点:上海交通大学闵行校区(上海市闵行区东川路800号)东下院 + + 填写报名表 + + + 填写名牌定制需求表(尚未开放) + + ## 交通信息 ### 抵达上海 -- 2.49.1 From 8bcc73bab50e175c407e9246dab62e412d1e628c Mon Sep 17 00:00:00 2001 From: Noa Virellia Date: Tue, 9 Dec 2025 16:28:06 +0800 Subject: [PATCH 2/5] feat(prettier): support astro and fix mdx formatting - Added prettier-plugin-astro as dev dependency - Removed incorrect top-level "typescript" parser config - This causes the MDX files be parsed as typescript and error out. Signed-off-by: Noa Virellia --- .prettierrc.json | 10 ++++++- package.json | 6 ++++- pnpm-lock.yaml | 70 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 84 insertions(+), 2 deletions(-) diff --git a/.prettierrc.json b/.prettierrc.json index 8398ff1..d68d18e 100644 --- a/.prettierrc.json +++ b/.prettierrc.json @@ -1,4 +1,13 @@ { + "plugins": ["prettier-plugin-astro"], + "overrides": [ + { + "files": "*.astro", + "options": { + "parser": "astro" + } + } + ], "printWidth": 120, "tabWidth": 4, "useTabs": false, @@ -11,7 +20,6 @@ "objectWrap": "preserve", "bracketSameLine": false, "arrowParens": "always", - "parser": "typescript", "proseWrap": "preserve", "htmlWhitespaceSensitivity": "ignore", "vueIndentScriptAndStyle": false, diff --git a/package.json b/package.json index bf83935..0405caa 100644 --- a/package.json +++ b/package.json @@ -15,5 +15,9 @@ "astro": "^5.6.1", "sharp": "^0.34.2" }, + "devDependencies": { + "prettier": "^3.7.4", + "prettier-plugin-astro": "^0.14.1" + }, "packageManager": "pnpm@10.25.0+sha512.5e82639027af37cf832061bcc6d639c219634488e0f2baebe785028a793de7b525ffcd3f7ff574f5e9860654e098fe852ba8ac5dd5cefe1767d23a020a92f501" -} +} \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e2bd34b..b2a016a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -20,6 +20,13 @@ importers: sharp: specifier: ^0.34.2 version: 0.34.5 + devDependencies: + prettier: + specifier: ^3.7.4 + version: 3.7.4 + prettier-plugin-astro: + specifier: ^0.14.1 + version: 0.14.1 packages: @@ -284,89 +291,105 @@ packages: resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==} cpu: [arm64] os: [linux] + libc: [glibc] '@img/sharp-libvips-linux-arm@1.2.4': resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==} cpu: [arm] os: [linux] + libc: [glibc] '@img/sharp-libvips-linux-ppc64@1.2.4': resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==} cpu: [ppc64] os: [linux] + libc: [glibc] '@img/sharp-libvips-linux-riscv64@1.2.4': resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==} cpu: [riscv64] os: [linux] + libc: [glibc] '@img/sharp-libvips-linux-s390x@1.2.4': resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==} cpu: [s390x] os: [linux] + libc: [glibc] '@img/sharp-libvips-linux-x64@1.2.4': resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==} cpu: [x64] os: [linux] + libc: [glibc] '@img/sharp-libvips-linuxmusl-arm64@1.2.4': resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==} cpu: [arm64] os: [linux] + libc: [musl] '@img/sharp-libvips-linuxmusl-x64@1.2.4': resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==} cpu: [x64] os: [linux] + libc: [musl] '@img/sharp-linux-arm64@0.34.5': resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [linux] + libc: [glibc] '@img/sharp-linux-arm@0.34.5': resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm] os: [linux] + libc: [glibc] '@img/sharp-linux-ppc64@0.34.5': resolution: {integrity: sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [ppc64] os: [linux] + libc: [glibc] '@img/sharp-linux-riscv64@0.34.5': resolution: {integrity: sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [riscv64] os: [linux] + libc: [glibc] '@img/sharp-linux-s390x@0.34.5': resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [s390x] os: [linux] + libc: [glibc] '@img/sharp-linux-x64@0.34.5': resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [linux] + libc: [glibc] '@img/sharp-linuxmusl-arm64@0.34.5': resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [linux] + libc: [musl] '@img/sharp-linuxmusl-x64@0.34.5': resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [linux] + libc: [musl] '@img/sharp-wasm32@0.34.5': resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==} @@ -476,56 +499,67 @@ packages: resolution: {integrity: sha512-k9oD15soC/Ln6d2Wv/JOFPzZXIAIFLp6B+i14KhxAfnq76ajt0EhYc5YPeX6W1xJkAdItcVT+JhKl1QZh44/qw==} cpu: [arm] os: [linux] + libc: [glibc] '@rollup/rollup-linux-arm-musleabihf@4.53.3': resolution: {integrity: sha512-vTNlKq+N6CK/8UktsrFuc+/7NlEYVxgaEgRXVUVK258Z5ymho29skzW1sutgYjqNnquGwVUObAaxae8rZ6YMhg==} cpu: [arm] os: [linux] + libc: [musl] '@rollup/rollup-linux-arm64-gnu@4.53.3': resolution: {integrity: sha512-RGrFLWgMhSxRs/EWJMIFM1O5Mzuz3Xy3/mnxJp/5cVhZ2XoCAxJnmNsEyeMJtpK+wu0FJFWz+QF4mjCA7AUQ3w==} cpu: [arm64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-arm64-musl@4.53.3': resolution: {integrity: sha512-kASyvfBEWYPEwe0Qv4nfu6pNkITLTb32p4yTgzFCocHnJLAHs+9LjUu9ONIhvfT/5lv4YS5muBHyuV84epBo/A==} cpu: [arm64] os: [linux] + libc: [musl] '@rollup/rollup-linux-loong64-gnu@4.53.3': resolution: {integrity: sha512-JiuKcp2teLJwQ7vkJ95EwESWkNRFJD7TQgYmCnrPtlu50b4XvT5MOmurWNrCj3IFdyjBQ5p9vnrX4JM6I8OE7g==} cpu: [loong64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-ppc64-gnu@4.53.3': resolution: {integrity: sha512-EoGSa8nd6d3T7zLuqdojxC20oBfNT8nexBbB/rkxgKj5T5vhpAQKKnD+h3UkoMuTyXkP5jTjK/ccNRmQrPNDuw==} cpu: [ppc64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-riscv64-gnu@4.53.3': resolution: {integrity: sha512-4s+Wped2IHXHPnAEbIB0YWBv7SDohqxobiiPA1FIWZpX+w9o2i4LezzH/NkFUl8LRci/8udci6cLq+jJQlh+0g==} cpu: [riscv64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-riscv64-musl@4.53.3': resolution: {integrity: sha512-68k2g7+0vs2u9CxDt5ktXTngsxOQkSEV/xBbwlqYcUrAVh6P9EgMZvFsnHy4SEiUl46Xf0IObWVbMvPrr2gw8A==} cpu: [riscv64] os: [linux] + libc: [musl] '@rollup/rollup-linux-s390x-gnu@4.53.3': resolution: {integrity: sha512-VYsFMpULAz87ZW6BVYw3I6sWesGpsP9OPcyKe8ofdg9LHxSbRMd7zrVrr5xi/3kMZtpWL/wC+UIJWJYVX5uTKg==} cpu: [s390x] os: [linux] + libc: [glibc] '@rollup/rollup-linux-x64-gnu@4.53.3': resolution: {integrity: sha512-3EhFi1FU6YL8HTUJZ51imGJWEX//ajQPfqWLI3BQq4TlvHy4X0MOr5q3D2Zof/ka0d5FNdPwZXm3Yyib/UEd+w==} cpu: [x64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-x64-musl@4.53.3': resolution: {integrity: sha512-eoROhjcc6HbZCJr+tvVT8X4fW3/5g/WkGvvmwz/88sDtSJzO7r/blvoBDgISDiCjDRZmHpwud7h+6Q9JxFwq1Q==} cpu: [x64] os: [linux] + libc: [musl] '@rollup/rollup-openharmony-arm64@4.53.3': resolution: {integrity: sha512-OueLAWgrNSPGAdUdIjSWXw+u/02BRTcnfw9PN41D2vq/JSEPnJnVuBgw18VkN8wcd4fjUs+jFHVM4t9+kBSNLw==} @@ -1391,6 +1425,15 @@ packages: resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} engines: {node: ^10 || ^12 || >=14} + prettier-plugin-astro@0.14.1: + resolution: {integrity: sha512-RiBETaaP9veVstE4vUwSIcdATj6dKmXljouXc/DDNwBSPTp8FRkLGDSGFClKsAFeeg+13SB0Z1JZvbD76bigJw==} + engines: {node: ^14.15.0 || >=16.0.0} + + prettier@3.7.4: + resolution: {integrity: sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==} + engines: {node: '>=14'} + hasBin: true + prismjs@1.30.0: resolution: {integrity: sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==} engines: {node: '>=6'} @@ -1495,6 +1538,12 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true + s.color@0.0.15: + resolution: {integrity: sha512-AUNrbEUHeKY8XsYr/DYpl+qk5+aM+DChopnWOPEzn8YKzOhv4l2zH6LzZms3tOZP3wwdOyc0RmTciyi46HLIuA==} + + sass-formatter@0.7.9: + resolution: {integrity: sha512-CWZ8XiSim+fJVG0cFLStwDvft1VI7uvXdCNJYXhDvowiv+DsbD1nXLiQ4zrE5UBvj5DWZJ93cwN0NX5PMsr1Pw==} + sax@1.4.3: resolution: {integrity: sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ==} @@ -1561,6 +1610,9 @@ packages: style-to-object@1.0.14: resolution: {integrity: sha512-LIN7rULI0jBscWQYaSswptyderlarFkjQ+t79nzty8tcIAceVomEVlLzH5VP4Cmsv6MtKhs7qaAiwlcp+Mgaxw==} + suf-log@2.5.3: + resolution: {integrity: sha512-KvC8OPjzdNOe+xQ4XWJV2whQA0aM1kGVczMQ8+dStAO6KfEB140JEVQ9dE76ONZ0/Ylf67ni4tILPJB41U0eow==} + svgo@4.0.0: resolution: {integrity: sha512-VvrHQ+9uniE+Mvx3+C9IEe/lWasXCU0nXMY2kZeLrHNICuRiC8uMPyM14UEaMOFA5mhyQqEkB02VoQ16n3DLaw==} engines: {node: '>=16'} @@ -3645,6 +3697,14 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 + prettier-plugin-astro@0.14.1: + dependencies: + '@astrojs/compiler': 2.13.0 + prettier: 3.7.4 + sass-formatter: 0.7.9 + + prettier@3.7.4: {} + prismjs@1.30.0: {} prompts@2.4.2: @@ -3851,6 +3911,12 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.53.3 fsevents: 2.3.3 + s.color@0.0.15: {} + + sass-formatter@0.7.9: + dependencies: + suf-log: 2.5.3 + sax@1.4.3: {} semver@7.7.3: {} @@ -3949,6 +4015,10 @@ snapshots: dependencies: inline-style-parser: 0.2.7 + suf-log@2.5.3: + dependencies: + s.color: 0.0.15 + svgo@4.0.0: dependencies: commander: 11.1.0 -- 2.49.1 From 5f389533303a576da1298a9e26b61e2fe915c67d Mon Sep 17 00:00:00 2001 From: Noa Virellia Date: Tue, 9 Dec 2025 16:30:22 +0800 Subject: [PATCH 3/5] format(tree-wide): prettier - Fixed inconsistent tab width and quotes Signed-off-by: Noa Virellia --- package.json | 2 +- src/content/docs/en/index.mdx | 24 +++++----- src/content/docs/en/meetup-2-guide.mdx | 66 +++++++++++++------------- src/content/docs/index.mdx | 24 +++++----- src/content/docs/meetup-2-guide.mdx | 1 + 5 files changed, 60 insertions(+), 57 deletions(-) diff --git a/package.json b/package.json index 0405caa..8c7031e 100644 --- a/package.json +++ b/package.json @@ -20,4 +20,4 @@ "prettier-plugin-astro": "^0.14.1" }, "packageManager": "pnpm@10.25.0+sha512.5e82639027af37cf832061bcc6d639c219634488e0f2baebe785028a793de7b525ffcd3f7ff574f5e9860654e098fe852ba8ac5dd5cefe1767d23a020a92f501" -} \ No newline at end of file +} diff --git a/src/content/docs/en/index.mdx b/src/content/docs/en/index.mdx index 003abc1..fcf1bea 100644 --- a/src/content/docs/en/index.mdx +++ b/src/content/docs/en/index.mdx @@ -1,17 +1,17 @@ --- -title: "Nix CN" +title: 'Nix CN' description: Explore a reproducible future with the Nix CN community template: splash hero: - tagline: Explore a reproducible future with the Nix CN community - image: - file: ../../../assets/nix-flake-logo.svg - actions: - - text: "Meetup #2 Attendee Guide" - link: /en/meetup-2-guide - icon: right-arrow - - text: Join the event group - link: https://t.me/nixcnmeetup - icon: external - variant: minimal + tagline: Explore a reproducible future with the Nix CN community + image: + file: ../../../assets/nix-flake-logo.svg + actions: + - text: 'Meetup #2 Attendee Guide' + link: /en/meetup-2-guide + icon: right-arrow + - text: Join the event group + link: https://t.me/nixcnmeetup + icon: external + variant: minimal --- diff --git a/src/content/docs/en/meetup-2-guide.mdx b/src/content/docs/en/meetup-2-guide.mdx index b556289..eda9838 100644 --- a/src/content/docs/en/meetup-2-guide.mdx +++ b/src/content/docs/en/meetup-2-guide.mdx @@ -4,10 +4,11 @@ description: 'Nix CN Meetup #2 is the second Nix-themed meetup in China. We aim sidebar: label: 'Meetup #2 Guide' --- + import { LinkButton } from '@astrojs/starlight/components'; import { Aside } from '@astrojs/starlight/components'; - + Nix CN Meetup #2 is the second Nix-themed gathering in China. We aim to bring together NixOS enthusiasts, developers, and practitioners to share their experiences, best practices, and use cases of NixOS in various scenarios. @@ -44,12 +45,12 @@ Metro Line 2, Maglev, and the Airport Link Line stop at **Pudong Airport Termina From **Pudong Airport Terminal 1 & 2**, you may reach the venue using the following route: - **Airport Link Line → Metro Line 15** - - Fare: **21 CNY**. - Last Airport Link Line train departs at **22:00**. - - Take the Airport Link Line toward **Hongqiao Terminal 2**, get off at **Jinghong Road** Station, and transfer to Line 15 (transfer passage ~800 m). - - Take **Line 15** to **Zizhu High-tech Park** Station (some trains short-turn at Shuangbai Road; transfer if needed). - - Exit **Exit 6**, walk west along **Dongchuan Road** (~500 m) to **SJTU Minhang Campus South Gate**. - Alternatively, exit **Exit 7**, walk north along **Lianhua South Road** (~50 m) to **East Gate 3** of the campus. + - Fare: **21 CNY**. + Last Airport Link Line train departs at **22:00**. + - Take the Airport Link Line toward **Hongqiao Terminal 2**, get off at **Jinghong Road** Station, and transfer to Line 15 (transfer passage ~800 m). + - Take **Line 15** to **Zizhu High-tech Park** Station (some trains short-turn at Shuangbai Road; transfer if needed). + - Exit **Exit 6**, walk west along **Dongchuan Road** (~500 m) to **SJTU Minhang Campus South Gate**. + Alternatively, exit **Exit 7**, walk north along **Lianhua South Road** (~50 m) to **East Gate 3** of the campus. --- @@ -62,18 +63,18 @@ Metro Lines 2, 10, and 17 serve **Hongqiao Railway Station** (west side), and Li From **Hongqiao Terminal 2** or **Hongqiao Railway Station**, the recommended routes are: - **Airport Link Line → Line 15** - - Fare: **9 CNY**. - Airport Link Line frequency: ~15 min; last train **22:00**. - - Take the Airport Link Line toward **Pudong Airport**, get off at **Jinghong Road**, transfer to Line 15 (transfer passage ~800 m). - - Take Line 15 to **Zizhu High-tech Park** Station. - - Exit **Exit 6** → walk west along **Dongchuan Road** (~500 m) to **South Gate**. - Or exit **Exit 7** → walk north along **Lianhua South Road** (~50 m) to **East Gate 3**. + - Fare: **9 CNY**. + Airport Link Line frequency: ~15 min; last train **22:00**. + - Take the Airport Link Line toward **Pudong Airport**, get off at **Jinghong Road**, transfer to Line 15 (transfer passage ~800 m). + - Take Line 15 to **Zizhu High-tech Park** Station. + - Exit **Exit 6** → walk west along **Dongchuan Road** (~500 m) to **South Gate**. + Or exit **Exit 7** → walk north along **Lianhua South Road** (~50 m) to **East Gate 3**. - **Bus Minhong Line 2** - - Fare: **13 CNY**. - Frequency: 15–20 min (subject to holiday adjustments). - - Tickets must be purchased through the “江南定制专线” WeChat public account (select **Minhong Line 2 (Down) – Hongqiao High-speed Railway Station → Dongchuan Road Transit Hub**) or buy remaining tickets at boarding point. - - From **Dongchuan Road Transit Hub**, walk/ride east along **Dongchuan Road** (~1500 m) to **SJTU Minhang Campus (Siyuan Gate)**. + - Fare: **13 CNY**. + Frequency: 15–20 min (subject to holiday adjustments). + - Tickets must be purchased through the “江南定制专线” WeChat public account (select **Minhong Line 2 (Down) – Hongqiao High-speed Railway Station → Dongchuan Road Transit Hub**) or buy remaining tickets at boarding point. + - From **Dongchuan Road Transit Hub**, walk/ride east along **Dongchuan Road** (~1500 m) to **SJTU Minhang Campus (Siyuan Gate)**. --- @@ -85,10 +86,10 @@ Served by Metro Lines 1, 3, and 4 at **Shanghai Railway Station**. Recommended route: - **Line 1 → Line 5** - - Fare: **6 CNY**. - - Take Line 1 to **Xinzhuang** Station, transfer to Line 5 (transfer passage ~100 m). - - Take Line 5 to **Jianchuan Road** Station. - - Exit **Exit 1/2**, walk/ride west along **Jianchuan Road** (~1000 m) to **SJTU Minhang Campus North Gate 1**. + - Fare: **6 CNY**. + - Take Line 1 to **Xinzhuang** Station, transfer to Line 5 (transfer passage ~100 m). + - Take Line 5 to **Jianchuan Road** Station. + - Exit **Exit 1/2**, walk/ride west along **Jianchuan Road** (~1000 m) to **SJTU Minhang Campus North Gate 1**. --- @@ -100,10 +101,10 @@ Served by Metro Lines 1, 3, and 15. Recommended route: - **Line 15** - - Fare: **5 CNY**. - - Take Line 15 to **Zizhu High-tech Park** Station. - - Exit 6 → walk west along **Dongchuan Road** (~500 m) to **South Gate**. - Or exit 7 → walk north to **East Gate 3** (~50 m). + - Fare: **5 CNY**. + - Take Line 15 to **Zizhu High-tech Park** Station. + - Exit 6 → walk west along **Dongchuan Road** (~500 m) to **South Gate**. + Or exit 7 → walk north to **East Gate 3** (~50 m). --- @@ -123,6 +124,7 @@ Estimated taxi/ride-hailing fare: **50–60 CNY**. Venue: **Dong Xiayuan (East Upper Yard) Teaching Building** (exact room TBA). Location: Southeast area of the campus, near South Gate 2 (closed). Distances: + - ~1200 m from **Siyuan Gate / South Gate** - ~1600 m from **North Gate 1 / East Gate 3** @@ -131,12 +133,12 @@ Distances: ## Accommodation - **Shanghai Royal Century Hotel (Dalinghuowan International Convention Center)** - - Reference price: **~400 CNY / night** (standard twin room). - - Location: Northwest of the campus, ~800 m from North Gate 1. - - Personal notes: Very spacious rooms, good facilities; interior style is old-fashioned and overly luxurious; restaurant quality is poor—dining at **Longhu Paradise Walk** nearby is recommended. + - Reference price: **~400 CNY / night** (standard twin room). + - Location: Northwest of the campus, ~800 m from North Gate 1. + - Personal notes: Very spacious rooms, good facilities; interior style is old-fashioned and overly luxurious; restaurant quality is poor—dining at **Longhu Paradise Walk** nearby is recommended. - **Huazhu Group Hotels (Ji Hotel, Hanting, etc.)** - - Reference price: **~300 CNY / night** (twin room). - - Location: Southwest / northeast of the campus; all relatively far (1000+ m). - - Personal notes: Among Huazhu brands, **Ji Hotel (Dongchuan Road)** is the recommended option. - Nearby Hanting branches are not recommended and offer no price advantage. + - Reference price: **~300 CNY / night** (twin room). + - Location: Southwest / northeast of the campus; all relatively far (1000+ m). + - Personal notes: Among Huazhu brands, **Ji Hotel (Dongchuan Road)** is the recommended option. + Nearby Hanting branches are not recommended and offer no price advantage. diff --git a/src/content/docs/index.mdx b/src/content/docs/index.mdx index dd0eb6f..9c2127a 100644 --- a/src/content/docs/index.mdx +++ b/src/content/docs/index.mdx @@ -1,17 +1,17 @@ --- -title: "Nix CN" +title: 'Nix CN' description: 与 Nix 中文社群一起探索可复现的未来 template: splash hero: - tagline: 与 Nix 中文社群一起探索可复现的未来 - image: - file: ../../assets/nix-flake-logo.svg - actions: - - text: "Meetup #2 参会指南" - link: /meetup-2-guide - icon: right-arrow - - text: 加入活动群组 - link: https://t.me/nixcnmeetup - icon: external - variant: minimal + tagline: 与 Nix 中文社群一起探索可复现的未来 + image: + file: ../../assets/nix-flake-logo.svg + actions: + - text: 'Meetup #2 参会指南' + link: /meetup-2-guide + icon: right-arrow + - text: 加入活动群组 + link: https://t.me/nixcnmeetup + icon: external + variant: minimal --- diff --git a/src/content/docs/meetup-2-guide.mdx b/src/content/docs/meetup-2-guide.mdx index f518889..38c8483 100644 --- a/src/content/docs/meetup-2-guide.mdx +++ b/src/content/docs/meetup-2-guide.mdx @@ -4,6 +4,7 @@ description: 'Nix CN Meetup #2 是国内第二次以 Nix 为主题的聚会。 sidebar: label: 'Meetup #2 参会指南' --- + import { LinkButton } from '@astrojs/starlight/components'; Nix/NixOS CN Meetup #2 是国内第二次以 Nix 为主题的聚会。我们希望汇聚国内 NixOS 爱好者、开发者和实践者,共同分享 NixOS 的使用经验、最佳实践以及在不同场景下的应用案例。 -- 2.49.1 From e2fe4515001243c71327f6f5ea320e93e7c82ed1 Mon Sep 17 00:00:00 2001 From: Noa Virellia Date: Tue, 9 Dec 2025 16:34:48 +0800 Subject: [PATCH 4/5] feat(prettier): add .prettierignore - Excluded some yaml and lock files we don't want prettier to touch Signed-off-by: Noa Virellia --- .prettierignore | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .prettierignore diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..f2d08b2 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,6 @@ +.envrc +devenv.lock +devenv.yaml +devenv.nix +pnpm-lock.yaml +*.svg \ No newline at end of file -- 2.49.1 From ec3ed340b5119b3c52d805ed5f38092bf275c222 Mon Sep 17 00:00:00 2001 From: Noa Virellia Date: Tue, 9 Dec 2025 16:44:34 +0800 Subject: [PATCH 5/5] feat(docs/meetup-2-guide): add action button for talk reservation Signed-off-by: Noa Virellia --- src/content/docs/en/meetup-2-guide.mdx | 3 +++ src/content/docs/meetup-2-guide.mdx | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/content/docs/en/meetup-2-guide.mdx b/src/content/docs/en/meetup-2-guide.mdx index eda9838..e4d9137 100644 --- a/src/content/docs/en/meetup-2-guide.mdx +++ b/src/content/docs/en/meetup-2-guide.mdx @@ -21,6 +21,9 @@ Nix CN Meetup #2 is the second Nix-themed gathering in China. We aim to bring to Register + + Reserve a Talk + Name Badge Customization Request (Coming Soon) diff --git a/src/content/docs/meetup-2-guide.mdx b/src/content/docs/meetup-2-guide.mdx index 38c8483..2fa907f 100644 --- a/src/content/docs/meetup-2-guide.mdx +++ b/src/content/docs/meetup-2-guide.mdx @@ -17,6 +17,9 @@ Nix/NixOS CN Meetup #2 是国内第二次以 Nix 为主题的聚会。我们希 填写报名表 + + 填写议程收集表 + 填写名牌定制需求表(尚未开放) -- 2.49.1