@jjlmoya/utils-science 1.41.0 → 1.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/package.json +1 -1
  2. package/scripts/crystal-lattice-catalog-translations.mjs +459 -0
  3. package/scripts/sync-crystal-lattice-i18n.mjs +50 -0
  4. package/src/category/index.ts +3 -1
  5. package/src/entries.ts +5 -1
  6. package/src/index.ts +2 -0
  7. package/src/tests/diacritics_density.test.ts +140 -0
  8. package/src/tests/inverted_punctuation.test.ts +84 -0
  9. package/src/tests/locale_completeness.test.ts +2 -2
  10. package/src/tests/script_density.test.ts +94 -0
  11. package/src/tests/tool_validation.test.ts +2 -3
  12. package/src/tool/conway-life-rule-lab/i18n/de.ts +62 -5
  13. package/src/tool/conway-life-rule-lab/i18n/es.ts +62 -5
  14. package/src/tool/conway-life-rule-lab/i18n/fr.ts +62 -5
  15. package/src/tool/conway-life-rule-lab/i18n/id.ts +102 -45
  16. package/src/tool/conway-life-rule-lab/i18n/it.ts +62 -5
  17. package/src/tool/conway-life-rule-lab/i18n/ja.ts +62 -5
  18. package/src/tool/conway-life-rule-lab/i18n/ko.ts +62 -5
  19. package/src/tool/conway-life-rule-lab/i18n/nl.ts +102 -45
  20. package/src/tool/conway-life-rule-lab/i18n/pl.ts +62 -5
  21. package/src/tool/conway-life-rule-lab/i18n/pt.ts +62 -5
  22. package/src/tool/conway-life-rule-lab/i18n/ru.ts +62 -5
  23. package/src/tool/conway-life-rule-lab/i18n/sv.ts +62 -5
  24. package/src/tool/conway-life-rule-lab/i18n/tr.ts +62 -5
  25. package/src/tool/conway-life-rule-lab/i18n/zh.ts +62 -5
  26. package/src/tool/cosmic-inflation/i18n/es.ts +5 -5
  27. package/src/tool/cosmic-inflation/i18n/it.ts +51 -51
  28. package/src/tool/cosmic-inflation/i18n/ru.ts +42 -150
  29. package/src/tool/crystal-lattice-structure-finder/component.astro +120 -39
  30. package/src/tool/crystal-lattice-structure-finder/crystal-lattice-structure-finder.css +204 -56
  31. package/src/tool/crystal-lattice-structure-finder/data.ts +107 -133
  32. package/src/tool/crystal-lattice-structure-finder/i18n/de.ts +39 -0
  33. package/src/tool/crystal-lattice-structure-finder/i18n/en.ts +45 -6
  34. package/src/tool/crystal-lattice-structure-finder/i18n/es.ts +39 -0
  35. package/src/tool/crystal-lattice-structure-finder/i18n/fr.ts +39 -0
  36. package/src/tool/crystal-lattice-structure-finder/i18n/id.ts +39 -0
  37. package/src/tool/crystal-lattice-structure-finder/i18n/it.ts +39 -0
  38. package/src/tool/crystal-lattice-structure-finder/i18n/ja.ts +39 -0
  39. package/src/tool/crystal-lattice-structure-finder/i18n/ko.ts +39 -0
  40. package/src/tool/crystal-lattice-structure-finder/i18n/nl.ts +39 -0
  41. package/src/tool/crystal-lattice-structure-finder/i18n/pl.ts +39 -0
  42. package/src/tool/crystal-lattice-structure-finder/i18n/pt.ts +39 -0
  43. package/src/tool/crystal-lattice-structure-finder/i18n/ru.ts +39 -0
  44. package/src/tool/crystal-lattice-structure-finder/i18n/sv.ts +39 -0
  45. package/src/tool/crystal-lattice-structure-finder/i18n/tr.ts +39 -0
  46. package/src/tool/crystal-lattice-structure-finder/i18n/zh.ts +39 -0
  47. package/src/tool/crystal-lattice-structure-finder/logic.ts +7 -3
  48. package/src/tool/crystal-lattice-structure-finder/structures/README.md +26 -0
  49. package/src/tool/crystal-lattice-structure-finder/structures/body-centered-cubic.ts +19 -0
  50. package/src/tool/crystal-lattice-structure-finder/structures/cesium-chloride.ts +19 -0
  51. package/src/tool/crystal-lattice-structure-finder/structures/diamond-cubic.ts +23 -0
  52. package/src/tool/crystal-lattice-structure-finder/structures/face-centered-cubic.ts +16 -0
  53. package/src/tool/crystal-lattice-structure-finder/structures/hexagonal-close-packed.ts +30 -0
  54. package/src/tool/crystal-lattice-structure-finder/structures/index.ts +25 -0
  55. package/src/tool/crystal-lattice-structure-finder/structures/perovskite.ts +20 -0
  56. package/src/tool/crystal-lattice-structure-finder/structures/rock-salt.ts +23 -0
  57. package/src/tool/crystal-lattice-structure-finder/structures/rutile.ts +25 -0
  58. package/src/tool/crystal-lattice-structure-finder/structures/shared.ts +86 -0
  59. package/src/tool/crystal-lattice-structure-finder/structures/simple-cubic.ts +16 -0
  60. package/src/tool/crystal-lattice-structure-finder/structures/wurtzite.ts +22 -0
  61. package/src/tool/crystal-lattice-structure-finder/structures/zinc-blende.ts +23 -0
  62. package/src/tool/double-slit-decoherence/i18n/fr.ts +42 -86
  63. package/src/tool/double-slit-decoherence/i18n/it.ts +28 -72
  64. package/src/tool/double-slit-decoherence/i18n/pt.ts +35 -79
  65. package/src/tool/double-slit-decoherence/i18n/ru.ts +59 -59
  66. package/src/tool/double-slit-decoherence/i18n/sv.ts +33 -81
  67. package/src/tool/double-slit-decoherence/i18n/tr.ts +55 -55
  68. package/src/tool/dyson-sphere-energy-capture/i18n/de.ts +42 -123
  69. package/src/tool/dyson-sphere-energy-capture/i18n/es.ts +6 -6
  70. package/src/tool/dyson-sphere-energy-capture/i18n/fr.ts +63 -131
  71. package/src/tool/dyson-sphere-energy-capture/i18n/it.ts +36 -113
  72. package/src/tool/dyson-sphere-energy-capture/i18n/ja.ts +66 -42
  73. package/src/tool/dyson-sphere-energy-capture/i18n/ko.ts +66 -42
  74. package/src/tool/dyson-sphere-energy-capture/i18n/pl.ts +50 -133
  75. package/src/tool/dyson-sphere-energy-capture/i18n/pt.ts +51 -132
  76. package/src/tool/dyson-sphere-energy-capture/i18n/ru.ts +61 -98
  77. package/src/tool/dyson-sphere-energy-capture/i18n/sv.ts +56 -137
  78. package/src/tool/dyson-sphere-energy-capture/i18n/tr.ts +61 -142
  79. package/src/tool/dyson-sphere-energy-capture/i18n/zh.ts +67 -43
  80. package/src/tool/epidemic-sir-simulator/bibliography.astro +15 -0
  81. package/src/tool/epidemic-sir-simulator/bibliography.ts +37 -0
  82. package/src/tool/epidemic-sir-simulator/component.astro +384 -0
  83. package/src/tool/epidemic-sir-simulator/entry.ts +30 -0
  84. package/src/tool/epidemic-sir-simulator/epidemic-sir-simulator.css +624 -0
  85. package/src/tool/epidemic-sir-simulator/i18n/de.ts +347 -0
  86. package/src/tool/epidemic-sir-simulator/i18n/en.ts +347 -0
  87. package/src/tool/epidemic-sir-simulator/i18n/es.ts +347 -0
  88. package/src/tool/epidemic-sir-simulator/i18n/fr.ts +347 -0
  89. package/src/tool/epidemic-sir-simulator/i18n/id.ts +347 -0
  90. package/src/tool/epidemic-sir-simulator/i18n/it.ts +347 -0
  91. package/src/tool/epidemic-sir-simulator/i18n/ja.ts +347 -0
  92. package/src/tool/epidemic-sir-simulator/i18n/ko.ts +347 -0
  93. package/src/tool/epidemic-sir-simulator/i18n/nl.ts +347 -0
  94. package/src/tool/epidemic-sir-simulator/i18n/pl.ts +347 -0
  95. package/src/tool/epidemic-sir-simulator/i18n/pt.ts +347 -0
  96. package/src/tool/epidemic-sir-simulator/i18n/ru.ts +347 -0
  97. package/src/tool/epidemic-sir-simulator/i18n/sv.ts +347 -0
  98. package/src/tool/epidemic-sir-simulator/i18n/tr.ts +347 -0
  99. package/src/tool/epidemic-sir-simulator/i18n/zh.ts +347 -0
  100. package/src/tool/epidemic-sir-simulator/index.ts +12 -0
  101. package/src/tool/epidemic-sir-simulator/logic.ts +163 -0
  102. package/src/tool/epidemic-sir-simulator/seo.astro +16 -0
  103. package/src/tool/fermi-paradox-filter-lab/bibliography.astro +14 -0
  104. package/src/tool/fermi-paradox-filter-lab/bibliography.ts +24 -0
  105. package/src/tool/fermi-paradox-filter-lab/component.astro +257 -0
  106. package/src/tool/fermi-paradox-filter-lab/entry.ts +26 -0
  107. package/src/tool/fermi-paradox-filter-lab/fermi-paradox-filter-lab.css +228 -0
  108. package/src/tool/fermi-paradox-filter-lab/i18n/de.ts +192 -0
  109. package/src/tool/fermi-paradox-filter-lab/i18n/en.ts +192 -0
  110. package/src/tool/fermi-paradox-filter-lab/i18n/es.ts +193 -0
  111. package/src/tool/fermi-paradox-filter-lab/i18n/fr.ts +192 -0
  112. package/src/tool/fermi-paradox-filter-lab/i18n/id.ts +192 -0
  113. package/src/tool/fermi-paradox-filter-lab/i18n/it.ts +192 -0
  114. package/src/tool/fermi-paradox-filter-lab/i18n/ja.ts +192 -0
  115. package/src/tool/fermi-paradox-filter-lab/i18n/ko.ts +192 -0
  116. package/src/tool/fermi-paradox-filter-lab/i18n/nl.ts +192 -0
  117. package/src/tool/fermi-paradox-filter-lab/i18n/pl.ts +193 -0
  118. package/src/tool/fermi-paradox-filter-lab/i18n/pt.ts +192 -0
  119. package/src/tool/fermi-paradox-filter-lab/i18n/ru.ts +192 -0
  120. package/src/tool/fermi-paradox-filter-lab/i18n/sv.ts +192 -0
  121. package/src/tool/fermi-paradox-filter-lab/i18n/tr.ts +192 -0
  122. package/src/tool/fermi-paradox-filter-lab/i18n/zh.ts +192 -0
  123. package/src/tool/fermi-paradox-filter-lab/index.ts +11 -0
  124. package/src/tool/fermi-paradox-filter-lab/logic.ts +125 -0
  125. package/src/tool/fermi-paradox-filter-lab/seo.astro +15 -0
  126. package/src/tool/global-albedo-snowball-simulator/i18n/ru.ts +50 -63
  127. package/src/tool/lorenz-attractor/i18n/de.ts +52 -78
  128. package/src/tool/lorenz-attractor/i18n/es.ts +5 -5
  129. package/src/tool/lorenz-attractor/i18n/fr.ts +51 -77
  130. package/src/tool/lorenz-attractor/i18n/it.ts +36 -36
  131. package/src/tool/lorenz-attractor/i18n/pt.ts +51 -75
  132. package/src/tool/mandelbrot-fractal/i18n/de.ts +31 -58
  133. package/src/tool/mandelbrot-fractal/i18n/es.ts +5 -5
  134. package/src/tool/mandelbrot-fractal/i18n/fr.ts +39 -57
  135. package/src/tool/mandelbrot-fractal/i18n/it.ts +30 -48
  136. package/src/tool/mandelbrot-fractal/i18n/pl.ts +34 -52
  137. package/src/tool/mandelbrot-fractal/i18n/pt.ts +30 -30
  138. package/src/tool/mandelbrot-fractal/i18n/ru.ts +42 -60
  139. package/src/tool/mandelbrot-fractal/i18n/sv.ts +38 -65
  140. package/src/tool/natural-selection-drift/i18n/it.ts +18 -95
  141. package/src/tool/natural-selection-drift/i18n/pt.ts +76 -19
  142. package/src/tool/natural-selection-drift/i18n/ru.ts +27 -24
  143. package/src/tool/natural-selection-drift/i18n/sv.ts +9 -6
  144. package/src/tool/phase-diagram-critical-points/i18n/de.ts +30 -68
  145. package/src/tool/phase-diagram-critical-points/i18n/es.ts +4 -4
  146. package/src/tool/phase-diagram-critical-points/i18n/fr.ts +37 -75
  147. package/src/tool/phase-diagram-critical-points/i18n/it.ts +8 -8
  148. package/src/tool/planet-atmosphere-survival/i18n/ru.ts +49 -192
  149. package/src/tool/radioactive-decay/i18n/de.ts +16 -32
  150. package/src/tool/radioactive-decay/i18n/es.ts +5 -5
  151. package/src/tool/radioactive-decay/i18n/fr.ts +24 -40
  152. package/src/tool/radioactive-decay/i18n/it.ts +18 -35
  153. package/src/tool/radioactive-decay/i18n/pt.ts +34 -34
  154. package/src/tool/roche-limit-satellite-disruption/i18n/pl.ts +52 -128
  155. package/src/tool/temperature-timeline/i18n/de.ts +46 -174
  156. package/src/tool/temperature-timeline/i18n/es.ts +5 -5
  157. package/src/tool/temperature-timeline/i18n/fr.ts +69 -144
  158. package/src/tool/temperature-timeline/i18n/it.ts +34 -133
  159. package/src/tool/temperature-timeline/i18n/pt.ts +35 -174
  160. package/src/tool/temperature-timeline/i18n/ru.ts +48 -174
  161. package/src/tool/twin-paradox-visualizer/i18n/es.ts +5 -5
  162. package/src/tool/twin-paradox-visualizer/i18n/fr.ts +34 -34
  163. package/src/tool/twin-paradox-visualizer/i18n/pt.ts +31 -71
  164. package/src/tools.ts +4 -0
