{"id":2115,"date":"2026-05-26T08:05:43","date_gmt":"2026-05-26T08:05:43","guid":{"rendered":"https:\/\/www.vpascode.com\/ru\/docs\/uncategorized\/mermaid-js-flowchart-syntax-guide\/"},"modified":"2026-05-26T08:05:43","modified_gmt":"2026-05-26T08:05:43","slug":"mermaid-js-flowchart-syntax-guide","status":"publish","type":"ld_docs","link":"https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/","title":{"rendered":"\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0443 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c Mermaid.js"},"content":{"rendered":"<h2>\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u043f\u043e\u0442\u043e\u043a\u043e\u0432?<\/h2>\n<p>A <strong>\u0414\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u043f\u043e\u0442\u043e\u043a\u043e\u0432<\/strong> \u2014 \u044d\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u0438\u0439 \u043a\u0430\u0440\u0442\u0430, \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0430\u044f \u043f\u043e\u0448\u0430\u0433\u043e\u0432\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441, \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0443 \u0438\u043b\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0431\u0438\u0437\u043d\u0435\u0441-\u043b\u043e\u0433\u0438\u043a\u0443. \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0432 \u0432\u0438\u0434\u0435 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0433\u0435\u043e\u043c\u0435\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0444\u0438\u0433\u0443\u0440 \u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u044f \u043f\u043e\u0442\u043e\u043a \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u0441\u0442\u0440\u0435\u043b\u043e\u043a, \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430\u043c \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u043e\u0440\u0430\u043c \u0441\u0438\u0441\u0442\u0435\u043c \u043b\u0435\u0433\u043a\u043e \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0442\u044c \u0443\u0441\u043b\u043e\u0432\u043d\u044b\u0435 \u043f\u0443\u0442\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f, \u0432\u044b\u0434\u0435\u043b\u044f\u0442\u044c \u0431\u043b\u043e\u043a\u0438, \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0435\u0441\u044f \u0443\u0437\u043a\u0438\u043c\u0438 \u043c\u0435\u0441\u0442\u0430\u043c\u0438, \u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0446\u0438\u043a\u043b\u044b \u043b\u043e\u0433\u0438\u043a\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0434\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u0438.<\/p>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <strong>Mermaid.js<\/strong>, \u0432\u0430\u043c \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u0442\u0440\u0430\u0442\u0438\u0442\u044c \u0447\u0430\u0441\u044b \u043d\u0430 \u043f\u0435\u0440\u0435\u0442\u0430\u0441\u043a\u0438\u0432\u0430\u043d\u0438\u0435 \u0431\u043b\u043e\u043a\u043e\u0432, \u043c\u0438\u043a\u0440\u043e\u043c\u0435\u043d\u0435\u0434\u0436\u043c\u0435\u043d\u0442 \u043b\u0438\u043d\u0438\u0439 \u0441\u0435\u0442\u043a\u0438 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u043e\u0442\u0441\u0442\u0443\u043f\u043e\u0432. \u0414\u0432\u0438\u0433\u0430\u0442\u0435\u043b\u044c \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u0442 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b \u0443\u0437\u043b\u043e\u0432 \u0438\u0437 \u0432\u0430\u0448\u0438\u0445 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0434\u0435\u043a\u043b\u0430\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044f \u0432\u0430\u043c \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0441\u043e\u0441\u0440\u0435\u0434\u043e\u0442\u043e\u0447\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u043b\u0435\u0436\u0430\u0449\u0435\u0439 \u0432 \u043e\u0441\u043d\u043e\u0432\u0435 \u043b\u043e\u0433\u0438\u043a\u0435 \u0432\u0430\u0448\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b.<\/p>\n<h2>\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c\u0443 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0443: \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0438 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438<\/h2>\n<p>\u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u044d\u043b\u0435\u0433\u0430\u043d\u0442\u043d\u0443\u044e, \u043b\u0435\u0433\u043a\u043e \u0447\u0438\u0442\u0430\u0435\u043c\u0443\u044e \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0443 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u0432 Mermaid, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0432\u043b\u0430\u0434\u0435\u0442\u044c \u0438\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440\u0430\u043c\u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0445\u043e\u043b\u0441\u0442\u0430, \u0433\u0435\u043e\u043c\u0435\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u043e\u0431\u0440\u0430\u043c\u043b\u0435\u043d\u0438\u044f\u043c\u0438 \u0443\u0437\u043b\u043e\u0432, \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 \u0438 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u044b\u043c\u0438 \u043f\u043e\u0434\u0433\u0440\u0430\u0444\u0430\u043c\u0438.<\/p>\n<h3>1. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0445\u043e\u043b\u0441\u0442\u0430<\/h3>\n<p>\u041e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u0432\u0430\u0448\u0435\u0439 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0430\u0440\u044b \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0445 \u0441\u043b\u043e\u0432, \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0445 \u043a \u043e\u0431\u0435\u0440\u0442\u043a\u0435 <code>graph<\/code> \u0438\u043b\u0438 <code>flowchart<\/code>\u043e\u0431\u0435\u0440\u0442\u043a\u0435. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0432\u043e\u0435\u0439 \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0447\u0435\u0442\u044b\u0440\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043a\u043b\u044e\u0447\u0430 \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u0438:<\/p>\n<ul>\n<li><code>flowchart TD<\/code> (\u0441\u0432\u0435\u0440\u0445\u0443 \u0432\u043d\u0438\u0437 \/ \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u044f)<\/li>\n<li><code>flowchart BU<\/code> (\u0441\u043d\u0438\u0437\u0443 \u0432\u0432\u0435\u0440\u0445)<\/li>\n<li><code>flowchart LR<\/code> (\u0441\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e \/ \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0430\u044f \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u044f)<\/li>\n<li><code>flowchart RL<\/code> (\u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0435\u0432\u043e)<\/li>\n<\/ul>\n<h3>2. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0433\u0435\u043e\u043c\u0435\u0442\u0440\u0438\u0438 \u0443\u0437\u043b\u043e\u0432 (\u0444\u043e\u0440\u043c\u044b)<\/h3>\n<p>\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u043e\u0441\u0442\u0440\u044b\u0439 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u044b\u0439 \u0431\u043b\u043e\u043a. \u0427\u0442\u043e\u0431\u044b \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u0430\u0448\u0438 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0431\u043e\u043b\u0435\u0435 \u043b\u0435\u0433\u043a\u043e \u0447\u0438\u0442\u0430\u0435\u043c\u044b\u043c\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0441\u043a\u043e\u0431\u043a\u0438 Mermaid, \u0447\u0442\u043e\u0431\u044b \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442 \u043a \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c \u044d\u0442\u0430\u043f\u0430\u043c \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430. \u041a\u0430\u0436\u0434\u044b\u0439 \u0431\u043b\u043e\u043a \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0451\u043d \u0442\u043e\u043a\u0435\u043d\u043e\u043c \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438 \u0434\u043b\u044f \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430:<\/p>\n<ul>\n<li><strong>\u0421\u043a\u0440\u0443\u0433\u043b\u0451\u043d\u043d\u044b\u0435 \u043a\u0440\u0430\u044f:<\/strong> <code>id(\u0422\u0435\u043a\u0441\u0442)<\/code> \u2014 \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043e\u0431\u0449\u0438\u0439 \u044d\u0442\u0430\u043f \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430.<\/li>\n<li><strong>\u0424\u043e\u0440\u043c\u0430 \u0441\u0442\u0430\u0434\u0438\u043e\u043d\u0430\/\u043a\u0430\u043f\u0441\u0443\u043b\u044b:<\/strong> <code>id([\u0422\u0435\u043a\u0441\u0442])<\/code> \u2014 \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 \u043c\u0430\u0440\u043a\u0435\u0440 \u0434\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0445 \u0438 \u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u0445 \u0442\u043e\u0447\u0435\u043a \u0433\u0440\u0430\u043d\u0438\u0446.<\/li>\n<li><strong>\u041f\u043e\u0434\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\/\u041f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441:<\/strong> <code>id[[\u0422\u0435\u043a\u0441\u0442]]<\/code> \u2014 \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0438\u043d\u043a\u0430\u043f\u0441\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0443\u044e \u043f\u043e\u0434\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u0438\u043b\u0438 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0441\u043a\u0440\u0438\u043f\u0442 \u043a\u043b\u0430\u0441\u0441\u0430.<\/li>\n<li><strong>\u0426\u0438\u043b\u0438\u043d\u0434\u0440\/\u0411\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445:<\/strong> <code>id[(\u0422\u0435\u043a\u0441\u0442)]<\/code> \u2014 \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0432 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u044d\u0448\u0438 \u0438\u043b\u0438 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0434\u0430\u043d\u043d\u044b\u0445.<\/li>\n<li><strong>\u0420\u043e\u043c\u0431\/\u0414\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u043f\u0440\u0438\u043d\u044f\u0442\u0438\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u0439:<\/strong> <code>id{\u0422\u0435\u043a\u0441\u0442}<\/code> \u2014 \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0443\u0441\u043b\u043e\u0432\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u0438, \u0432\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u044f if\/else \u0438\u043b\u0438 \u0442\u043e\u0447\u043a\u0438 \u043e\u0446\u0435\u043d\u043a\u0438.<\/li>\n<li><strong>\u041f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u043e\u0433\u0440\u0430\u043c\u043c:<\/strong> <code>id[\/\u0422\u0435\u043a\u0441\u0442\/]<\/code> \u0438\u043b\u0438 <code>id[\u0422\u0435\u043a\u0441\u0442]<\/code> \u2014 \u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442 \u043d\u0430\u043a\u043b\u043e\u043d\u043d\u044b\u0435 \u0433\u0440\u0430\u043d\u0438\u0446\u044b \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u044f\u0432\u043d\u043e\u0433\u043e \u0432\u0432\u043e\u0434\u0430\/\u0432\u044b\u0432\u043e\u0434\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 (I\/O).<\/li>\n<\/ul>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Mermaid<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNpLy8kvT85ILCpRCHHh5VIAguISIC8+Lz8lVSM6GMRWcK1ITS4tyczPi9WEKCksTS2qjE9JitYIyC8uSS9KDQ70UfDMA+rMS07VjIUoKkvMyUxJLEmNT85ITc6u9ixWcCwtycgvyqxKTbGvBQBvyCjM\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c Mermaid \u0432 VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Mermaid<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNpLy8kvT85ILCpRCHHh5VIAguISIC8+Lz8lVSP6wvQLGy7sv9h8sfHCLoULmy52X9h\/Yd+F3Rf2XtgKxDsu9sdqQjQVlqYWVcanJEVrXFh7YdeF7UD5PUC1uy\/2X2xQCMgvLkkvSg0O9NGMhSgvS8zJTEksSY1PzkhNzq6+MAFodtOFfRcbLuwA6t13YRPQ2r0X9tnXAgA8dVHF\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Mermaid in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-mermaid\"><code class=\"language-mermaid\" data-language=\"mermaid\" class=\"language-mermaid\">flowchart TD\r\n    start_node([\u0417\u0430\u043f\u0443\u0441\u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f])\r\n    query_db[(\u042d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 PostgreSQL)]\r\n    validate_check{\u0410\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043e?}<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNpLy8kvT85ILCpRCHHh5VIAguISIC8+Lz8lVSP6wvQLGy7sv9h8sfHCLoULmy52X9h\/Yd+F3Rf2XtgKxDsu9sdqQjQVlqYWVcanJEVrXFh7YdeF7UD5PUC1uy\/2X2xQCMgvLkkvSg0O9NGMhSgvS8zJTEksSY1PzkhNzq6+MAFodtOFfRcbLuwA6t13YRPQ2r0X9tnXAgA8dVHF\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Mermaid in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNpLy8kvT85ILCpRCHHh5VIAguISIC8+Lz8lVSM6GMRWcK1ITS4tyczPi9WEKCksTS2qjE9JitYIyC8uSS9KDQ70UfDMA+rMS07VjIUoKkvMyUxJLEmNT85ITc6u9ixWcCwtycgvyqxKTbGvBQBvyCjM\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c Mermaid \u0432 VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"jWBAKCL\"><img fetchpriority=\"high\" alt=\"\" class=\"alignnone size-full wp-image-613\" decoding=\"async\" fetchpriority=\"high\" height=\"173\" sizes=\"(max-width: 570px) 100vw, 570px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902a0955b5.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902a0955b5.png 570w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902a0955b5-300x91.png 300w\" width=\"570\"\/><\/p>\n<h3>3. \u041f\u0440\u0430\u0432\u0438\u043b\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043b\u0438\u043d\u0438\u0439 \u0438 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0435 \u043c\u0435\u0442\u043a\u0438<\/h3>\n<p>\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043b\u0438\u043d\u0438\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u044b\u0445 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439 \u0438 \u0441\u0442\u0438\u043b\u0435\u0439 \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u0438. \u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0447\u0438\u0441\u0442\u043e\u0442\u0443 \u0432\u0430\u0448\u0438\u0445 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c, \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u043e\u043f\u0438\u0441\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043c\u0435\u0442\u043a\u0438 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043d\u0430 \u043f\u0443\u0442\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439:<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Mermaid<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNp9zL8KwjAYBPC90Hc4Ch2rT1Chf1wcVGjBOU0iCYZ8kH5ahT68sYI4iDfdcPc7O5qkEYHRt2mCmDxHx8IrERQkea8lU4AIgSZMlg1Y3xlODNq9DxWKYoM523WHPY7i4UiobEadJh+wJWat1tX48NIE8nQd4azXv8EaxWoRlz22N+05gs0X2BsrLxjIKa3+SA3K8gU1wbKVwuEUi45W+wR14EpC\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c Mermaid \u0432 VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Mermaid<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNqdkM9qwkAQxu+C7zAEPKY+gYWqJw96qC8gBemhIJSCFw9JpPSgUM9epH2C+GdrTIy+wrdv5DcbQcGTDWx255vZ+X6z\/bfB8OW19\/4h3Wa5JPwqFcGPjRAjxwaxDXjOuX+LDW1kAxhkSBEzxIHBBgnzhitxNcJ6g1SLmV9x7QR7GIapBoXLk\/j+o4w8LKhlvLA9m+iGNV3HlNSm9dxpeyOpl0sXvgWzOT0iegbFxSp\/oaLYT0oHiud+meO7h60u\/kMBN7tpyYmLwZd2ovYwZGtcs\/3qQM7B2f9dEP\/D0pBazaHM2SVxA3+xJtSn0Y5bvtaRYminBGmeAPfgEC0=\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Mermaid in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-mermaid\"><code class=\"language-mermaid\" data-language=\"mermaid\" class=\"language-mermaid\">flowchart TD\r\n    %% \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430\u044f \u0441\u0442\u0440\u0435\u043b\u043a\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0441 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0439 \u043c\u0435\u0442\u043a\u043e\u0439\r\n    A --&gt; |\"\u041f\u043e\u043b\u0435\u0437\u043d\u0430\u044f \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 JSON\"| B\r\n\r\n    %% \u041f\u0443\u043d\u043a\u0442\u0438\u0440\u043d\u0430\u044f\/\u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430\u044f \u043b\u0438\u043d\u0438\u044f \u0441 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0439 \u043c\u0435\u0442\u043a\u043e\u0439\r\n    B -.-&gt; |\"\u0410\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u0435\"| C\r\n\r\n    %% \u0422\u043e\u043b\u0441\u0442\u0430\u044f \u0436\u0438\u0440\u043d\u0430\u044f \u043b\u0438\u043d\u0438\u044f \u0441 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0439 \u043c\u0435\u0442\u043a\u043e\u0439\r\n    C ==&gt; |\"\u041a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c\"| D<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNqdkM9qwkAQxu+C7zAEPKY+gYWqJw96qC8gBemhIJSCFw9JpPSgUM9epH2C+GdrTIy+wrdv5DcbQcGTDWx255vZ+X6z\/bfB8OW19\/4h3Wa5JPwqFcGPjRAjxwaxDXjOuX+LDW1kAxhkSBEzxIHBBgnzhitxNcJ6g1SLmV9x7QR7GIapBoXLk\/j+o4w8LKhlvLA9m+iGNV3HlNSm9dxpeyOpl0sXvgWzOT0iegbFxSp\/oaLYT0oHiud+meO7h60u\/kMBN7tpyYmLwZd2ovYwZGtcs\/3qQM7B2f9dEP\/D0pBazaHM2SVxA3+xJtSn0Y5bvtaRYminBGmeAPfgEC0=\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Mermaid in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNp9zL8KwjAYBPC90Hc4Ch2rT1Chf1wcVGjBOU0iCYZ8kH5ahT68sYI4iDfdcPc7O5qkEYHRt2mCmDxHx8IrERQkea8lU4AIgSZMlg1Y3xlODNq9DxWKYoM523WHPY7i4UiobEadJh+wJWat1tX48NIE8nQd4azXv8EaxWoRlz22N+05gs0X2BsrLxjIKa3+SA3K8gU1wbKVwuEUi45W+wR14EpC\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c Mermaid \u0432 VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"igwGmSf\"><img alt=\"\" class=\"alignnone size-full wp-image-614\" decoding=\"async\" height=\"454\" sizes=\"(max-width: 113px) 100vw, 113px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902ac35bd4.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902ac35bd4.png 113w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902ac35bd4-75x300.png 75w\" width=\"113\"\/><\/p>\n<h3>4. \u041c\u043e\u0434\u0443\u043b\u044c\u043d\u0430\u044f \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u043e\u0434\u0433\u0440\u0430\u0444\u043e\u0432<\/h3>\n<p>\u0427\u0442\u043e\u0431\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0447\u0435\u0442\u043a\u0438\u0435 \u0433\u0440\u0430\u043d\u0438\u0446\u044b \u0441\u0435\u0442\u0438, \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u044b \u0438\u043b\u0438 \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0441\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434, \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u0435 \u0432\u0430\u0448\u0438 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u044b\u0445<code>\u043f\u043e\u0434\u0433\u0440\u0430\u0444<\/code>\u043e\u0431\u0435\u0440\u0442\u043e\u043a. \u0412\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0435 \u043f\u043e\u0434\u0433\u0440\u0430\u0444, \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u044f \u0435\u043c\u0443 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440, \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0438 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u044f \u0435\u0433\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e<code>\u043a\u043e\u043d\u0435\u0446<\/code> \u0442\u0435\u0433:<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Mermaid<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNpLy8kvT85ILCpRCHHh5VIAguLSpPSixIIMhcTSkox4IC9aKTg1ubQos6RSwSm\/NC8lsahSKRaiFgTSE0tSyxMrox0DPBXcIexYBV1dO4j+8vyi7NQijZD87NQ8hbDEnMyUxJL8Ik2I9tS8FAChvimf\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c Mermaid \u0432 VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Mermaid<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNpLy8kvT85ILCpRCHHh5VIAguLSpPSixIIMhcTSkox4IC9a6cLkiw0XNlzYe2HHxbYLGxQubLyw9cL2C\/su7L+w4WIjUHjfxcaLTRd2KMVCTACB9MSS1PLEyugLKy7svth3YbuCY4BnrIKurh3E2PL8ouzUIo0Lk4DG7r6w48IWoElNQHMaFEDUhV1AC4DGXtikCTExNS8FANVOVA8=\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Mermaid in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-mermaid\"><code class=\"language-mermaid\" data-language=\"mermaid\" class=\"language-mermaid\">flowchart TD\r\n    subgraph auth_sub[\"\u0413\u0440\u0430\u043d\u0438\u0446\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438\"]\r\n        gateway[\u0428\u043b\u044e\u0437 API] --&gt; auth_worker(\u0412\u0430\u043b\u0438\u0434\u0430\u0442\u043e\u0440 \u0442\u043e\u043a\u0435\u043d\u043e\u0432)\r\n    end<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNpLy8kvT85ILCpRCHHh5VIAguLSpPSixIIMhcTSkox4IC9a6cLkiw0XNlzYe2HHxbYLGxQubLyw9cL2C\/su7L+w4WIjUHjfxcaLTRd2KMVCTACB9MSS1PLEyugLKy7svth3YbuCY4BnrIKurh3E2PL8ouzUIo0Lk4DG7r6w48IWoElNQHMaFEDUhV1AC4DGXtikCTExNS8FANVOVA8=\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Mermaid in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNpLy8kvT85ILCpRCHHh5VIAguLSpPSixIIMhcTSkox4IC9aKTg1ubQos6RSwSm\/NC8lsahSKRaiFgTSE0tSyxMrox0DPBXcIexYBV1dO4j+8vyi7NQijZD87NQ8hbDEnMyUxJL8Ik2I9tS8FAChvimf\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c Mermaid \u0432 VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"GfaAkHz\"><img alt=\"\" class=\"alignnone size-full wp-image-615\" decoding=\"async\" height=\"140\" sizes=\"(max-width: 457px) 100vw, 457px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902bb7e3ea.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902bb7e3ea.png 457w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902bb7e3ea-300x92.png 300w\" width=\"457\"\/><\/p>\n<h2>\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0434\u043b\u044f \u0447\u0438\u0441\u0442\u044b\u0445 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c<\/h2>\n<ul>\n<li><strong>\u0420\u0430\u0437\u0434\u0435\u043b\u044f\u0439\u0442\u0435 \u043c\u0430\u043a\u0435\u0442\u044b \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e:<\/strong> \u0414\u043b\u044f \u0434\u043b\u0438\u043d\u043d\u044b\u0445 \u043c\u043d\u043e\u0433\u043e\u044d\u0442\u0430\u043f\u043d\u044b\u0445 \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043d\u044b\u0445 \u043f\u0430\u0439\u043f\u043b\u0430\u0439\u043d\u043e\u0432 \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 <code>flowchart LR<\/code> \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435. \u042d\u0442\u043e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043d\u0430\u043c\u043d\u043e\u0433\u043e \u0447\u0438\u0449\u0435 \u043d\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u0448\u0438\u0440\u043e\u043a\u043e\u044d\u043a\u0440\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430\u0445 \u0432 \u043b\u0430\u043d\u0434\u0448\u0430\u0444\u0442\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435, \u0447\u0435\u043c \u0434\u043b\u0438\u043d\u043d\u044b\u0439 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043c\u0430\u043a\u0435\u0442.<\/li>\n<li><strong>\u0412\u044b\u0434\u0435\u043b\u044f\u0439\u0442\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0435 \u0446\u0438\u043a\u043b\u044b:<\/strong> \u0415\u0441\u043b\u0438 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u044b\u0439 \u0446\u0438\u043a\u043b \u043f\u043e\u0432\u0442\u043e\u0440\u0435\u043d\u0438\u0439, \u044f\u0441\u043d\u043e \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u044c\u0442\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0442\u0435\u043b\u044c (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <code>retry --&gt; |\"\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u0430\u044f \u043f\u043e\u043f\u044b\u0442\u043a\u0430\"| start<\/code>) \u0447\u0442\u043e\u0431\u044b \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0438 \u043d\u0435 \u043f\u0443\u0442\u0430\u043b\u0438 \u0446\u0438\u043a\u043b \u0441\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u043c \u043f\u0440\u044f\u043c\u044b\u043c \u043f\u0443\u0442\u0451\u043c.<\/li>\n<li><strong>\u0418\u0437\u0431\u0435\u0433\u0430\u0439\u0442\u0435 \u0441\u043c\u0435\u0448\u0438\u0432\u0430\u043d\u0438\u044f \u0442\u0438\u043f\u043e\u0432 \u0433\u0440\u0430\u0444\u043e\u0432:<\/strong> \u041f\u0440\u0438\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0439\u0442\u0435\u0441\u044c \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0433\u043e <code>flowchart<\/code> \u043a\u043b\u044e\u0447\u0435\u0432\u043e\u0433\u043e \u0441\u043b\u043e\u0432\u0430 \u0432\u043c\u0435\u0441\u0442\u043e \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0435\u0433\u043e <code>graph<\/code> \u0444\u043b\u0430\u0433\u0430 \u043f\u0440\u0438 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u043a\u0430\u0440\u0442. \u0414\u0432\u0438\u0433\u0430\u0442\u0435\u043b\u044c <code>flowchart<\/code> \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043e\u0431\u043d\u043e\u0432\u043b\u0451\u043d\u043d\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0441\u043b\u043e\u0436\u043d\u044b\u0435 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u0438 \u0441\u0442\u0440\u0435\u043b\u043e\u043a \u0438 \u0431\u043e\u043b\u0435\u0435 \u0447\u0438\u0441\u0442\u043e\u0435 \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u0443\u0442\u0435\u0439.<\/li>\n<\/ul>\n<h2>\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c Mermaid.js \u0438\u0437 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0439 \u0436\u0438\u0437\u043d\u0438<\/h2>\n<h3>\u041f\u0440\u0438\u043c\u0435\u0440 1: \u041c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u043d\u0430\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 (\u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0441\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e)<\/h3>\n<p>\u042d\u0442\u043e\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0447\u0435\u0440\u0442\u0451\u0436 \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u0443\u0435\u0442 \u0441\u0435\u0440\u0432\u0438\u0441 \u043f\u0440\u0438\u0451\u043c\u0430 \u0432\u0435\u0431-\u0442\u0435\u043b\u0435\u043c\u0435\u0442\u0440\u0438\u0438. \u041e\u043d \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442, \u043a\u0430\u043a \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0442\u044c \u0432\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u0440\u043e\u043c\u0431\u044b \u0441 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u043c\u0438 \u0438 \u0444\u043e\u0440\u043c\u044b \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0447\u0451\u0442\u043a\u043e\u043c \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u043c \u0445\u043e\u043b\u0441\u0442\u0435.<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Mermaid<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNp1UU1v2zAMvQ\/YfyA6FHCBBW36gQ497NAExbbu0AZuezACQ5HomrAseRJVpx\/775PtuPMO04EAqfceycdC21aWwjH8XH38APHt78MSCzIIqLFGw2CsQg8tcQm4bTRJYnhEWyO7Z\/ClaNAPVDLESfaAm9LaCq7IoVofwGz2Nf40gXOy2eFCNBwcwrc0vYEV\/gro+XA98gdUTxGBy1yWKKvXe6FJCUZIbYXm9wAe4l9UT3rb+26eOvQA3XsDdC73bJskW2FsbOD0aA53puNZRy\/dhP9R6rvCj4c0qrSOGPM4bMAsuwkbTb4EtnAtikrAbVdfr6dzTQi9XGtdhS5vnJXJwhofanSwFFhbs+s\/QfQMtenmdpglKdXopdC4vISFDp7RHeyajaCeEet1kqUxkoluKbiKx+3Wez\/sbaC4nowStgbPzxrBPkWHSI0nHIoTLwrS+uJTURQnUn327KKtXSrnR+e7dNaS4vLiuNlOJUbfR4Ev6lyJdwElT85Oz\/4VmDfbPxln1jw=\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c Mermaid \u0432 VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Mermaid<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNp1Ul9r01AcfRf8DpfJoAXDVrcx2YMP4oOoDyIFH0IIMbmhoZmJaUonTrDt5oROxkQQBB1+g7Su2H\/LvsLvfiPPvTe1EbGQJvd3f+f8zjn3+mHUcRtOkrInz27eYPitrzP6TtfiHY3pEs8czxVNaMxEn35hmdOIiY+qvpB7oqdLXSbOaIT1APUJo5\/YzGWL6IFsIk7w1aUZqOS2OKIc5QVlcqlHBy+DtGLSD9QzGmK\/h\/ecgXRMQ3GM+TOrygzjHjrjdmoHkblBF6CFVnGMtkz02MN6\/akBoZnykGNktmEt+TVKUTjttGG7De4239CF7JRj8J5RxpSlmTKevdVY\/b8CKY7DNfqGLg2Uxqcl6Noh40lit9IohqlPRU8faZyy7c0aU9CMRhIhA4JmqSHD0Nyq\/m\/eZ4CmogvQCJn25AGJ02L2o+d1DO0kQcrtV23e5qYJa31EOQc9jIn3wJwhUIaRJzo4uoSex47fdCyrbLVEo2Z3oqTJEztOIreiVCwg98qga3lOimi4ElTIL2EUh\/dCxpFws0JfoSlTPqCC1YN93nKdkD+4Xy1ULHsVMOXJPkL8IvOSAPFBnCMnbVtLkLHL2Fa3+FwM5AB0D3B70aX95v9ebmSipExUYaopWunrkJdPwA\/CcO+W7\/tbrne7lSZRk8ulW9vcLZZGJ\/DSxt6d+KBMsbwFS4K73q7n\/CHw3K2d7Z2\/CWrxwW+qXNjG\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Mermaid in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-mermaid\"><code class=\"language-mermaid\" data-language=\"mermaid\" class=\"language-mermaid\">flowchart LR\r\n    %% \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0443\u0437\u043b\u043e\u0432 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0441 \u044f\u0432\u043d\u044b\u043c\u0438 \u0433\u0435\u043e\u043c\u0435\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u0444\u043e\u0440\u043c\u0430\u043c\u0438\r\n    init([\u0421\u0440\u0430\u0431\u043e\u0442\u0430\u043b \u0432\u0435\u0431\u0445\u0443\u043a]) --&gt; input_io[\/\u041f\u0435\u0440\u0435\u0445\u0432\u0430\u0442 HTTP-\u0437\u0430\u043f\u0440\u043e\u0441\u0430\/]\r\n    input_io --&gt; auth_check{\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0442\u043e\u043a\u0435\u043d\u0430}\r\n    \r\n    auth_check --&gt; |\"\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u0442\u043e\u043a\u0435\u043d\"| err_stop([\u0412\u0435\u0440\u043d\u0443\u0442\u044c 401 \u041d\u0435\u0430\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043e])\r\n    auth_check --&gt; |\"\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 JWT\"| write_queue[[\u041f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u044c Kafka]]\r\n    \r\n    write_queue --&gt; worker_proc(\u0414\u0435\u043c\u043e\u043d-\u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u044c)\r\n    worker_proc --&gt; db_store[(\u041a\u043b\u0430\u0441\u0442\u0435\u0440 TimescaleDB)]\r\n    db_store --&gt; term([\u0417\u0430\u0432\u0435\u0440\u0448\u0451\u043d\u043d\u044b\u0439 \u043f\u043e\u0442\u043e\u043a])\r\n\r\n    %% \u0411\u044b\u0441\u0442\u0440\u044b\u0435 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0441\u0442\u0438\u043b\u0435\u0439\r\n    style auth_check fill:#fff3cd,stroke:#ffc107,stroke-width:2px\r\n    style err_stop fill:#f8d7da,stroke:#dc3545,stroke-width:1px<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNp1Ul9r01AcfRf8DpfJoAXDVrcx2YMP4oOoDyIFH0IIMbmhoZmJaUonTrDt5oROxkQQBB1+g7Su2H\/LvsLvfiPPvTe1EbGQJvd3f+f8zjn3+mHUcRtOkrInz27eYPitrzP6TtfiHY3pEs8czxVNaMxEn35hmdOIiY+qvpB7oqdLXSbOaIT1APUJo5\/YzGWL6IFsIk7w1aUZqOS2OKIc5QVlcqlHBy+DtGLSD9QzGmK\/h\/ecgXRMQ3GM+TOrygzjHjrjdmoHkblBF6CFVnGMtkz02MN6\/akBoZnykGNktmEt+TVKUTjttGG7De4239CF7JRj8J5RxpSlmTKevdVY\/b8CKY7DNfqGLg2Uxqcl6Noh40lit9IohqlPRU8faZyy7c0aU9CMRhIhA4JmqSHD0Nyq\/m\/eZ4CmogvQCJn25AGJ02L2o+d1DO0kQcrtV23e5qYJa31EOQc9jIn3wJwhUIaRJzo4uoSex47fdCyrbLVEo2Z3oqTJEztOIreiVCwg98qga3lOimi4ElTIL2EUh\/dCxpFws0JfoSlTPqCC1YN93nKdkD+4Xy1ULHsVMOXJPkL8IvOSAPFBnCMnbVtLkLHL2Fa3+FwM5AB0D3B70aX95v9ebmSipExUYaopWunrkJdPwA\/CcO+W7\/tbrne7lSZRk8ulW9vcLZZGJ\/DSxt6d+KBMsbwFS4K73q7n\/CHw3K2d7Z2\/CWrxwW+qXNjG\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Mermaid in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNp1UU1v2zAMvQ\/YfyA6FHCBBW36gQ497NAExbbu0AZuezACQ5HomrAseRJVpx\/775PtuPMO04EAqfceycdC21aWwjH8XH38APHt78MSCzIIqLFGw2CsQg8tcQm4bTRJYnhEWyO7Z\/ClaNAPVDLESfaAm9LaCq7IoVofwGz2Nf40gXOy2eFCNBwcwrc0vYEV\/gro+XA98gdUTxGBy1yWKKvXe6FJCUZIbYXm9wAe4l9UT3rb+26eOvQA3XsDdC73bJskW2FsbOD0aA53puNZRy\/dhP9R6rvCj4c0qrSOGPM4bMAsuwkbTb4EtnAtikrAbVdfr6dzTQi9XGtdhS5vnJXJwhofanSwFFhbs+s\/QfQMtenmdpglKdXopdC4vISFDp7RHeyajaCeEet1kqUxkoluKbiKx+3Wez\/sbaC4nowStgbPzxrBPkWHSI0nHIoTLwrS+uJTURQnUn327KKtXSrnR+e7dNaS4vLiuNlOJUbfR4Ev6lyJdwElT85Oz\/4VmDfbPxln1jw=\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c Mermaid \u0432 VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"mpzcybi\"><img loading=\"lazy\" alt=\"\" class=\"alignnone size-full wp-image-616\" decoding=\"async\" height=\"181\" loading=\"lazy\" sizes=\"auto, (max-width: 1597px) 100vw, 1597px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902c872f26.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902c872f26.png 1597w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902c872f26-300x34.png 300w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902c872f26-1024x116.png 1024w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902c872f26-768x87.png 768w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902c872f26-1536x174.png 1536w\" width=\"1597\"\/><\/p>\n<p><strong>\u0420\u0430\u0437\u0431\u043e\u0440 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430:<\/strong> \u042d\u0442\u043e\u0442 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u043f\u043b\u0430\u0432\u043d\u043e \u0442\u0435\u0447\u0435\u0442 \u0441\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e. \u0428\u0430\u0433 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0436\u0435\u043b\u0442\u0443\u044e \u0444\u043e\u0440\u043c\u0443 \u0440\u043e\u043c\u0431\u0430 \u0441 \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c (<code>auth_check{\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0442\u043e\u043a\u0435\u043d\u0430}<\/code>), \u0447\u0442\u043e \u0447\u0435\u0442\u043a\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u0435\u0442 \u043f\u0443\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043d\u0430 \u0434\u0432\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430. \u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u043e \u0443\u0437\u043d\u0430\u0432\u0430\u0435\u043c\u044b \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0438\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u043c \u0446\u0438\u043b\u0438\u043d\u0434\u0440\u0430\u043c \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 (<code>[(\u041a\u043b\u0430\u0441\u0442\u0435\u0440 TimescaleDB)]<\/code>), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u043c \u0432\u0445\u043e\u0434\u0430\u043c.<\/p>\n<h3>\u041f\u0440\u0438\u043c\u0435\u0440 2: \u041c\u043d\u043e\u0433\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043f\u0440\u0438\u044f\u0442\u0438\u044f (\u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u0441 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u043c\u0438 \u043f\u043e\u0434\u0433\u0440\u0430\u0444\u0430\u043c\u0438)<\/h3>\n<p>\u042d\u0442\u043e\u0442 \u043f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0439 \u043a\u043e\u0440\u043f\u043e\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u0447\u0435\u0440\u0442\u0435\u0436 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442 \u043f\u0443\u0442\u044c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u041e\u043d \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0443\u0435\u0442 \u0448\u0430\u0433\u0438 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e \u043f\u043e \u0442\u0440\u0435\u043c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u044b\u043c \u043f\u043e\u0434\u0433\u0440\u0430\u0444\u0430\u043c, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043d\u044b\u0435 \u0443\u0440\u043e\u0432\u043d\u0438.<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Mermaid<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNqNkd1qwkAQhe8LvsMQEPRCpC9QSCNthbYEo\/UiSNhsRl2a7KazGzXgw3di1Gp\/oHsRNjNnds58s8zNVq4FOZiOOjfAx1bpikS5hiBXqF0yVUixFxJa\/hNOGQ2zMTyLGslbtCXNEWUZv5hU5Qh+WbLkIrfFNJ5jClHowwMZ7VBnxzTfOjffGkdIGyXx2DkwhPAoHG5FDRNTueu+JZldHcevK6V3MNYr9mlhghskixA2ycWly8qtE7uRPZ8vp0YwN\/SO1P\/bUcivKcu2z64ilBVhBiPhBARM5tpVIZROsjTuzSwS+FKaSjvLflQhqIbRff9CLIVcY6JNhnFvgpmybMzaBnTQZPo\/UXW7MMKl0gjSFEWllWwXU6oScw5bEJIMg+AJbM3GC8ibhdm2nHcFgwF4T9NpGDGsjwqt8zh01+JsVby1f6ja7yFwSO29w45guLkdNrS9\/Rn6ZcEpdqx5Q1LL+jQ313wx+VUf8NjKncCy\/gj8E58B26k=\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c Mermaid \u0432 VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Mermaid<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNqNU8tq21AQ3QfyDxdDIFmY0B8olHbRboqpvRPB+KHaglQ2kuOkkIUfaeMQ16bZpHSRtn8gu3Z7E0fOL8z8Uc\/c64eSNlCBLO7cmTNzzhy\/3a8dlqqFoKFyLzY3FJ7woFgJCvWqer7vuX4jn\/PcwEnRD5rRnK4V3eEz4z79xndMEXdoKmdu0w0iP2muSFMsYW7xCS6vcRWl9iy6PIV63aEvD3MU3aJ+hGJBj5dYd9ySEI6\/kBeT5mEC6tAtOnSBi1GaT5A5t6jIm6hs5tki0\/XLmxsP2GXdoOmV3CW9KwwZG0axpXkLai3u4e0CUYOuUJ1zS3EPEw4kkCRVD2pH7x2HrmiEOSQ35nOjlxnrBvhava54\/pF65VcCNwz3kpIcNKr5sFnapu8UQYQ5n6Lnspo\/Qqg2JALIjLtQYsTnCk26lqwMCBk1NhAhV5PeeZx4xg1CL2y4\/pr8JcrOAHHGn0Hfzi09BRmEZS3CyczVQROtaIKjSeUPSRXeFTw\/Xy462\/cEjXioUByJZvdKFRicgltncZQEGEyjdvqo1+RqJ9GzVChV3bxfK7to+5U\/cU90MoIZDd+4ZS\/c+dsKW1sK2xKBp5jJAsNfNFWio4xtbDcWtDEPMYQWW0wh\/4S7driJ9EAnGQyOwastODyu0mlltF0ssa1e5nKZbArxp9YuNhUe\/t9U+2sC5uo4Rd\/kP2Qmt8URhNJYW1\/tNp\/siq9Sxyt7JVGWsRWQ8enYwFmAtYo8AMha538DXK52F9ny9W67PEjslvtAWzjlD8HBYU4=\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Mermaid in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-mermaid\"><code class=\"language-mermaid\" data-language=\"mermaid\" class=\"language-mermaid\">flowchart TD\r\n    subgraph Client_Tier[\"\u0421\u043b\u043e\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\"]\r\n        app[\u0418\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f]\r\n        web[\u0412\u0435\u0431-\u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434 SPA]\r\n    end\r\n\r\n    subgraph Service_Tier[\"\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0442\u043e\u0440 \u0448\u043b\u044e\u0437\u0430\"]\r\n        proxy[[\u041e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438 Nginx Ingress]]\r\n        auth_svc(\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441\u043b\u0443\u0436\u0431\u044b \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438)\r\n    end\r\n\r\n    subgraph Persistence_Tier[\"\u0417\u0430\u0449\u0438\u0449\u0451\u043d\u043d\u044b\u0439 \u0446\u0435\u043d\u0442\u0440 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445\"]\r\n        main_db[(\u041e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u0447\u0435\u0442\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439)]\r\n        cache_node[(\u041a\u044d\u0448 \u0441\u0435\u0441\u0441\u0438\u0439 Redis)]\r\n    end\r\n\r\n    %% \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043a\u0430\u043d\u0430\u043b\u043e\u0432 \u0441\u0432\u044f\u0437\u0438 \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u0430\u043c\u0438\r\n    app -- \"\u0417\u0430\u043f\u0440\u043e\u0441 HTTPS\" --&gt; proxy\r\n    web -- \"\u0417\u0430\u043f\u0440\u043e\u0441 HTTPS\" --&gt; proxy\r\n    \r\n    proxy --&gt; |\"\u041f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u0438\u0442\u044c \/v1\/auth\"| auth_svc\r\n    \r\n    auth_svc --&gt; |\"\u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0441\u0435\u0441\u0441\u0438\u044e\"| cache_node\r\n    auth_svc --&gt; |\"\u0417\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0443\u0447\u0435\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c\"| main_db<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNqNU8tq21AQ3QfyDxdDIFmY0B8olHbRboqpvRPB+KHaglQ2kuOkkIUfaeMQ16bZpHSRtn8gu3Z7E0fOL8z8Uc\/c64eSNlCBLO7cmTNzzhy\/3a8dlqqFoKFyLzY3FJ7woFgJCvWqer7vuX4jn\/PcwEnRD5rRnK4V3eEz4z79xndMEXdoKmdu0w0iP2muSFMsYW7xCS6vcRWl9iy6PIV63aEvD3MU3aJ+hGJBj5dYd9ySEI6\/kBeT5mEC6tAtOnSBi1GaT5A5t6jIm6hs5tki0\/XLmxsP2GXdoOmV3CW9KwwZG0axpXkLai3u4e0CUYOuUJ1zS3EPEw4kkCRVD2pH7x2HrmiEOSQ35nOjlxnrBvhava54\/pF65VcCNwz3kpIcNKr5sFnapu8UQYQ5n6Lnspo\/Qqg2JALIjLtQYsTnCk26lqwMCBk1NhAhV5PeeZx4xg1CL2y4\/pr8JcrOAHHGn0Hfzi09BRmEZS3CyczVQROtaIKjSeUPSRXeFTw\/Xy462\/cEjXioUByJZvdKFRicgltncZQEGEyjdvqo1+RqJ9GzVChV3bxfK7to+5U\/cU90MoIZDd+4ZS\/c+dsKW1sK2xKBp5jJAsNfNFWio4xtbDcWtDEPMYQWW0wh\/4S7driJ9EAnGQyOwastODyu0mlltF0ssa1e5nKZbArxp9YuNhUe\/t9U+2sC5uo4Rd\/kP2Qmt8URhNJYW1\/tNp\/siq9Sxyt7JVGWsRWQ8enYwFmAtYo8AMha538DXK52F9ny9W67PEjslvtAWzjlD8HBYU4=\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Mermaid in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#mermaid:eNqNkd1qwkAQhe8LvsMQEPRCpC9QSCNthbYEo\/UiSNhsRl2a7KazGzXgw3di1Gp\/oHsRNjNnds58s8zNVq4FOZiOOjfAx1bpikS5hiBXqF0yVUixFxJa\/hNOGQ2zMTyLGslbtCXNEWUZv5hU5Qh+WbLkIrfFNJ5jClHowwMZ7VBnxzTfOjffGkdIGyXx2DkwhPAoHG5FDRNTueu+JZldHcevK6V3MNYr9mlhghskixA2ycWly8qtE7uRPZ8vp0YwN\/SO1P\/bUcivKcu2z64ilBVhBiPhBARM5tpVIZROsjTuzSwS+FKaSjvLflQhqIbRff9CLIVcY6JNhnFvgpmybMzaBnTQZPo\/UXW7MMKl0gjSFEWllWwXU6oScw5bEJIMg+AJbM3GC8ibhdm2nHcFgwF4T9NpGDGsjwqt8zh01+JsVby1f6ja7yFwSO29w45guLkdNrS9\/Rn6ZcEpdqx5Q1LL+jQ313wx+VUf8NjKncCy\/gj8E58B26k=\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c Mermaid \u0432 VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"pSGGZOL\"><img loading=\"lazy\" alt=\"\" class=\"alignnone size-full wp-image-617\" decoding=\"async\" height=\"644\" loading=\"lazy\" sizes=\"auto, (max-width: 511px) 100vw, 511px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902d48117d.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902d48117d.png 511w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902d48117d-238x300.png 238w\" width=\"511\"\/><\/p>\n<p><strong>\u0420\u0430\u0437\u0431\u043e\u0440 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430:<\/strong> \u0423\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0441\u0432\u0435\u0440\u0445\u0443 \u0432\u043d\u0438\u0437 (<code>flowchart TD<\/code>), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0434\u0432\u0438\u0436\u043e\u043a \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438 \u0430\u043a\u043a\u0443\u0440\u0430\u0442\u043d\u043e \u0440\u0430\u0437\u043c\u0435\u0449\u0430\u0442\u044c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0441\u0432\u0435\u0440\u0445\u0443 \u0432\u043d\u0438\u0437. \u0413\u0440\u0443\u043f\u043f\u0438\u0440\u0443\u044e\u0449\u0438\u0435 \u0431\u043b\u043e\u043a\u0438 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u044e\u0442 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u043b\u043e\u0438 (\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0439, \u0441\u0435\u0440\u0432\u0438\u0441\u043d\u044b\u0439 \u0438 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445), \u043f\u0440\u0438\u0434\u0430\u0432\u0430\u044f \u043e\u0431\u0449\u0435\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u0438\u043d\u0442\u0443\u0438\u0442\u0438\u0432\u043d\u043e\u0435 \u0438 \u0432\u044b\u0441\u043e\u043a\u043e\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u043e\u0449\u0443\u0449\u0435\u043d\u0438\u0435.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u043f\u043e\u0442\u043e\u043a\u043e\u0432? A \u0414\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u2014 \u044d\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u0438\u0439 \u043a\u0430\u0440\u0442\u0430, \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0430\u044f \u043f\u043e\u0448\u0430\u0433\u043e\u0432\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441, \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0443 \u0438\u043b\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0431\u0438\u0437\u043d\u0435\u0441-\u043b\u043e\u0433\u0438\u043a\u0443. \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0432 \u0432\u0438\u0434\u0435 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0433\u0435\u043e\u043c\u0435\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0444\u0438\u0433\u0443\u0440 \u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u044f \u043f\u043e\u0442\u043e\u043a \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u0441\u0442\u0440\u0435\u043b\u043e\u043a, \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442&#8230;<\/p>\n","protected":false},"author":4,"featured_media":0,"parent":0,"menu_order":1,"template":"","meta":{"inline_featured_image":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}}},"ld_collection":[14],"class_list":["post-2115","ld_docs","type-ld_docs","status-publish","hentry","ld_collection-vpascode-docs"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Mermaid Flowchart Syntax | VPasCode Text to Diagram Guide<\/title>\n<meta name=\"description\" content=\"Create logic decision flowcharts with Mermaid.js in VPasCode, a web-based diagram-as-code tool for software developers.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/\" \/>\n<meta property=\"og:locale\" content=\"ru_RU\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mermaid Flowchart Syntax | VPasCode Text to Diagram Guide\" \/>\n<meta property=\"og:description\" content=\"Create logic decision flowcharts with Mermaid.js in VPasCode, a web-based diagram-as-code tool for software developers.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/\" \/>\n<meta property=\"og:site_name\" content=\"VPasCode\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902a0955b5.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 \u043c\u0438\u043d\u0443\u0442\u044b\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/docs\\\/vpascode-docs\\\/mermaid-js-flowchart-syntax-guide\\\/\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/docs\\\/vpascode-docs\\\/mermaid-js-flowchart-syntax-guide\\\/\",\"name\":\"Mermaid Flowchart Syntax | VPasCode Text to Diagram Guide\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/docs\\\/vpascode-docs\\\/mermaid-js-flowchart-syntax-guide\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/docs\\\/vpascode-docs\\\/mermaid-js-flowchart-syntax-guide\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.vpascode.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/img_6a1902a0955b5.png\",\"datePublished\":\"2026-05-26T08:05:43+00:00\",\"description\":\"Create logic decision flowcharts with Mermaid.js in VPasCode, a web-based diagram-as-code tool for software developers.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/docs\\\/vpascode-docs\\\/mermaid-js-flowchart-syntax-guide\\\/#breadcrumb\"},\"inLanguage\":\"ru-RU\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/docs\\\/vpascode-docs\\\/mermaid-js-flowchart-syntax-guide\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ru-RU\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/docs\\\/vpascode-docs\\\/mermaid-js-flowchart-syntax-guide\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/img_6a1902a0955b5.png\",\"contentUrl\":\"https:\\\/\\\/www.vpascode.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/img_6a1902a0955b5.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/docs\\\/vpascode-docs\\\/mermaid-js-flowchart-syntax-guide\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Lean Docs\",\"item\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/docs\\\/%ld_collection%\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0443 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c Mermaid.js\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/#website\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/\",\"name\":\"VPasCode\",\"description\":\"by Visual Paradigm\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ru-RU\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/#organization\",\"name\":\"VPasCode\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ru-RU\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/wp-content\\\/uploads\\\/sites\\\/11\\\/2026\\\/06\\\/cropped-vp-online-logo-v1.png\",\"contentUrl\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/wp-content\\\/uploads\\\/sites\\\/11\\\/2026\\\/06\\\/cropped-vp-online-logo-v1.png\",\"width\":128,\"height\":138,\"caption\":\"VPasCode\"},\"image\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/ru\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Mermaid Flowchart Syntax | VPasCode Text to Diagram Guide","description":"Create logic decision flowcharts with Mermaid.js in VPasCode, a web-based diagram-as-code tool for software developers.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/","og_locale":"ru_RU","og_type":"article","og_title":"Mermaid Flowchart Syntax | VPasCode Text to Diagram Guide","og_description":"Create logic decision flowcharts with Mermaid.js in VPasCode, a web-based diagram-as-code tool for software developers.","og_url":"https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/","og_site_name":"VPasCode","og_image":[{"url":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902a0955b5.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f":"4 \u043c\u0438\u043d\u0443\u0442\u044b"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/","url":"https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/","name":"Mermaid Flowchart Syntax | VPasCode Text to Diagram Guide","isPartOf":{"@id":"https:\/\/www.vpascode.com\/ru\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/#primaryimage"},"image":{"@id":"https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902a0955b5.png","datePublished":"2026-05-26T08:05:43+00:00","description":"Create logic decision flowcharts with Mermaid.js in VPasCode, a web-based diagram-as-code tool for software developers.","breadcrumb":{"@id":"https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/#breadcrumb"},"inLanguage":"ru-RU","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/"]}]},{"@type":"ImageObject","inLanguage":"ru-RU","@id":"https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/#primaryimage","url":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902a0955b5.png","contentUrl":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902a0955b5.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.vpascode.com\/ru\/docs\/vpascode-docs\/mermaid-js-flowchart-syntax-guide\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.vpascode.com\/ru\/"},{"@type":"ListItem","position":2,"name":"Lean Docs","item":"https:\/\/www.vpascode.com\/ru\/docs\/%ld_collection%\/"},{"@type":"ListItem","position":3,"name":"\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0443 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c Mermaid.js"}]},{"@type":"WebSite","@id":"https:\/\/www.vpascode.com\/ru\/#website","url":"https:\/\/www.vpascode.com\/ru\/","name":"VPasCode","description":"by Visual Paradigm","publisher":{"@id":"https:\/\/www.vpascode.com\/ru\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.vpascode.com\/ru\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ru-RU"},{"@type":"Organization","@id":"https:\/\/www.vpascode.com\/ru\/#organization","name":"VPasCode","url":"https:\/\/www.vpascode.com\/ru\/","logo":{"@type":"ImageObject","inLanguage":"ru-RU","@id":"https:\/\/www.vpascode.com\/ru\/#\/schema\/logo\/image\/","url":"https:\/\/www.vpascode.com\/ru\/wp-content\/uploads\/sites\/11\/2026\/06\/cropped-vp-online-logo-v1.png","contentUrl":"https:\/\/www.vpascode.com\/ru\/wp-content\/uploads\/sites\/11\/2026\/06\/cropped-vp-online-logo-v1.png","width":128,"height":138,"caption":"VPasCode"},"image":{"@id":"https:\/\/www.vpascode.com\/ru\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.vpascode.com\/ru\/wp-json\/wp\/v2\/ld_docs\/2115","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vpascode.com\/ru\/wp-json\/wp\/v2\/ld_docs"}],"about":[{"href":"https:\/\/www.vpascode.com\/ru\/wp-json\/wp\/v2\/types\/ld_docs"}],"author":[{"embeddable":true,"href":"https:\/\/www.vpascode.com\/ru\/wp-json\/wp\/v2\/users\/4"}],"wp:attachment":[{"href":"https:\/\/www.vpascode.com\/ru\/wp-json\/wp\/v2\/media?parent=2115"}],"wp:term":[{"taxonomy":"ld_collection","embeddable":true,"href":"https:\/\/www.vpascode.com\/ru\/wp-json\/wp\/v2\/ld_collection?post=2115"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}