@@ -1,50 +1,107 @@
1
- import { content as enContent } from './en';
1
+ import { bibliography } from '../bibliography';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
3
 
4
+ const slug = 'lab-aturan-game-of-life-conway';
5
+ const title = 'Lab Aturan Game of Life Conway';
6
+ const description = 'Mainkan, edit, dan bandingkan automata seluler bergaya Conway dengan aturan B/S, benih pola, metrik langsung, dan papan simulasi responsif.';
7
+
8
+ const howTo = [
9
+ {
10
+ name: 'Semai papan',
11
+ text: 'Pilih pola seperti glider, pulsar, atau meriam Gosper, letakkan di kisi atau acak populasi awal.',
12
+ },
13
+ {
14
+ name: 'Jalankan simulasi',
15
+ text: 'Gunakan kontrol putar, jeda, langkah, dan tempo untuk mengamati kelahiran, kematian, kepadatan, dan stabilitas berkembang dari waktu ke waktu.',
16
+ },
17
+ {
18
+ name: 'Ubah aturan',
19
+ text: 'Ganti preset atau ketik aturan B/S seperti B3/S23, B36/S23, atau B3678/S34678 untuk membandingkan automata yang berbeda.',
20
+ },
21
+ ];
22
+
23
+ const faq = [
24
+ {
25
+ question: 'Apa itu notasi B/S dalam Game of Life?',
26
+ answer: 'Notasi B/S mencantumkan jumlah tetangga yang menciptakan sel hidup baru dan jumlah yang membiarkan sel hidup yang ada bertahan. Game of Life Conway adalah B3/S23: sel mati lahir dengan tepat tiga tetangga, dan sel hidup bertahan dengan dua atau tiga tetangga.',
27
+ },
28
+ {
29
+ question: 'Mengapa alat ini disebut lab aturan dan bukan hanya simulator?',
30
+ answer: 'Aturan Conway klasik disertakan, tetapi simulatornya dirancang untuk membandingkan keluarga automata seluler seperti Life. Mengedit jumlah kelahiran dan kelangsungan hidup mengubah perilaku jangka panjang, menghasilkan replikator, gelombang, pulau beku, pertumbuhan kacau, atau kepunahan.',
31
+ },
32
+ {
33
+ question: 'Apa arti stabilitas dalam simulator?',
34
+ answer: 'Stabilitas memperkirakan seberapa banyak koloni berubah selama generasi terakhir. Stabilitas tinggi berarti sedikit sel yang lahir atau mati relatif terhadap populasi; stabilitas rendah berarti papan turbulen atau mengatur ulang dengan cepat.',
35
+ },
36
+ {
37
+ question: 'Apakah papan memiliki tepi?',
38
+ answer: 'Simulasi menggunakan pembungkus toroidal, sehingga tepi kiri terhubung ke tepi kanan dan atas terhubung ke bawah. Ini membuat pola bergerak secara alami tanpa menghilang di batas keras.',
39
+ },
40
+ {
41
+ question: 'Bisakah saya menggambar pola awal sendiri?',
42
+ answer: 'Ya. Jeda simulasi dan klik atau ketuk sel di papan untuk mengalihkannya. Anda dapat menggabungkan sel yang digambar tangan dengan pola bawaan dan menjalankan hasilnya di bawah preset aturan apa pun.',
43
+ },
44
+ ];
45
+
4
46
  export const content: ToolLocaleContent = {
5
- ...enContent,
6
- slug: "lab-aturan-game-of-life-conway",
7
- title: "Lab Aturan Game of Life Conway",
8
- description: "Mainkan, edit, dan bandingkan automata seluler bergaya Conway dengan aturan B/S, benih pola, metrik langsung, dan papan simulasi responsif.",
9
- ui: {
10
- "boardLabel": "Papan automata seluler mirip Life",
11
- "play": "Putar",
12
- "pause": "Jeda",
13
- "step": "Langkah",
14
- "clear": "Kanvas kosong",
15
- "randomize": "Acak",
16
- "ruleLabel": "Notasi aturan",
17
- "ruleHelp": "Kelahiran / bertahan",
18
- "speedLabel": "Tempo",
19
- "densityLabel": "Kepadatan awal",
20
- "patternLabel": "Pola",
21
- "placePattern": "Tempatkan pola",
22
- "generation": "Generasi",
23
- "population": "Populasi",
24
- "density": "Kepadatan",
25
- "stability": "Stabilitas",
26
- "births": "Kelahiran",
27
- "deaths": "Kematian",
28
- "achievementsLabel": "Catatan lab",
29
- "achievementPulsar": "Pulsar",
30
- "achievementPulsarDescription": "Osilasi periode 2 terdeteksi",
31
- "achievementImmortal": "Abadi",
32
- "achievementImmortalDescription": "Generasi 500 dicapai dengan stabilitas penuh",
33
- "achievementBigBang": "Big Bang",
34
- "achievementBigBangDescription": "Benih acak jarang melewati 1.000 sel hidup",
35
- "presetClassic": "Conway klasik",
36
- "presetHighlife": "HighLife",
37
- "presetSeeds": "Seeds",
38
- "presetDayNight": "Siang & malam",
39
- "patternGlider": "Glider",
40
- "patternGosper": "Meriam Gosper",
41
- "patternPulsar": "Pulsar",
42
- "patternRPentomino": "R-pentomino",
43
- "colonyStatus": "Sinyal koloni",
44
- "statusFrozen": "stabil",
45
- "statusGrowing": "mengembang",
46
- "statusFading": "menurun",
47
- "statusChaotic": "bergejolak",
48
- "invalidRule": "Gunakan notasi B/S seperti B3/S23."
47
+ slug,
48
+ title,
49
+ description,
50
+ ui: {
51
+ boardLabel: 'Papan automata seluler mirip Life',
52
+ play: 'Putar',
53
+ pause: 'Jeda',
54
+ step: 'Langkah',
55
+ clear: 'Kanvas kosong',
56
+ randomize: 'Acak',
57
+ ruleLabel: 'Notasi aturan',
58
+ ruleHelp: 'Kelahiran / bertahan',
59
+ speedLabel: 'Tempo',
60
+ densityLabel: 'Kepadatan awal',
61
+ patternLabel: 'Pola',
62
+ placePattern: 'Tempatkan pola',
63
+ generation: 'Generasi',
64
+ population: 'Populasi',
65
+ density: 'Kepadatan',
66
+ stability: 'Stabilitas',
67
+ births: 'Kelahiran',
68
+ deaths: 'Kematian',
69
+ achievementsLabel: 'Catatan lab',
70
+ achievementPulsar: 'Pulsar',
71
+ achievementPulsarDescription: 'Osilasi periode 2 terdeteksi',
72
+ achievementImmortal: 'Abadi',
73
+ achievementImmortalDescription: 'Generasi 500 dicapai dengan stabilitas penuh',
74
+ achievementBigBang: 'Big Bang',
75
+ achievementBigBangDescription: 'Benih acak jarang melewati 1.000 sel hidup',
76
+ presetClassic: 'Conway klasik',
77
+ presetHighlife: 'HighLife',
78
+ presetSeeds: 'Seeds',
79
+ presetDayNight: 'Siang & malam',
80
+ patternGlider: 'Glider',
81
+ patternGosper: 'Meriam Gosper',
82
+ patternPulsar: 'Pulsar',
83
+ patternRPentomino: 'R-pentomino',
84
+ colonyStatus: 'Sinyal koloni',
85
+ statusFrozen: 'stabil',
86
+ statusGrowing: 'mengembang',
87
+ statusFading: 'menurun',
88
+ statusChaotic: 'bergejolak',
89
+ invalidRule: 'Gunakan notasi B/S seperti B3/S23.',
49
90
  },
91
+ seo: [
92
+ { type: 'title', text: 'Simulator Game of Life Conway dengan Aturan yang Dapat Diedit', level: 2 },
93
+ { type: 'paragraph', html: 'Lab aturan Game of Life Conway ini memungkinkan Anda menjalankan automata seluler klasik dan kemudian mengubah serta membandingkan aturannya. Papan mendukung penggambaran langsung, penempatan pola, benih acak, inspeksi langkah demi langkah, tempo variabel, dan pengukuran langsung untuk populasi, kepadatan, kelahiran, kematian, dan stabilitas.' },
94
+ { type: 'title', text: 'Bagaimana aturan B/S mengubah permainan', level: 3 },
95
+ { type: 'paragraph', html: 'Automata seluler seperti Life sering ditulis dalam <strong>notasi B/S</strong>. Sisi B mendefinisikan berapa banyak tetangga hidup yang dibutuhkan sel mati untuk lahir; sisi S mendefinisikan berapa banyak tetangga yang dibutuhkan sel hidup untuk bertahan. Aturan asli Conway, <strong>B3/S23</strong>, terkenal karena berada di wilayah sempit antara kepunahan dan pertumbuhan tak terkendali.' },
96
+ { type: 'title', text: 'Membaca metrik langsung', level: 3 },
97
+ { type: 'paragraph', html: 'Populasi dan kepadatan menunjukkan berapa banyak sel yang hidup, tetapi mereka tidak menceritakan keseluruhan cerita. Kelahiran dan kematian mengungkapkan tingkat aktivitas saat ini, sementara stabilitas memperkirakan apakah koloni sedang menetap ke osilator, membeku menjadi struktur diam, atau tetap bergejolak.' },
98
+ ],
99
+ faq,
100
+ bibliography,
101
+ howTo,
102
+ schemas: [
103
+ { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'EducationalApplication', operatingSystem: 'Any' },
104
+ { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faq.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) },
105
+ { '@context': 'https://schema.org', '@type': 'HowTo', name: title, step: howTo.map((step) => ({ '@type': 'HowToStep', name: step.name, text: step.text })) },
106
+ ],
50
107
  };
@@ -1,11 +1,52 @@
1
- import { content as enContent } from './en';
1
+ import { bibliography } from '../bibliography';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
3
 
4
+ const slug = 'laboratorio-regole-gioco-vita-conway';
5
+ const title = 'Laboratorio di regole del Gioco della Vita di Conway';
6
+ const description = 'Gioca, modifica e confronta automi cellulari in stile Conway con regole B/S, semi di pattern, metriche live e una griglia responsive.';
7
+
8
+ const howTo = [
9
+ {
10
+ name: 'Seminare il campo',
11
+ text: 'Scegli un pattern come un aliante, un pulsar o il cannone di Gosper, posizionalo sulla griglia o genera una popolazione casuale.',
12
+ },
13
+ {
14
+ name: 'Avviare la simulazione',
15
+ text: 'Usa i controlli di avvio, pausa, passo e tempo per osservare l\'evoluzione di nascite, morti, densità e stabilità nel tempo.',
16
+ },
17
+ {
18
+ name: 'Cambiare la regola',
19
+ text: 'Cambia i preset o digita una regola B/S come B3/S23, B36/S23 o B3678/S34678 per confrontare diversi automi.',
20
+ },
21
+ ];
22
+
23
+ const faq = [
24
+ {
25
+ question: 'Cosa è la notazione B/S nel Gioco della Vita?',
26
+ answer: 'La notazione B/S elenca i conteggi di vicini che creano una nuova cellula viva e i conteggi che permettono a una cellula viva esistente di sopravvivere. Il Gioco della Vita di Conway è B3/S23: le cellule morte nascono con esattamente tre vicini, e le cellule vive sopravvivono con due o tre vicini.',
27
+ },
28
+ {
29
+ question: 'Perché questo strumento si chiama laboratorio di regole invece di solo simulatore?',
30
+ answer: 'La regola classica di Conway è inclusa, ma il simulatore è costruito per confrontare famiglie di automi cellulari di tipo Life. Modificare i conteggi di nascita e sopravvivenza cambia il comportamento a lungo termine, producendo replicatori, onde, isole congelate, crescita caotica o estinzione.',
31
+ },
32
+ {
33
+ question: 'Cosa significa stabilità nel simulatore?',
34
+ answer: 'La stabilità stima quanto la colonia è cambiata durante l\'ultima generazione. Alta stabilità significa poche cellule nate o morte rispetto alla popolazione; bassa stabilità significa che il campo è turbolento o si riorganizza rapidamente.',
35
+ },
36
+ {
37
+ question: 'Il campo ha dei bordi?',
38
+ answer: 'La simulazione usa un avvolgimento toroidale: il bordo sinistro si collega al bordo destro e la parte superiore si collega alla parte inferiore. Questo mantiene i pattern in movimento naturale senza scomparire ai bordi.',
39
+ },
40
+ {
41
+ question: 'Posso disegnare il mio pattern iniziale?',
42
+ answer: 'Sì. Metti in pausa la simulazione e fai clic o tocca le celle del campo per attivarle o disattivarle. Puoi combinare celle disegnate a mano con i pattern integrati e poi eseguire il risultato con qualsiasi preset di regola.',
43
+ },
44
+ ];
45
+
4
46
  export const content: ToolLocaleContent = {
5
- ...enContent,
6
- slug: 'laboratorio-regole-gioco-vita-conway',
7
- title: 'Laboratorio di regole del Gioco della Vita di Conway',
8
- description: 'Gioca, modifica e confronta automi cellulari in stile Conway con regole B/S, semi di pattern, metriche live e una griglia responsive.',
47
+ slug,
48
+ title,
49
+ description,
9
50
  ui: {
10
51
  boardLabel: 'Griglia di automi cellulari tipo Life',
11
52
  play: 'Avvia',
@@ -47,4 +88,20 @@ export const content: ToolLocaleContent = {
47
88
  statusChaotic: 'volatile',
48
89
  invalidRule: 'Usa la notazione B/S come B3/S23.',
49
90
  },
91
+ seo: [
92
+ { type: 'title', text: 'Simulatore del Gioco della Vita di Conway con regole modificabili', level: 2 },
93
+ { type: 'paragraph', html: 'Questo laboratorio di regole ti permette di eseguire il classico automa cellulare e poi modificare e confrontare le sue regole. Il campo supporta il disegno diretto, il posizionamento di pattern, semi casuali, ispezione passo-passo, tempo variabile e misurazioni live per popolazione, densità, nascite, morti e stabilità.' },
94
+ { type: 'title', text: 'Come le regole B/S cambiano il gioco', level: 3 },
95
+ { type: 'paragraph', html: 'Gli automi cellulari di tipo Life sono spesso scritti in <strong>notazione B/S</strong>. Il lato B definisce quanti vicini vivi servono a una cellula morta per nascere; il lato S definisce quanti vicini servono a una cellula viva per sopravvivere. La regola originale di Conway, <strong>B3/S23</strong>, è famosa perché si trova in una zona stretta tra estinzione e crescita incontrollata.' },
96
+ { type: 'title', text: 'Leggere le metriche live', level: 3 },
97
+ { type: 'paragraph', html: 'La popolazione e la densità mostrano quante cellule sono vive, ma non raccontano tutta la storia. Le nascite e le morti espongono il livello di attività attuale, mentre la stabilità stima se la colonia si sta stabilizzando in un oscillatore, si sta congelando in strutture statiche o rimane turbolenta.' },
98
+ ],
99
+ faq,
100
+ bibliography,
101
+ howTo,
102
+ schemas: [
103
+ { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'EducationalApplication', operatingSystem: 'Any' },
104
+ { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faq.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) },
105
+ { '@context': 'https://schema.org', '@type': 'HowTo', name: title, step: howTo.map((step) => ({ '@type': 'HowToStep', name: step.name, text: step.text })) },
106
+ ],
50
107
  };
@@ -1,11 +1,52 @@
1
- import { content as enContent } from './en';
1
+ import { bibliography } from '../bibliography';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
3
 
4
+ const slug = 'conway-life-rule-lab';
5
+ const title = 'コンウェイのライフゲーム規則ラボ';
6
+ const description = 'B/Sルール、パターンシード、ライブ指標、レスポンシブな盤面で、コンウェイ型セル・オートマトンを操作、編集、比較します。';
7
+
8
+ const howTo = [
9
+ {
10
+ name: '盤面を配置する',
11
+ text: 'グライダー、パルサー、ゴスパー銃などのパターンを選び、グリッドに配置するか、生存個体をランダムに生成します。',
12
+ },
13
+ {
14
+ name: 'シミュレーションを実行する',
15
+ text: '再生・一時停止・ステップ・テンポのコントロールを使い、誕生・死滅・密度・安定度の変化を観察します。',
16
+ },
17
+ {
18
+ name: 'ルールを変更する',
19
+ text: 'プリセットを切り替えるか、B3/S23、B36/S23、B3678/S34678 などのB/S記法を入力して、異なるオートマトンを比較します。',
20
+ },
21
+ ];
22
+
23
+ const faq = [
24
+ {
25
+ question: 'ライフゲームのB/S記法とは何ですか?',
26
+ answer: 'B/S記法は、死んだセルが新たに誕生するための隣接数と、生きているセルが生存するための隣接数を示します。コンウェイのライフゲームはB3/S23です:死セルはちょうど3つの隣接で誕生し、生セルは2つまたは3つの隣接で生存します。',
27
+ },
28
+ {
29
+ question: 'なぜこのツールは単なるシミュレータではなく規則ラボと呼ばれるのですか?',
30
+ answer: 'クラシックなコンウェイルールが含まれていますが、このシミュレータはLife系セル・オートマトンのファミリーを比較するために構築されています。誕生数と生存数を変更すると、長期的な挙動が変わり、複製器、波、凍った島、カオス成長、または絶滅を生み出します。',
31
+ },
32
+ {
33
+ question: 'シミュレータの安定度とは何を意味しますか?',
34
+ answer: '安定度は、最後の世代で群集がどの程度変化したかを推定します。安定度が高いと、個体数に対して誕生や死滅が少ないことを意味し、安定度が低いと、盤面が乱流状態にあるか急速に再編成されていることを意味します。',
35
+ },
36
+ {
37
+ question: '盤面に端はありますか?',
38
+ answer: 'シミュレーションはトーラス状ラッピングを使用しており、左端が右端と接続し、上端が下端と接続しています。これによりパターンは自然に移動し続け、硬い境界で消えません。',
39
+ },
40
+ {
41
+ question: '自分の開始パターンを描けますか?',
42
+ answer: 'はい。シミュレーションを一時停止し、盤面のセルをクリックまたはタップして切り替えることができます。手描きのセルを組み込みパターンと組み合わせ、任意のルールプリセットで実行できます。',
43
+ },
44
+ ];
45
+
4
46
  export const content: ToolLocaleContent = {
5
- ...enContent,
6
- slug: 'conway-life-rule-lab',
7
- title: 'コンウェイのライフゲーム規則ラボ',
8
- description: 'B/Sルール、パターンシード、ライブ指標、レスポンシブな盤面で、コンウェイ型セル・オートマトンを操作、編集、比較します。',
47
+ slug,
48
+ title,
49
+ description,
9
50
  ui: {
10
51
  boardLabel: 'Life系セル・オートマトン盤面',
11
52
  play: '再生',
@@ -47,4 +88,20 @@ export const content: ToolLocaleContent = {
47
88
  statusChaotic: '不安定',
48
89
  invalidRule: 'B3/S23 のような B/S 表記を使ってください。',
49
90
  },
91
+ seo: [
92
+ { type: 'title', text: 'コンウェイのライフゲームシミュレータ(ルール編集可能)', level: 2 },
93
+ { type: 'paragraph', html: 'このコンウェイのライフゲーム規則ラボでは、クラシックなセル・オートマトンを実行し、ルールを意図的に変更・比較できます。盤面は直接描画、パターン配置、ランダムシード、ステップごとの検査、可変テンポ、個体数・密度・誕生・死滅・安定度のライブ計測をサポートしています。' },
94
+ { type: 'title', text: 'B/Sルールがゲームを変える仕組み', level: 3 },
95
+ { type: 'paragraph', html: 'Life系セル・オートマトンはしばしば<strong>B/S記法</strong>で記述されます。B側は死セルが誕生するために必要な生きた隣接数を定義し、S側は生セルが生存するために必要な隣接数を定義します。コンウェイのオリジナルルール<strong>B3/S23</strong>は、絶滅と無制御成長の間の狭い領域に位置することで有名です。' },
96
+ { type: 'title', text: 'ライブ指標の読み方', level: 3 },
97
+ { type: 'paragraph', html: '個体数と密度は何個のセルが生きているかを示しますが、全体像を伝えるわけではありません。誕生と死滅は現在の活動レベルを示し、安定度は群集がオシレータに落ち着きつつあるか、静的構造に凍りつきつつあるか、乱流状態を保っているかを推定します。' },
98
+ ],
99
+ faq,
100
+ bibliography,
101
+ howTo,
102
+ schemas: [
103
+ { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'EducationalApplication', operatingSystem: 'Any' },
104
+ { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faq.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) },
105
+ { '@context': 'https://schema.org', '@type': 'HowTo', name: title, step: howTo.map((step) => ({ '@type': 'HowToStep', name: step.name, text: step.text })) },
106
+ ],
50
107
  };
@@ -1,11 +1,52 @@
1
- import { content as enContent } from './en';
1
+ import { bibliography } from '../bibliography';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
3
 
4
+ const slug = 'conway-life-rule-lab';
5
+ const title = '콘웨이 생명 게임 규칙 연구실';
6
+ const description = 'B/S 규칙, 패턴 시드, 실시간 지표, 반응형 보드로 콘웨이형 세포 자동자를 플레이하고 편집하며 비교합니다.';
7
+
8
+ const howTo = [
9
+ {
10
+ name: '보드 씨 뿌리기',
11
+ text: '글라이더, 펄서, 고스퍼 건 등의 패턴을 선택해 격자에 배치하거나 개체군을 무작위로 생성합니다.',
12
+ },
13
+ {
14
+ name: '시뮬레이션 실행',
15
+ text: '재생, 일시정지, 단계, 템포 컨트롤로 탄생, 죽음, 밀도, 안정성의 변화를 관찰합니다.',
16
+ },
17
+ {
18
+ name: '규칙 변경',
19
+ text: '프리셋을 전환하거나 B3/S23, B36/S23, B3678/S34678 같은 B/S 표기를 입력해 다양한 자동자를 비교합니다.',
20
+ },
21
+ ];
22
+
23
+ const faq = [
24
+ {
25
+ question: '생명 게임의 B/S 표기란 무엇인가요?',
26
+ answer: 'B/S 표기는 새로운 살아있는 셀을 만드는 이웃 수와 기존 살아있는 셀이 생존하는 이웃 수를 나열합니다. 콘웨이 생명 게임은 B3/S23입니다: 죽은 셀은 정확히 세 이웃으로 탄생하고, 살아있는 셀은 두 개 또는 세 개의 이웃으로 생존합니다.',
27
+ },
28
+ {
29
+ question: '왜 이 도구가 단순 시뮬레이터가 아닌 규칙 연구실인가요?',
30
+ answer: '클래식 콘웨이 규칙이 포함되어 있지만, 시뮬레이터는 생명형 세포 자동자 계열을 비교하기 위해 구축되었습니다. 탄생 및 생존 수를 편집하면 장기 행동이 변하여 복제자, 파동, 얼어붙은 섬, 혼돈 성장 또는 멸종을 생성합니다.',
31
+ },
32
+ {
33
+ question: '시뮬레이터에서 안정성은 무엇을 의미하나요?',
34
+ answer: '안정성은 마지막 세대에서 군집이 얼마나 변화했는지 추정합니다. 높은 안정성은 개체 수에 비해 탄생하거나 죽은 셀이 적음을 의미하고, 낮은 안정성은 보드가 난류 상태이거나 빠르게 재편성되고 있음을 의미합니다.',
35
+ },
36
+ {
37
+ question: '보드에 가장자리가 있나요?',
38
+ answer: '시뮬레이션은 토러스형 감싸기를 사용하므로 왼쪽 가장자리는 오른쪽 가장자리와 연결되고 위쪽은 아래쪽과 연결됩니다. 이렇게 하면 패턴이 딱딱한 경계에서 사라지지 않고 자연스럽게 이동합니다.',
39
+ },
40
+ {
41
+ question: '직접 시작 패턴을 그릴 수 있나요?',
42
+ answer: '네. 시뮬레이션을 일시정지하고 보드의 셀을 클릭하거나 탭하여 전환할 수 있습니다. 손으로 그린 셀을 내장 패턴과 결합하고 어떤 규칙 프리셋 아래서도 결과를 실행할 수 있습니다.',
43
+ },
44
+ ];
45
+
4
46
  export const content: ToolLocaleContent = {
5
- ...enContent,
6
- slug: 'conway-life-rule-lab',
7
- title: '콘웨이 생명 게임 규칙 연구실',
8
- description: 'B/S 규칙, 패턴 시드, 실시간 지표, 반응형 보드로 콘웨이형 세포 자동자를 플레이하고 편집하며 비교합니다.',
47
+ slug,
48
+ title,
49
+ description,
9
50
  ui: {
10
51
  boardLabel: 'Life 계열 세포 자동자 보드',
11
52
  play: '재생',
@@ -47,4 +88,20 @@ export const content: ToolLocaleContent = {
47
88
  statusChaotic: '불안정',
48
89
  invalidRule: 'B3/S23 같은 B/S 표기를 사용하세요.',
49
90
  },
91
+ seo: [
92
+ { type: 'title', text: '규칙 편집 가능한 콘웨이 생명 게임 시뮬레이터', level: 2 },
93
+ { type: 'paragraph', html: '이 콘웨이 생명 게임 규칙 연구실에서는 클래식 세포 자동자를 실행하고 규칙을 의도적으로 변경 및 비교할 수 있습니다. 보드는 직접 그리기, 패턴 배치, 무작위 시드, 단계별 검사, 가변 템포, 개체 수·밀도·탄생·죽음·안정성의 실시간 측정을 지원합니다.' },
94
+ { type: 'title', text: 'B/S 규칙이 게임을 어떻게 바꾸는가', level: 3 },
95
+ { type: 'paragraph', html: '생명형 세포 자동자는 흔히 <strong>B/S 표기</strong>로 작성됩니다. B 쪽은 죽은 셀이 탄생하기 위해 필요한 살아있는 이웃 수를 정의하고, S 쪽은 살아있는 셀이 생존하기 위해 필요한 이웃 수를 정의합니다. 콘웨이의 원래 규칙인 <strong>B3/S23</strong>은 멸종과 무제한 성장 사이의 좁은 영역에 위치하기 때문에 유명합니다.' },
96
+ { type: 'title', text: '실시간 지표 읽기', level: 3 },
97
+ { type: 'paragraph', html: '개체 수와 밀도는 살아있는 셀이 얼마나 되는지 보여주지만 전체 이야기를 전하지는 않습니다. 탄생과 죽음은 현재 활동 수준을 드러내고, 안정성은 군집이 진동자에 안정되고 있는지, 정지 구조에 고정되고 있는지, 아니면 난류 상태를 유지하고 있는지 추정합니다.' },
98
+ ],
99
+ faq,
100
+ bibliography,
101
+ howTo,
102
+ schemas: [
103
+ { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'EducationalApplication', operatingSystem: 'Any' },
104
+ { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faq.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) },
105
+ { '@context': 'https://schema.org', '@type': 'HowTo', name: title, step: howTo.map((step) => ({ '@type': 'HowToStep', name: step.name, text: step.text })) },
106
+ ],
50
107
  };
@@ -1,50 +1,107 @@
1
- import { content as enContent } from './en';
1
+ import { bibliography } from '../bibliography';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
3
 
4
+ const slug = 'conway-game-of-life-regellab';
5
+ const title = 'Conway Game of Life Regellab';
6
+ const description = 'Speel, bewerk en vergelijk Conway-achtige cellulaire automaten met B/S-regels, patroonzaad, live-metingen en een responsief simulatiebord.';
7
+
8
+ const howTo = [
9
+ {
10
+ name: 'Het bord inzaaien',
11
+ text: 'Kies een patroon zoals een glider, pulsar of het Gosper-kanon, plaats het op het raster of genereer een willekeurige populatie.',
12
+ },
13
+ {
14
+ name: 'De simulatie starten',
15
+ text: 'Gebruik de bedieningselementen voor afspelen, pauzeren, stap en tempo om te zien hoe geboortes, sterftes, dichtheid en stabiliteit zich ontwikkelen.',
16
+ },
17
+ {
18
+ name: 'De regel wijzigen',
19
+ text: 'Wissel tussen presets of typ een B/S-regel zoals B3/S23, B36/S23 of B3678/S34678 om verschillende automaten te vergelijken.',
20
+ },
21
+ ];
22
+
23
+ const faq = [
24
+ {
25
+ question: 'Wat is B/S-notatie in Game of Life?',
26
+ answer: 'B/S-notatie geeft de aantallen buren aan die een nieuwe levende cel creëren en de aantallen die een bestaande levende cel laten overleven. Conway Life is B3/S23: dode cellen worden geboren met precies drie buren, en levende cellen overleven met twee of drie buren.',
27
+ },
28
+ {
29
+ question: 'Waarom heet dit een regellab in plaats van alleen een simulator?',
30
+ answer: 'De klassieke Conway-regel is inbegrepen, maar de simulator is gebouwd om families van Life-achtige cellulaire automaten te vergelijken. Het bewerken van de geboorte- en overlevingsaantallen verandert het langetermijngedrag, waardoor replicatoren, golven, bevroren eilanden, chaotische groei of uitsterving ontstaat.',
31
+ },
32
+ {
33
+ question: 'Wat betekent stabiliteit in de simulator?',
34
+ answer: 'Stabiliteit schat hoe sterk de kolonie veranderde tijdens de laatste generatie. Hoge stabiliteit betekent weinig cellen geboren of gestorven ten opzichte van de populatie; lage stabiliteit betekent dat het bord turbulent is of snel reorganiseert.',
35
+ },
36
+ {
37
+ question: 'Heeft het bord randen?',
38
+ answer: 'De simulatie gebruikt toroidale omwikkeling: de linkerrand verbindt met de rechterrand en boven verbindt met onder. Dit zorgt ervoor dat patronen natuurlijk blijven bewegen zonder te verdwijnen bij harde grenzen.',
39
+ },
40
+ {
41
+ question: 'Kan ik mijn eigen startpatroon tekenen?',
42
+ answer: 'Ja. Pauzeer de simulatie en klik of tik op cellen op het bord om ze te wisselen. Je kunt handgetekende cellen combineren met ingebouwde patronen en het resultaat dan uitvoeren onder elke regelpreset.',
43
+ },
44
+ ];
45
+
4
46
  export const content: ToolLocaleContent = {
5
- ...enContent,
6
- slug: "conway-game-of-life-regellab",
7
- title: "Conway Game of Life Regellab",
8
- description: "Speel, bewerk en vergelijk Conway-achtige cellulaire automaten met B/S-regels, patroonzaad, live-metingen en een responsief simulatiebord.",
9
- ui: {
10
- "boardLabel": "Bord voor Life-achtige cellulaire automaten",
11
- "play": "Afspelen",
12
- "pause": "Pauze",
13
- "step": "Stap",
14
- "clear": "Leeg canvas",
15
- "randomize": "Willekeurig",
16
- "ruleLabel": "Regelnotatie",
17
- "ruleHelp": "Geboorte / overleving",
18
- "speedLabel": "Tempo",
19
- "densityLabel": "Startdichtheid",
20
- "patternLabel": "Patroon",
21
- "placePattern": "Patroon plaatsen",
22
- "generation": "Generatie",
23
- "population": "Populatie",
24
- "density": "Dichtheid",
25
- "stability": "Stabiliteit",
26
- "births": "Geboortes",
27
- "deaths": "Sterftes",
28
- "achievementsLabel": "Laboratoriumlog",
29
- "achievementPulsar": "Pulsar",
30
- "achievementPulsarDescription": "Oscillatie met periode 2 gedetecteerd",
31
- "achievementImmortal": "Onsterfelijk",
32
- "achievementImmortalDescription": "Generatie 500 bereikt met volledige stabiliteit",
33
- "achievementBigBang": "Big Bang",
34
- "achievementBigBangDescription": "Een schaarse willekeurige seed overschreed 1.000 levende cellen",
35
- "presetClassic": "Conway klassiek",
36
- "presetHighlife": "HighLife",
37
- "presetSeeds": "Seeds",
38
- "presetDayNight": "Dag & nacht",
39
- "patternGlider": "Glider",
40
- "patternGosper": "Gosper-kanon",
41
- "patternPulsar": "Pulsar",
42
- "patternRPentomino": "R-pentomino",
43
- "colonyStatus": "Koloniesignaal",
44
- "statusFrozen": "stabiel",
45
- "statusGrowing": "groeiend",
46
- "statusFading": "afnemend",
47
- "statusChaotic": "volatiel",
48
- "invalidRule": "Gebruik B/S-notatie zoals B3/S23."
47
+ slug,
48
+ title,
49
+ description,
50
+ ui: {
51
+ boardLabel: 'Bord voor Life-achtige cellulaire automaten',
52
+ play: 'Afspelen',
53
+ pause: 'Pauze',
54
+ step: 'Stap',
55
+ clear: 'Leeg canvas',
56
+ randomize: 'Willekeurig',
57
+ ruleLabel: 'Regelnotatie',
58
+ ruleHelp: 'Geboorte / overleving',
59
+ speedLabel: 'Tempo',
60
+ densityLabel: 'Startdichtheid',
61
+ patternLabel: 'Patroon',
62
+ placePattern: 'Patroon plaatsen',
63
+ generation: 'Generatie',
64
+ population: 'Populatie',
65
+ density: 'Dichtheid',
66
+ stability: 'Stabiliteit',
67
+ births: 'Geboortes',
68
+ deaths: 'Sterftes',
69
+ achievementsLabel: 'Laboratoriumlog',
70
+ achievementPulsar: 'Pulsar',
71
+ achievementPulsarDescription: 'Oscillatie met periode 2 gedetecteerd',
72
+ achievementImmortal: 'Onsterfelijk',
73
+ achievementImmortalDescription: 'Generatie 500 bereikt met volledige stabiliteit',
74
+ achievementBigBang: 'Big Bang',
75
+ achievementBigBangDescription: 'Een schaarse willekeurige seed overschreed 1.000 levende cellen',
76
+ presetClassic: 'Conway klassiek',
77
+ presetHighlife: 'HighLife',
78
+ presetSeeds: 'Seeds',
79
+ presetDayNight: 'Dag & nacht',
80
+ patternGlider: 'Glider',
81
+ patternGosper: 'Gosper-kanon',
82
+ patternPulsar: 'Pulsar',
83
+ patternRPentomino: 'R-pentomino',
84
+ colonyStatus: 'Koloniesignaal',
85
+ statusFrozen: 'stabiel',
86
+ statusGrowing: 'groeiend',
87
+ statusFading: 'afnemend',
88
+ statusChaotic: 'volatiel',
89
+ invalidRule: 'Gebruik B/S-notatie zoals B3/S23.',
49
90
  },
91
+ seo: [
92
+ { type: 'title', text: 'Conway Game of Life Simulator met bewerkbare regels', level: 2 },
93
+ { type: 'paragraph', html: 'Dit regellab laat je het klassieke cellulaire automaton uitvoeren en zijn regels bewust veranderen en vergelijken. Het bord ondersteunt direct tekenen, patroonplaatsing, willekeurige zaden, stapsgewijze inspectie, variabel tempo en live-metingen voor populatie, dichtheid, geboortes, sterftes en stabiliteit.' },
94
+ { type: 'title', text: 'Hoe B/S-regels het spel veranderen', level: 3 },
95
+ { type: 'paragraph', html: 'Life-achtige cellulaire automaten worden vaak geschreven in <strong>B/S-notatie</strong>. De B-kant definieert hoeveel levende buren een dode cel nodig heeft om geboren te worden; de S-kant definieert hoeveel buren een levende cel nodig heeft om te overleven. Conways originele regel, <strong>B3/S23</strong>, is beroemd omdat het in een smal gebied ligt tussen uitsterven en ongecontroleerde groei.' },
96
+ { type: 'title', text: 'De live-metingen lezen', level: 3 },
97
+ { type: 'paragraph', html: 'Populatie en dichtheid tonen hoeveel cellen er leven, maar vertellen niet het volledige verhaal. Geboortes en sterftes onthullen het huidige activiteitsniveau, terwijl stabiliteit schat of de kolonie zich stabiliseert in een oscillator, bevriest tot stillevens, of turbulent blijft.' },
98
+ ],
99
+ faq,
100
+ bibliography,
101
+ howTo,
102
+ schemas: [
103
+ { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'EducationalApplication', operatingSystem: 'Any' },
104
+ { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faq.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) },
105
+ { '@context': 'https://schema.org', '@type': 'HowTo', name: title, step: howTo.map((step) => ({ '@type': 'HowToStep', name: step.name, text: step.text })) },
106
+ ],
50
107
  };
@@ -1,11 +1,52 @@
1
- import { content as enContent } from './en';
1
+ import { bibliography } from '../bibliography';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
3
 
4
+ const slug = 'laboratorium-regul-gra-w-zycie-conwaya';
5
+ const title = 'Laboratorium reguł Gry w życie Conwaya';
6
+ const description = 'Graj, edytuj i porównuj automaty komórkowe typu Conwaya z regułami B/S, wzorcami startowymi, metrykami live i responsywną planszą.';
7
+
8
+ const howTo = [
9
+ {
10
+ name: 'Obsiej planszę',
11
+ text: 'Wybierz wzorzec, taki jak szybowiec, pulsar lub działo Gospera, umieść go na siatce lub wygeneruj losową populację.',
12
+ },
13
+ {
14
+ name: 'Uruchom symulację',
15
+ text: 'Użyj przycisków start, pauza, krok i tempo, aby obserwować jak zmieniają się narodziny, śmierci, gęstość i stabilność.',
16
+ },
17
+ {
18
+ name: 'Zmień regułę',
19
+ text: 'Przełącz predefiniowane ustawienie lub wpisz regułę B/S, taką jak B3/S23, B36/S23 lub B3678/S34678, by porównać różne automaty.',
20
+ },
21
+ ];
22
+
23
+ const faq = [
24
+ {
25
+ question: 'Co to jest notacja B/S w Grze w życie?',
26
+ answer: 'Notacja B/S opisuje, ile sąsiadów tworzy nową żywą komórkę i ile pozwala istniejącej żywej komórce przeżyć. Gra w życie Conwaya to B3/S23: martwe komórki rodzą się przy dokładnie trzech sąsiadach, a żywe przeżywają z dwoma lub trzema sąsiadami.',
27
+ },
28
+ {
29
+ question: 'Dlaczego to narzędzie nazywa się laboratorium reguł, a nie tylko symulatorem?',
30
+ answer: 'Klasyczna reguła Conwaya jest zawarta, ale symulator jest zbudowany do porównywania rodzin automatów komórkowych podobnych do Life. Edytowanie liczb narodzin i przeżycia zmienia długoterminowe zachowanie, dając replikatory, fale, zamarznięte wyspy, chaotyczny wzrost lub wyginięcie.',
31
+ },
32
+ {
33
+ question: 'Co oznacza stabilność w symulatorze?',
34
+ answer: 'Stabilność szacuje, jak bardzo kolonia zmieniła się podczas ostatniej generacji. Wysoka stabilność oznacza mało narodzin i śmierci względem populacji; niska stabilność oznacza, że plansza jest burzliwa lub szybko się reorganizuje.',
35
+ },
36
+ {
37
+ question: 'Czy plansza ma krawędzie?',
38
+ answer: 'Symulacja używa toroidalnego zawijania: lewa krawędź łączy się z prawą, a góra łączy się z dołem. Dzięki temu wzorce poruszają się naturalnie, nie znikając przy twardych granicach.',
39
+ },
40
+ {
41
+ question: 'Czy mogę narysować własny wzorzec startowy?',
42
+ answer: 'Tak. Wstrzymaj symulację i kliknij lub stuknij komórki na planszy, aby je przełączyć. Możesz łączyć ręcznie narysowane komórki z wbudowanymi wzorcami i uruchamiać wynik pod dowolnym presetem reguły.',
43
+ },
44
+ ];
45
+
4
46
  export const content: ToolLocaleContent = {
5
- ...enContent,
6
- slug: 'laboratorium-regul-gra-w-zycie-conwaya',
7
- title: 'Laboratorium reguł Gry w życie Conwaya',
8
- description: 'Graj, edytuj i porównuj automaty komórkowe typu Conwaya z regułami B/S, wzorcami startowymi, metrykami live i responsywną planszą.',
47
+ slug,
48
+ title,
49
+ description,
9
50
  ui: {
10
51
  boardLabel: 'Plansza automatów komórkowych typu Life',
11
52
  play: 'Start',
@@ -47,4 +88,20 @@ export const content: ToolLocaleContent = {
47
88
  statusChaotic: 'zmienna',
48
89
  invalidRule: 'Użyj notacji B/S, np. B3/S23.',
49
90
  },
91
+ seo: [
92
+ { type: 'title', text: 'Symulator Gry w życie Conwaya z edytowalnymi regułami', level: 2 },
93
+ { type: 'paragraph', html: 'To laboratorium reguł Gry w życie Conwaya pozwala uruchomić klasyczny automat komórkowy i celowo zmieniać oraz porównywać jego reguły. Plansza obsługuje bezpośrednie rysowanie, umieszczanie wzorców, losowe ziarna, inspekcję krok po kroku, zmienne tempo i pomiary na żywo dla populacji, gęstości, narodzin, śmierci i stabilności.' },
94
+ { type: 'title', text: 'Jak reguły B/S zmieniają grę', level: 3 },
95
+ { type: 'paragraph', html: 'Automaty komórkowe podobne do Life są często zapisywane w <strong>notacji B/S</strong>. Strona B określa, ile żywych sąsiadów potrzebuje martwa komórka, aby się narodzić; strona S określa, ile sąsiadów potrzebuje żywa komórka, aby przeżyć. Oryginalna reguła Conwaya, <strong>B3/S23</strong>, jest słynna, bo znajduje się w wąskim obszarze między wyginięciem a niekontrolowanym wzrostem.' },
96
+ { type: 'title', text: 'Odczytywanie metryk na żywo', level: 3 },
97
+ { type: 'paragraph', html: 'Populacja i gęstość pokazują, ile komórek żyje, ale nie opowiadają całej historii. Narodziny i śmierci ujawniają bieżący poziom aktywności, a stabilność szacuje, czy kolonia stabilizuje się w oscylatorze, zastyga w nieruchomych strukturach, czy pozostaje burzliwa.' },
98
+ ],
99
+ faq,
100
+ bibliography,
101
+ howTo,
102
+ schemas: [
103
+ { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'EducationalApplication', operatingSystem: 'Any' },
104
+ { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faq.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) },
105
+ { '@context': 'https://schema.org', '@type': 'HowTo', name: title, step: howTo.map((step) => ({ '@type': 'HowToStep', name: step.name, text: step.text })) },
106
+ ],
50
107
  };