{"id":523,"date":"2026-08-17T10:20:02","date_gmt":"2026-08-17T10:20:02","guid":{"rendered":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/"},"modified":"2026-09-03T15:28:05","modified_gmt":"2026-09-03T15:28:05","slug":"stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots","status":"publish","type":"post","link":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/","title":{"rendered":"\u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0928\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902: VPasCode \u0914\u0930 AI \u091a\u0948\u091f\u092c\u0949\u091f\u094d\u0938 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 C4 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u093e \u0928\u093f\u0930\u094d\u092e\u093e\u0923"},"content":{"rendered":"<h2>GUI-\u0906\u0927\u093e\u0930\u093f\u0924 \u0935\u093e\u0938\u094d\u0924\u0941\u0915\u0932\u093e \u0915\u0940 \u0938\u092e\u0938\u094d\u092f\u093e<\/h2>\n<p>\u0915\u0908 \u0935\u0930\u094d\u0937\u094b\u0902 \u0938\u0947, C4 \u092e\u0949\u0921\u0932\u093f\u0902\u0917 \u090f\u0915 \u0935\u093f\u0930\u094b\u0927\u093e\u092d\u093e\u0938 \u092e\u0947\u0902 \u092b\u0902\u0938\u0940 \u0939\u0941\u0908 \u0939\u0948: \u0939\u092e &#8220;\u0935\u093e\u0938\u094d\u0924\u0941\u0915\u0932\u093e \u0915\u094b \u0915\u094b\u0921&#8221; \u0915\u0947 \u092a\u0915\u094d\u0937 \u092e\u0947\u0902 \u0939\u0948\u0902, \u0932\u0947\u0915\u093f\u0928 \u0905\u0927\u093f\u0915\u093e\u0902\u0936 \u091f\u0940\u092e\u0947\u0902 \u0905\u092d\u0940 \u092d\u0940 \u0905\u092a\u0928\u0947 C4 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u094b GUI \u092e\u0947\u0902 \u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0915\u0930 \u092c\u0928\u093e\u0924\u0940 \u0939\u0948\u0902\u0964 \u0907\u0938\u0938\u0947 \u092a\u0941\u0930\u093e\u0928\u0940 \u0926\u0938\u094d\u0924\u093e\u0935\u0947\u091c\u093c\u0940\u0915\u0930\u0923, \u092c\u093e\u0907\u0928\u0930\u0940 \u092b\u093c\u093e\u0907\u0932\u094b\u0902 \u092e\u0947\u0902 \u0935\u093f\u0932\u092f \u0938\u0902\u0918\u0930\u094d\u0937 \u0914\u0930 \u0906\u0930\u0947\u0916 \u0915\u0947 \u092c\u0940\u091a \u0935\u093e\u0938\u094d\u0924\u0935\u093f\u0915 \u0938\u093f\u0938\u094d\u091f\u092e \u0915\u0947 \u0938\u093e\u0925 \u0905\u0932\u0917\u093e\u0935 \u092a\u0948\u0926\u093e \u0939\u094b\u0924\u093e \u0939\u0948\u0964<\/p>\n<p>\u0906\u0927\u0941\u0928\u093f\u0915 \u0935\u093f\u0915\u093e\u0938 \u091f\u0940\u092e\u0947\u0902 \u090f\u0915 \u0910\u0938\u0947 \u0915\u093e\u0930\u094d\u092f\u092a\u094d\u0930\u0935\u093e\u0939 \u0915\u0940 \u0906\u0935\u0936\u094d\u092f\u0915\u0924\u093e \u0930\u0916\u0924\u0940 \u0939\u0948\u0902 \u091c\u0939\u093e\u0901<strong>\u0938\u0902\u0935\u093e\u0926 \u0921\u093f\u091c\u093e\u0907\u0928 \u0915\u094b \u092a\u094d\u0930\u091c\u094d\u0935\u0932\u093f\u0924 \u0915\u0930\u0924\u093e \u0939\u0948<\/strong>\u0914\u0930<strong>\u0915\u094b\u0921 \u0909\u0938\u0947 \u092c\u0928\u093e\u090f \u0930\u0916\u0924\u093e \u0939\u0948<\/strong>. Visual Paradigm \u0915\u0947<strong>AI \u091a\u0948\u091f\u092c\u0949\u091f<\/strong>\u0915\u0947 \u0938\u093e\u0925<strong>VPasCode<\/strong>, \u0906\u092a \u0915\u0941\u091b \u0939\u0940 \u092e\u093f\u0928\u091f\u094b\u0902 \u092e\u0947\u0902 \u092a\u094d\u0930\u093e\u0915\u0943\u0924\u093f\u0915 \u092d\u093e\u0937\u093e \u0915\u0947 \u0938\u0902\u0915\u0947\u0924\u094b\u0902 \u0938\u0947 \u0909\u0924\u094d\u092a\u093e\u0926\u0928-\u0938\u094d\u0924\u0930\u0940\u092f C4 PlantUML \u092e\u0947\u0902 \u0938\u094d\u0925\u093e\u0928\u093e\u0902\u0924\u0930\u093f\u0924 \u0939\u094b \u0938\u0915\u0924\u0947 \u0939\u0948\u0902\u2014\u092c\u093f\u0928\u093e \u0915\u092d\u0940 \u092e\u093e\u0909\u0938 \u0915\u094b \u091b\u0941\u090f\u0964<\/p>\n<p id=\"iFGCRTH\"><img fetchpriority=\"high\" alt=\"\u0930\u0942\u092a\u093e\u0902\u0924\u0930\u0923-\u0915\u0947\u0902\u0926\u094d\u0930\u093f\u0924 C4 \u092e\u0949\u0921\u0932\u093f\u0902\u0917 | Visual Paradigm\" class=\"alignnone wp-image-1149 size-full\" decoding=\"async\" fetchpriority=\"high\" height=\"572\" sizes=\"(max-width: 1024px) 100vw, 1024px\" src=\"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401.png\" srcset=\"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401.png 1024w, https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401-300x168.png 300w, https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401-768x429.png 768w\" width=\"1024\"\/><\/p>\n<p>\u092f\u0939 \u092e\u093e\u0930\u094d\u0917\u0926\u0930\u094d\u0936\u093f\u0915\u093e \u0920\u094b\u0938 PlantUML \u0909\u0926\u093e\u0939\u0930\u0923\u094b\u0902 \u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0915\u0930\u0915\u0947 \u0909\u0938 \u0915\u093e\u0930\u094d\u092f\u092a\u094d\u0930\u0935\u093e\u0939 \u0915\u094b \u092a\u094d\u0930\u0926\u0930\u094d\u0936\u093f\u0924 \u0915\u0930\u0924\u0940 \u0939\u0948\u0964<\/p>\n<hr\/>\n<h2>\u091a\u0930\u0923 1: AI \u091a\u0948\u091f\u092c\u0949\u091f \u0915\u0947 \u0938\u093e\u0925 \u0938\u0902\u0935\u093e\u0926\u093e\u0924\u094d\u092e\u0915 \u0921\u093f\u091c\u093e\u0907\u0928<\/h2>\n<p>Visual Paradigm \u092e\u0947\u0902 AI \u091a\u0948\u091f\u092c\u0949\u091f \u0906\u092a\u0915\u0947 \u0935\u093e\u0938\u094d\u0924\u0941\u0915\u0932\u093e \u0938\u0939-\u092a\u093e\u092f\u0932\u091f \u0915\u0947 \u0930\u0942\u092a \u092e\u0947\u0902 \u0915\u093e\u0930\u094d\u092f \u0915\u0930\u0924\u093e \u0939\u0948\u0964 \u0916\u093e\u0932\u0940 \u0915\u0948\u0928\u0935\u093e\u0938 \u0915\u0947 \u0938\u093e\u0925 \u0936\u0941\u0930\u0942 \u0915\u0930\u0928\u0947 \u0915\u0947 \u092c\u091c\u093e\u092f, \u0906\u092a \u0909\u0926\u094d\u0926\u0947\u0936\u094d\u092f \u0915\u0947 \u0938\u093e\u0925 \u0936\u0941\u0930\u0942 \u0915\u0930\u0924\u0947 \u0939\u0948\u0902\u0964<\/p>\n<h3>\u2705 \u092a\u094d\u0930\u092d\u093e\u0935\u0940 \u092a\u094d\u0930\u0949\u092e\u094d\u092a\u094d\u091f\u093f\u0902\u0917 \u0930\u0923\u0928\u0940\u0924\u093f<\/h3>\n<p>AI \u0938\u0947 &#8220;\u0906\u0930\u0947\u0916 \u092c\u0928\u093e\u0913&#8221; \u0928 \u0915\u0939\u0947\u0902\u0964 \u0907\u0938\u0947<strong>C4 \u0905\u0930\u094d\u0925\u0936\u093e\u0938\u094d\u0924\u094d\u0930 \u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0915\u0930\u0915\u0947 \u090f\u0915 \u0938\u093f\u0938\u094d\u091f\u092e \u0915\u093e \u092e\u0949\u0921\u0932 \u092c\u0928\u093e\u090f\u0902<\/strong>. \u0938\u0940\u092e\u093e\u0913\u0902, \u0924\u0915\u0928\u0940\u0915\u094b\u0902 \u0914\u0930 \u0921\u0947\u091f\u093e \u092a\u094d\u0930\u0935\u093e\u0939 \u0915\u0947 \u092c\u093e\u0930\u0947 \u092e\u0947\u0902 \u0935\u093f\u0936\u093f\u0937\u094d\u091f \u0930\u0939\u0947\u0902\u0964<\/p>\n<blockquote>\n<p><strong>\ud83d\udcac \u0928\u092e\u0942\u0928\u093e AI \u091a\u0948\u091f\u092c\u0949\u091f \u092a\u094d\u0930\u0949\u092e\u094d\u092a\u094d\u091f:<\/strong><br \/>\n&#8220;\u090f\u0915 \u0938\u0949\u092b\u094d\u091f\u0935\u0947\u092f\u0930 \u0935\u093e\u0938\u094d\u0924\u0941\u0915\u0932\u093e \u0915\u0947 \u0930\u0942\u092a \u092e\u0947\u0902 \u0915\u093e\u0930\u094d\u092f \u0915\u0930\u0947\u0902\u0964 \u090f\u0915 &#8216;\u0911\u0928\u0932\u093e\u0907\u0928 \u092c\u0948\u0902\u0915\u093f\u0902\u0917 \u0938\u093f\u0938\u094d\u091f\u092e&#8217; \u0915\u0947 \u0932\u093f\u090f C4 \u0915\u0902\u091f\u0947\u0928\u0930 \u0906\u0930\u0947\u0916 \u092c\u0928\u093e\u090f\u0902\u0964 \u090f\u0915 \u0935\u0947\u092c \u0910\u092a (React), \u090f\u0915 \u092e\u094b\u092c\u093e\u0907\u0932 \u0910\u092a (Flutter), \u090f\u0915 API \u0917\u0947\u091f\u0935\u0947 (Kong), \u090f\u0915 \u0915\u094b\u0930 \u092c\u0948\u0902\u0915\u093f\u0902\u0917 \u0938\u0947\u0935\u093e (.NET), \u0914\u0930 \u090f\u0915 PostgreSQL \u0921\u0947\u091f\u093e\u092c\u0947\u0938 \u0936\u093e\u092e\u093f\u0932 \u0915\u0930\u0947\u0902\u0964 OAuth2 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 \u092a\u094d\u0930\u092e\u093e\u0923\u0940\u0915\u0930\u0923 \u092a\u094d\u0930\u0935\u093e\u0939 \u0914\u0930 \u0916\u093e\u0924\u093e \u0936\u0947\u0937 \u091c\u0947\u0930\u0940\u091c \u0926\u093f\u0916\u093e\u090f\u0902\u0964 \u0906\u0927\u093f\u0915\u093e\u0930\u093f\u0915 \u092e\u0948\u0915\u094d\u0930\u094b \u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0915\u0930\u0915\u0947 \u0935\u0948\u0927 C4-PlantUML \u0915\u094b\u0921 \u0906\u0909\u091f\u092a\u0941\u091f \u0915\u0930\u0947\u0902\u0964&#8221;<\/p>\n<\/blockquote>\n<h3>\ud83e\udd16 \u0905\u092a\u0947\u0915\u094d\u0937\u093f\u0924 AI \u0906\u0909\u091f\u092a\u0941\u091f (\u0938\u0941\u0927\u093e\u0930\u093e \u0917\u092f\u093e)<\/h3>\n<p>AI \u090f\u0915 \u092a\u094d\u0930\u093e\u0930\u0902\u092d\u093f\u0915 \u0921\u094d\u0930\u093e\u092b\u094d\u091f PlantUML \u092e\u0949\u0921\u0932 \u091c\u0928\u0930\u0947\u091f \u0915\u0930\u0947\u0917\u093e\u0964 \u0907\u0938\u0947 \u0906\u0932\u094b\u091a\u0928\u093e\u0924\u094d\u092e\u0915 \u0930\u0942\u092a \u0938\u0947 \u0926\u0947\u0916\u0947\u0902\u2014AI \u0938\u0902\u0930\u091a\u0928\u093e \u092e\u0947\u0902 \u092c\u0939\u0941\u0924 \u0905\u091a\u094d\u091b\u093e \u0939\u0948, \u0932\u0947\u0915\u093f\u0928 \u0938\u0902\u092c\u0902\u0927\u094b\u0902 \u092e\u0947\u0902 \u092d\u094d\u0930\u092e (hallucinate) \u0915\u0930 \u0938\u0915\u0924\u093e \u0939\u0948\u0964 \u0938\u0941\u0927\u093e\u0930 \u0915\u0947 \u0932\u093f\u090f \u0905\u0928\u0941\u0935\u0930\u094d\u0924\u0940 \u091a\u0948\u091f \u092a\u094d\u0930\u0949\u092e\u094d\u092a\u094d\u091f \u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0915\u0930\u0947\u0902:<em>&#8220;\u0938\u0924\u094d\u0930 \u092a\u094d\u0930\u092c\u0902\u0927\u0928 \u0915\u0947 \u0932\u093f\u090f API \u0917\u0947\u091f\u0935\u0947 \u0914\u0930 \u0915\u094b\u0930 \u092c\u0948\u0902\u0915\u093f\u0902\u0917 \u0938\u0947\u0935\u093e \u0915\u0947 \u092c\u0940\u091a \u090f\u0915 Redis \u0915\u0948\u0936 \u091c\u094b\u0921\u093c\u0947\u0902&#8221;<\/em>\u092f\u093e<em>&#8220;PostgreSQL \u0921\u0947\u091f\u093e\u092c\u0947\u0938 \u0915\u094b \u092a\u0941\u0930\u093e\u0928\u093e (deprecated) \u091a\u093f\u0939\u094d\u0928\u093f\u0924 \u0915\u0930\u0947\u0902 \u0914\u0930 \u090f\u0915 \u0928\u092f\u093e MongoDB \u0915\u094d\u0932\u0938\u094d\u091f\u0930 \u091c\u094b\u0921\u093c\u0947\u0902\u0964&#8221;<\/em><\/p>\n<hr\/>\n<h2>\u091a\u0930\u0923 2: VPasCode \u0914\u0930 PlantUML \u0915\u0947 \u0938\u093e\u0925 \u0928\u093f\u0936\u094d\u091a\u093f\u0924 \u092e\u0949\u0921\u0932\u093f\u0902\u0917<\/h2>\n<p>\u091c\u092c AI \u090f\u0915 \u0935\u0948\u0927 \u0921\u094d\u0930\u093e\u092b\u094d\u091f \u091c\u0928\u0930\u0947\u091f \u0915\u0930 \u0926\u0947\u0924\u093e \u0939\u0948,<strong>\u091a\u0948\u091f\u093f\u0902\u0917 \u092c\u0902\u0926 \u0915\u0930\u0947\u0902 \u0914\u0930 \u0915\u094b\u0921\u093f\u0902\u0917 \u0936\u0941\u0930\u0942 \u0915\u0930\u0947\u0902<\/strong>. \u0938\u0941\u0927\u093e\u0930\u0947 \u0917\u090f PlantUML \u0915\u094b \u090f\u0915<code data-backticks=\"1\">.puml<\/code>\u00a0\u092b\u093c\u093e\u0907\u0932 VPasCode \u0926\u094d\u0935\u093e\u0930\u093e \u092a\u094d\u0930\u092c\u0902\u0927\u093f\u0924 \u0939\u0948\u0964 \u092f\u0939 \u0906\u092a\u0915\u093e \u090f\u0915\u092e\u093e\u0924\u094d\u0930 \u0938\u0924\u094d\u092f \u0938\u094d\u0930\u094b\u0924 \u0939\u0948\u0964<\/p>\n<p>\u0928\u0940\u091a\u0947 \u0907\u0938 \u0915\u093e\u0930\u094d\u092f\u092a\u094d\u0930\u0935\u093e\u0939 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 \u0909\u0924\u094d\u092a\u0928\u094d\u0928 \u0915\u093f\u090f \u0917\u090f \u0909\u0924\u094d\u092a\u093e\u0926\u0928-\u0924\u0948\u092f\u093e\u0930 C4 PlantUML \u0909\u0926\u093e\u0939\u0930\u0923 \u0926\u093f\u090f \u0917\u090f \u0939\u0948\u0902\u0964 \u0938\u0941\u0928\u093f\u0936\u094d\u091a\u093f\u0924 \u0915\u0930\u0947\u0902 \u0915\u093f \u0906\u092a\u0915\u0947 Visual Paradigm \u092a\u0930\u093f\u092f\u094b\u091c\u0928\u093e \u092e\u0947\u0902\u00a0<a href=\"https:\/\/github.com\/plantuml-stdlib\/C4-PlantUML\">C4-PlantUML \u0932\u093e\u0907\u092c\u094d\u0930\u0947\u0930\u0940<\/a>.<\/p>\n<h3>\u0909\u0926\u093e\u0939\u0930\u0923 1: \u0938\u093f\u0938\u094d\u091f\u092e \u0938\u0902\u0926\u0930\u094d\u092d \u0906\u0930\u0947\u0916 (\u0938\u094d\u0924\u0930 1)<\/h3>\n<p>\u092f\u0939 \u0906\u092a\u0915\u0947 \u0938\u093f\u0938\u094d\u091f\u092e \u0915\u0940 \u0938\u0940\u092e\u093e \u0914\u0930 \u0907\u0938\u0915\u0947 \u092c\u093e\u0939\u0930\u0940 \u0915\u0930\u094d\u0924\u093e\u0913\u0902 \u0915\u094b \u092a\u0930\u093f\u092d\u093e\u0937\u093f\u0924 \u0915\u0930\u0924\u093e \u0939\u0948\u0964<\/p>\n<p><img alt=\"VPasCode \u0907\u0902\u091f\u0930\u092b\u093c\u0947\u0938 \u091c\u094b \u0911\u0928\u0932\u093e\u0907\u0928 \u092c\u0948\u0902\u0915\u093f\u0902\u0917 \u092a\u094d\u0932\u0947\u091f\u092b\u093c\u0949\u0930\u094d\u092e \u0915\u0947 \u0932\u093f\u090f \u0909\u0924\u094d\u092a\u0928\u094d\u0928 C4 \u0938\u094d\u0924\u0930 1 \u0938\u093f\u0938\u094d\u091f\u092e \u0938\u0902\u0926\u0930\u094d\u092d \u0906\u0930\u0947\u0916 \u0926\u093f\u0916\u093e\u0924\u093e \u0939\u0948\u0964\" decoding=\"async\" src=\"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e0d8e22d9.png\"\/><\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:TPF1Rk9038RlIBo3oubAb4YhFVLKDelKIaL4X6wFbJDnOCHa1iquKDv-FKc0ijMUel7u_sp_dZm5HizDRM1fZRRq2-rEsyr7wYpJ9my7TzegqvG4M-PzU4mIZyVfHlEsAPf0NiKyorFbwcHlq4RKG-3Iw299VpvaCVIsU4rg34nUGcVoT2-Pmy5mm9eDGNwI-nhwoyU-6-ZR0U5mvNmT1HdvuEnODO5TJNu2evW5QNyUIU2FfcC0LCerbiC4sACDbUYWQcmfWJsU0XJQc32wln2nhBLjSMe7owhIYc0MOn6vG8iR2X275a3jh6Odm1QDYhMpBMiuw4OP5rth8ltFB96QUNVGfM2rpEqjCVGoa387QI30GICSgG2qfLILdkbhcO_v9u-Ly_HA6rGdGQPokDHQeBQLnvhwOW8CTDlq1BREb06w3O6XSYCctjyKe1gr4S8yVY7lMel8dCHEi8wrk8KjhsrKNfLevM64VqWE6zv6JsRo_G7z_EtIdaLeeXMbw3IVMb1CZySEtas-8lDb-rUVtsIq5hHUPtdoJaNkr8uuYgAaN-yrlr_fHN9El6JS-BeYB4FoxZLtajKyNoVvSfPzavtTwin1GvvRHRvOPyaiU_acE9iokmxRrLY-_4wxcP-49J_CNm00\" 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>VPasCode \u092e\u0947\u0902 Plantuml \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">PlantUML<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:TPF1Rk9038RlIBo3oubAb4YhFVLKDelKIaL4X6wFbJDnOCHa1iquKDv-FKc0ijMUel7u_sp_dZm5HizDRM1fZRRq2-rEsyr7wYpJ9my7TzegqvG4M-PzU4mIZyVfHlEsAPf0NiKyorFbwcHlq4RKG-3Iw299VpvaCVIsU4rg34nUGcVoT2-Pmy5mm9eDGNwI-nhwoyU-6-ZR0U5mvNmT1HdvuEnODO5TJNu2evW5QNyUIU2FfcC0LCerbiC4sACDbUYWQcmfWJsU0XJQc32wln2nhBLjSMe7owhIYc0MOn6vG8iR2X275a3jh6Odm1QDYhMpBMiuw4OP5rth8ltFB96QUNVGfM2rpEqjCVGoa387QI30GICSgG2qfLILdkbhcO_v9u-Ly_HA6rGdGQPokDHQeBQLnvhwOW8CTDlq1BREb06w3O6XSYCctjyKe1gr4S8yVY7lMel8dCHEi8wrk8KjhsrKNfLevM64VqWE6zv6JsRo_G7z_EtIdaLeeXMbw3IVMb1CZySEtas-8lDb-rUVtsIq5hHUPtdoJaNkr8uuYgAaN-yrlr_fHN9El6JS-BeYB4FoxZLtajKyNoVvSfPzavtTwin1GvvRHRvOPyaiU_acE9iokmxRrLY-_4wxcP-49J_CNm00\" 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>VPasCode \u092e\u0947\u0902 PlantUML \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/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\">PlantUML<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:TPF1Rk9038RlIBo3oubAb4YhFVLKDelKIaL4X6wFbJDnOCHa1iquKDv-FKc0ijMUel7u_sp_dZm5HizDRM1fZRRq2-rEsyr7wYpJ9my7TzegqvG4M-PzU4mIZyVfHlEsAPf0NiKyorFbwcHlq4RKG-3Iw299VpvaCVIsU4rg34nUGcVoT2-Pmy5mm9eDGNwI-nhwoyU-6-ZR0U5mvNmT1HdvuEnODO5TJNu2evW5QNyUIU2FfcC0LCerbiC4sACDbUYWQcmfWJsU0XJQc32wln2nhBLjSMe7owhIYc0MOn6vG8iR2X275a3jh6Odm1QDYhMpBMiuw4OP5rth8ltFB96QUNVGfM2rpEqjCVGoa387QI30GICSgG2qfLILdkbhcO_v9u-Ly_HA6rGdGQPokDHQeBQLnvhwOW8CTDlq1BREb06w3O6XSYCctjyKe1gr4S8yVY7lMel8dCHEi8wrk8KjhsrKNfLevM64VqWE6zv6JsRo_G7z_EtIdaLeeXMbw3IVMb1CZySEtas-8lDb-rUVtsIq5hHUPtdoJaNkr8uuYgAaN-yrlr_fHN9El6JS-BeYB4FoxZLtajKyNoVvSfPzavtTwin1GvvRHRvOPyaiU_acE9iokmxRrLY-_4wxcP-49J_CNm00\" \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 PlantUML in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml OnlineBanking_Context\r\n!include https:\/\/raw.githubusercontent.com\/plantuml-stdlib\/C4-PlantUML\/master\/C4_Context.puml\r\n\r\ntitle System Context: Online Banking Platform\r\n\r\nPerson(customer, \"Bank Customer\", \"Views accounts, transfers funds, pays bills\")\r\nPerson(admin, \"Back Office Admin\", \"Manages users, monitors transactions\")\r\n\r\nSystem(banking, \"Online Banking Platform\", \"Provides internet banking services via web and mobile\")\r\n\r\nSystem_Ext(coreLegacy, \"Core Banking Mainframe\", \"Processes transactions, holds master ledger\")\r\nSystem_Ext(email, \"Email Service\", \"Sends notifications and statements\")\r\nSystem_Ext(oauth, \"OAuth2 Provider\", \"Handles identity and authentication\")\r\n\r\nRel(customer, banking, \"Uses\", \"HTTPS\/WebSocket\")\r\nRel(admin, banking, \"Manages\", \"HTTPS\")\r\nRel(banking, coreLegacy, \"Reads\/Writes\", \"REST\/SOAP\")\r\nRel(banking, email, \"Sends alerts\", \"SMTP\/API\")\r\nRel(banking, oauth, \"Authenticates\", \"OIDC\")\r\n\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:TPF1Rk9038RlIBo3oubAb4YhFVLKDelKIaL4X6wFbJDnOCHa1iquKDv-FKc0ijMUel7u_sp_dZm5HizDRM1fZRRq2-rEsyr7wYpJ9my7TzegqvG4M-PzU4mIZyVfHlEsAPf0NiKyorFbwcHlq4RKG-3Iw299VpvaCVIsU4rg34nUGcVoT2-Pmy5mm9eDGNwI-nhwoyU-6-ZR0U5mvNmT1HdvuEnODO5TJNu2evW5QNyUIU2FfcC0LCerbiC4sACDbUYWQcmfWJsU0XJQc32wln2nhBLjSMe7owhIYc0MOn6vG8iR2X275a3jh6Odm1QDYhMpBMiuw4OP5rth8ltFB96QUNVGfM2rpEqjCVGoa387QI30GICSgG2qfLILdkbhcO_v9u-Ly_HA6rGdGQPokDHQeBQLnvhwOW8CTDlq1BREb06w3O6XSYCctjyKe1gr4S8yVY7lMel8dCHEi8wrk8KjhsrKNfLevM64VqWE6zv6JsRo_G7z_EtIdaLeeXMbw3IVMb1CZySEtas-8lDb-rUVtsIq5hHUPtdoJaNkr8uuYgAaN-yrlr_fHN9El6JS-BeYB4FoxZLtajKyNoVvSfPzavtTwin1GvvRHRvOPyaiU_acE9iokmxRrLY-_4wxcP-49J_CNm00\" \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 PlantUML 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\/#plantuml:TPF1Rk9038RlIBo3oubAb4YhFVLKDelKIaL4X6wFbJDnOCHa1iquKDv-FKc0ijMUel7u_sp_dZm5HizDRM1fZRRq2-rEsyr7wYpJ9my7TzegqvG4M-PzU4mIZyVfHlEsAPf0NiKyorFbwcHlq4RKG-3Iw299VpvaCVIsU4rg34nUGcVoT2-Pmy5mm9eDGNwI-nhwoyU-6-ZR0U5mvNmT1HdvuEnODO5TJNu2evW5QNyUIU2FfcC0LCerbiC4sACDbUYWQcmfWJsU0XJQc32wln2nhBLjSMe7owhIYc0MOn6vG8iR2X275a3jh6Odm1QDYhMpBMiuw4OP5rth8ltFB96QUNVGfM2rpEqjCVGoa387QI30GICSgG2qfLILdkbhcO_v9u-Ly_HA6rGdGQPokDHQeBQLnvhwOW8CTDlq1BREb06w3O6XSYCctjyKe1gr4S8yVY7lMel8dCHEi8wrk8KjhsrKNfLevM64VqWE6zv6JsRo_G7z_EtIdaLeeXMbw3IVMb1CZySEtas-8lDb-rUVtsIq5hHUPtdoJaNkr8uuYgAaN-yrlr_fHN9El6JS-BeYB4FoxZLtajKyNoVvSfPzavtTwin1GvvRHRvOPyaiU_acE9iokmxRrLY-_4wxcP-49J_CNm00\" 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>VPasCode \u092e\u0947\u0902 PlantUML \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:TPF1Rk9038RlIBo3oubAb4YhFVLKDelKIaL4X6wFbJDnOCHa1iquKDv-FKc0ijMUel7u_sp_dZm5HizDRM1fZRRq2-rEsyr7wYpJ9my7TzegqvG4M-PzU4mIZyVfHlEsAPf0NiKyorFbwcHlq4RKG-3Iw299VpvaCVIsU4rg34nUGcVoT2-Pmy5mm9eDGNwI-nhwoyU-6-ZR0U5mvNmT1HdvuEnODO5TJNu2evW5QNyUIU2FfcC0LCerbiC4sACDbUYWQcmfWJsU0XJQc32wln2nhBLjSMe7owhIYc0MOn6vG8iR2X275a3jh6Odm1QDYhMpBMiuw4OP5rth8ltFB96QUNVGfM2rpEqjCVGoa387QI30GICSgG2qfLILdkbhcO_v9u-Ly_HA6rGdGQPokDHQeBQLnvhwOW8CTDlq1BREb06w3O6XSYCctjyKe1gr4S8yVY7lMel8dCHEi8wrk8KjhsrKNfLevM64VqWE6zv6JsRo_G7z_EtIdaLeeXMbw3IVMb1CZySEtas-8lDb-rUVtsIq5hHUPtdoJaNkr8uuYgAaN-yrlr_fHN9El6JS-BeYB4FoxZLtajKyNoVvSfPzavtTwin1GvvRHRvOPyaiU_acE9iokmxRrLY-_4wxcP-49J_CNm00\" 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>VPasCode \u092e\u0947\u0902 Plantuml \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<h3>\u0909\u0926\u093e\u0939\u0930\u0923 2: \u0915\u0902\u091f\u0947\u0928\u0930 \u0906\u0930\u0947\u0916 (\u0938\u094d\u0924\u0930 2)<\/h3>\n<p>\u0938\u093f\u0938\u094d\u091f\u092e \u0915\u094b \u0930\u0928\u091f\u093e\u0907\u092e \u0915\u0902\u091f\u0947\u0928\u0930\u094b\u0902 \u092e\u0947\u0902 \u0935\u093f\u0918\u091f\u093f\u0924 \u0915\u0930\u0924\u093e \u0939\u0948\u0964\u00a0\u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0928\u094b\u091f \u0915\u0930\u0947\u0902\u0964<code data-backticks=\"1\">ContainerDb<\/code>,\u00a0<code data-backticks=\"1\">ContainerQueue<\/code>, \u0914\u0930 \u0924\u0915\u0928\u0940\u0915\u0940 \u091f\u0948\u0917\u2014\u0906\u0927\u0941\u0928\u093f\u0915 \u0915\u094d\u0932\u093e\u0909\u0921-\u0928\u0947\u091f\u093f\u0935 \u0938\u093f\u0938\u094d\u091f\u092e \u0915\u0947 \u0932\u093f\u090f \u092e\u0939\u0924\u094d\u0935\u092a\u0942\u0930\u094d\u0923\u0964<\/p>\n<p><img alt=\"\u0911\u0928\u0932\u093e\u0907\u0928 \u092c\u0948\u0902\u0915\u093f\u0902\u0917 \u092a\u094d\u0932\u0947\u091f\u092b\u093c\u0949\u0930\u094d\u092e \u0915\u093e C4 \u0938\u094d\u0924\u0930 2 \u0915\u0902\u091f\u0947\u0928\u0930 \u0906\u0930\u0947\u0916 \u091c\u093f\u0938\u092e\u0947\u0902 \u0935\u0947\u092c \u090f\u092a\u094d\u0932\u093f\u0915\u0947\u0936\u0928, \u092e\u094b\u092c\u093e\u0907\u0932 \u0910\u092a, API \u0917\u0947\u091f\u0935\u0947, \u0916\u093e\u0924\u093e \u0938\u0947\u0935\u093e, \u0938\u0924\u094d\u0930 \u0915\u0948\u0936 \u0914\u0930 \u0916\u093e\u0924\u093e \u0921\u0947\u091f\u093e\u092c\u0947\u0938 \u0926\u093f\u0916\u093e\u090f \u0917\u090f \u0939\u0948\u0902\u0964\" decoding=\"async\" src=\"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e0eed06f8.png\"\/><\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:XLJ1Rjf04BqZyGzJ3XLH2PQg7ggSuW1jauPWOj8SexKzCTkiTztTDGHL_VVEsCOX8bMvi3kyUVDsvWtdpWlhgqB1GYkfyKBe9wdpXudHNj3TkdxldTIfgZA4jVUbEmi2AxRZNFfrbLGERKfGr7wScY8ebT3CTkfyfcGIJ3wTHXowcry7XN0UBOLUoCSbOVkzVizBhn2wE4oboAqepbfLqCe28lEFnXQS4v4ueuTfvRmfq8vWm2YOjFV12OFY7HKj7YvCfJDXTyEa8IBmFvW79_2xtmFwT6g6Mqn4MLBEFIOGbgMIgV3Iw065Rb6a7Zx0ZSbm_DDnA8v282f8hDbIVquJuJ23jZBBUirUc4GgfBnvVU02pF95LPxwnKUvY8DGPzR833HLtY3WSubMeaxnc52KafB2w1A-2ezRiMEExuPgirvJUNHWyLU5phiHMCA0aeNqTLz4vTUm4KfcpHEFsEb56vcotZ1DgQqUuYR2xEERsGe-y-cYSWHt3fJ9PLhtGpHu1--f6UIA5DqnVIhIDPF7b4lrOSBtfj6PRDhhZQKNNDslm9idrCpdMZIvsHztP9eCi-H0y5HumKDXjiWudrkCbzTysvkdqphgf8x0Mw4TJPiA7GjVLbZX43TO9mrcV01gGYrT98dqyoMVGxVJwI4LQEFbO-keclVFWN5dptveU2Ris92-Fq9apKPcZS4FK0fpaUxu3TIUpjPp4lT8cuJDEjoYEbYOpjTtr3yMzssrYc96liPr3dqJjsTfR3SHIZMFdiMhu2fUtEnnUvR_uUhVzs_-qJYHvbtFcXCMbzF9A-oB8rjpUyEu_3RgS1raRozQsym5zrOoldKF9wqcqL5ExHsQB-rROy3bTV0MhXj-L2LAkdM33kVBOsWth9ZSG3k2MTwiUhm8esPKvwWp-dVy2m00\" 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>VPasCode \u092e\u0947\u0902 Plantuml \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">PlantUML<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:XLJ1Rjf04BqZyGzJ3XLH2PQg7ggSuW1jauPWOj8SexKzCTkiTztTDGHL_VVEsCOX8bMvi3kyUVDsvWtdpWlhgqB1GYkfyKBe9wdpXudHNj3TkdxldTIfgZA4jVUbEmi2AxRZNFfrbLGERKfGr7wScY8ebT3CTkfyfcGIJ3wTHXowcry7XN0UBOLUoCSbOVkzVizBhn2wE4oboAqepbfLqCe28lEFnXQS4v4ueuTfvRmfq8vWm2YOjFV12OFY7HKj7YvCfJDXTyEa8IBmFvW79_2xtmFwT6g6Mqn4MLBEFIOGbgMIgV3Iw065Rb6a7Zx0ZSbm_DDnA8v282f8hDbIVquJuJ23jZBBUirUc4GgfBnvVU02pF95LPxwnKUvY8DGPzR833HLtY3WSubMeaxnc52KafB2w1A-2ezRiMEExuPgirvJUNHWyLU5phiHMCA0aeNqTLz4vTUm4KfcpHEFsEb56vcotZ1DgQqUuYR2xEERsGe-y-cYSWHt3fJ9PLhtGpHu1--f6UIA5DqnVIhIDPF7b4lrOSBtfj6PRDhhZQKNNDslm9idrCpdMZIvsHztP9eCi-H0y5HumKDXjiWudrkCbzTysvkdqphgf8x0Mw4TJPiA7GjVLbZX43TO9mrcV01gGYrT98dqyoMVGxVJwI4LQEFbO-keclVFWN5dptveU2Ris92-Fq9apKPcZS4FK0fpaUxu3TIUpjPp4lT8cuJDEjoYEbYOpjTtr3yMzssrYc96liPr3dqJjsTfR3SHIZMFdiMhu2fUtEnnUvR_uUhVzs_-qJYHvbtFcXCMbzF9A-oB8rjpUyEu_3RgS1raRozQsym5zrOoldKF9wqcqL5ExHsQB-rROy3bTV0MhXj-L2LAkdM33kVBOsWth9ZSG3k2MTwiUhm8esPKvwWp-dVy2m00\" 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>VPasCode \u092e\u0947\u0902 PlantUML \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/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\">PlantUML<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:XLJ1Rjf04BqZyGzJ3XLH2PQg7ggSuW1jauPWOj8SexKzCTkiTztTDGHL_VVEsCOX8bMvi3kyUVDsvWtdpWlhgqB1GYkfyKBe9wdpXudHNj3TkdxldTIfgZA4jVUbEmi2AxRZNFfrbLGERKfGr7wScY8ebT3CTkfyfcGIJ3wTHXowcry7XN0UBOLUoCSbOVkzVizBhn2wE4oboAqepbfLqCe28lEFnXQS4v4ueuTfvRmfq8vWm2YOjFV12OFY7HKj7YvCfJDXTyEa8IBmFvW79_2xtmFwT6g6Mqn4MLBEFIOGbgMIgV3Iw065Rb6a7Zx0ZSbm_DDnA8v282f8hDbIVquJuJ23jZBBUirUc4GgfBnvVU02pF95LPxwnKUvY8DGPzR833HLtY3WSubMeaxnc52KafB2w1A-2ezRiMEExuPgirvJUNHWyLU5phiHMCA0aeNqTLz4vTUm4KfcpHEFsEb56vcotZ1DgQqUuYR2xEERsGe-y-cYSWHt3fJ9PLhtGpHu1--f6UIA5DqnVIhIDPF7b4lrOSBtfj6PRDhhZQKNNDslm9idrCpdMZIvsHztP9eCi-H0y5HumKDXjiWudrkCbzTysvkdqphgf8x0Mw4TJPiA7GjVLbZX43TO9mrcV01gGYrT98dqyoMVGxVJwI4LQEFbO-keclVFWN5dptveU2Ris92-Fq9apKPcZS4FK0fpaUxu3TIUpjPp4lT8cuJDEjoYEbYOpjTtr3yMzssrYc96liPr3dqJjsTfR3SHIZMFdiMhu2fUtEnnUvR_uUhVzs_-qJYHvbtFcXCMbzF9A-oB8rjpUyEu_3RgS1raRozQsym5zrOoldKF9wqcqL5ExHsQB-rROy3bTV0MhXj-L2LAkdM33kVBOsWth9ZSG3k2MTwiUhm8esPKvwWp-dVy2m00\" \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 PlantUML in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml OnlineBanking_Containers\r\n!include https:\/\/raw.githubusercontent.com\/plantuml-stdlib\/C4-PlantUML\/master\/C4_Container.puml\r\n\r\ntitle Container Diagram: Online Banking Platform\r\n\r\nPerson(customer, \"Bank Customer\")\r\n\r\nSystem_Boundary(banking, \"Online Banking Platform\") {\r\n    Container(webapp, \"Web Application\", \"React + Node.js\", \"SPA for browser-based banking\")\r\n    Container(mobile, \"Mobile App\", \"Flutter\", \"iOS\/Android native experience\")\r\n    Container(api, \"API Gateway\", \"Kong\", \"Routes requests, rate limiting, auth validation\")\r\n    Container(service, \"Account Service\", \".NET 8\", \"Business logic for accounts &amp; balances\")\r\n    Container(cache, \"Session Cache\", \"Redis\", \"Stores JWT tokens &amp; session state\")\r\n    ContainerDb(db, \"Account Database\", \"PostgreSQL\", \"Customer accounts, balances, transactions\")\r\n    ContainerQueue(events, \"Event Bus\", \"RabbitMQ\", \"Async transaction notifications\")\r\n}\r\n\r\nSystem_Ext(oauth, \"OAuth2 Provider\")\r\nSystem_Ext(legacy, \"Core Banking Mainframe\")\r\n\r\nRel(customer, webapp, \"Uses\", \"HTTPS\")\r\nRel(customer, mobile, \"Uses\", \"HTTPS\")\r\nRel(webapp, api, \"Calls\", \"REST\/JSON\")\r\nRel(mobile, api, \"Calls\", \"REST\/JSON\")\r\nRel(api, oauth, \"Validates token\", \"OIDC\")\r\nRel(api, service, \"Routes to\", \"gRPC\")\r\nRel(service, cache, \"Reads\/Writes session\", \"TCP\")\r\nRel(service, db, \"Queries\", \"SQL\/TCP\")\r\nRel(service, events, \"Publishes\", \"AMQP\")\r\nRel(service, legacy, \"Syncs ledger\", \"SOAP\")\r\n\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:XLJ1Rjf04BqZyGzJ3XLH2PQg7ggSuW1jauPWOj8SexKzCTkiTztTDGHL_VVEsCOX8bMvi3kyUVDsvWtdpWlhgqB1GYkfyKBe9wdpXudHNj3TkdxldTIfgZA4jVUbEmi2AxRZNFfrbLGERKfGr7wScY8ebT3CTkfyfcGIJ3wTHXowcry7XN0UBOLUoCSbOVkzVizBhn2wE4oboAqepbfLqCe28lEFnXQS4v4ueuTfvRmfq8vWm2YOjFV12OFY7HKj7YvCfJDXTyEa8IBmFvW79_2xtmFwT6g6Mqn4MLBEFIOGbgMIgV3Iw065Rb6a7Zx0ZSbm_DDnA8v282f8hDbIVquJuJ23jZBBUirUc4GgfBnvVU02pF95LPxwnKUvY8DGPzR833HLtY3WSubMeaxnc52KafB2w1A-2ezRiMEExuPgirvJUNHWyLU5phiHMCA0aeNqTLz4vTUm4KfcpHEFsEb56vcotZ1DgQqUuYR2xEERsGe-y-cYSWHt3fJ9PLhtGpHu1--f6UIA5DqnVIhIDPF7b4lrOSBtfj6PRDhhZQKNNDslm9idrCpdMZIvsHztP9eCi-H0y5HumKDXjiWudrkCbzTysvkdqphgf8x0Mw4TJPiA7GjVLbZX43TO9mrcV01gGYrT98dqyoMVGxVJwI4LQEFbO-keclVFWN5dptveU2Ris92-Fq9apKPcZS4FK0fpaUxu3TIUpjPp4lT8cuJDEjoYEbYOpjTtr3yMzssrYc96liPr3dqJjsTfR3SHIZMFdiMhu2fUtEnnUvR_uUhVzs_-qJYHvbtFcXCMbzF9A-oB8rjpUyEu_3RgS1raRozQsym5zrOoldKF9wqcqL5ExHsQB-rROy3bTV0MhXj-L2LAkdM33kVBOsWth9ZSG3k2MTwiUhm8esPKvwWp-dVy2m00\" \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 PlantUML 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\/#plantuml:XLJ1Rjf04BqZyGzJ3XLH2PQg7ggSuW1jauPWOj8SexKzCTkiTztTDGHL_VVEsCOX8bMvi3kyUVDsvWtdpWlhgqB1GYkfyKBe9wdpXudHNj3TkdxldTIfgZA4jVUbEmi2AxRZNFfrbLGERKfGr7wScY8ebT3CTkfyfcGIJ3wTHXowcry7XN0UBOLUoCSbOVkzVizBhn2wE4oboAqepbfLqCe28lEFnXQS4v4ueuTfvRmfq8vWm2YOjFV12OFY7HKj7YvCfJDXTyEa8IBmFvW79_2xtmFwT6g6Mqn4MLBEFIOGbgMIgV3Iw065Rb6a7Zx0ZSbm_DDnA8v282f8hDbIVquJuJ23jZBBUirUc4GgfBnvVU02pF95LPxwnKUvY8DGPzR833HLtY3WSubMeaxnc52KafB2w1A-2ezRiMEExuPgirvJUNHWyLU5phiHMCA0aeNqTLz4vTUm4KfcpHEFsEb56vcotZ1DgQqUuYR2xEERsGe-y-cYSWHt3fJ9PLhtGpHu1--f6UIA5DqnVIhIDPF7b4lrOSBtfj6PRDhhZQKNNDslm9idrCpdMZIvsHztP9eCi-H0y5HumKDXjiWudrkCbzTysvkdqphgf8x0Mw4TJPiA7GjVLbZX43TO9mrcV01gGYrT98dqyoMVGxVJwI4LQEFbO-keclVFWN5dptveU2Ris92-Fq9apKPcZS4FK0fpaUxu3TIUpjPp4lT8cuJDEjoYEbYOpjTtr3yMzssrYc96liPr3dqJjsTfR3SHIZMFdiMhu2fUtEnnUvR_uUhVzs_-qJYHvbtFcXCMbzF9A-oB8rjpUyEu_3RgS1raRozQsym5zrOoldKF9wqcqL5ExHsQB-rROy3bTV0MhXj-L2LAkdM33kVBOsWth9ZSG3k2MTwiUhm8esPKvwWp-dVy2m00\" 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>VPasCode \u092e\u0947\u0902 PlantUML \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:XLJ1Rjf04BqZyGzJ3XLH2PQg7ggSuW1jauPWOj8SexKzCTkiTztTDGHL_VVEsCOX8bMvi3kyUVDsvWtdpWlhgqB1GYkfyKBe9wdpXudHNj3TkdxldTIfgZA4jVUbEmi2AxRZNFfrbLGERKfGr7wScY8ebT3CTkfyfcGIJ3wTHXowcry7XN0UBOLUoCSbOVkzVizBhn2wE4oboAqepbfLqCe28lEFnXQS4v4ueuTfvRmfq8vWm2YOjFV12OFY7HKj7YvCfJDXTyEa8IBmFvW79_2xtmFwT6g6Mqn4MLBEFIOGbgMIgV3Iw065Rb6a7Zx0ZSbm_DDnA8v282f8hDbIVquJuJ23jZBBUirUc4GgfBnvVU02pF95LPxwnKUvY8DGPzR833HLtY3WSubMeaxnc52KafB2w1A-2ezRiMEExuPgirvJUNHWyLU5phiHMCA0aeNqTLz4vTUm4KfcpHEFsEb56vcotZ1DgQqUuYR2xEERsGe-y-cYSWHt3fJ9PLhtGpHu1--f6UIA5DqnVIhIDPF7b4lrOSBtfj6PRDhhZQKNNDslm9idrCpdMZIvsHztP9eCi-H0y5HumKDXjiWudrkCbzTysvkdqphgf8x0Mw4TJPiA7GjVLbZX43TO9mrcV01gGYrT98dqyoMVGxVJwI4LQEFbO-keclVFWN5dptveU2Ris92-Fq9apKPcZS4FK0fpaUxu3TIUpjPp4lT8cuJDEjoYEbYOpjTtr3yMzssrYc96liPr3dqJjsTfR3SHIZMFdiMhu2fUtEnnUvR_uUhVzs_-qJYHvbtFcXCMbzF9A-oB8rjpUyEu_3RgS1raRozQsym5zrOoldKF9wqcqL5ExHsQB-rROy3bTV0MhXj-L2LAkdM33kVBOsWth9ZSG3k2MTwiUhm8esPKvwWp-dVy2m00\" 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>VPasCode \u092e\u0947\u0902 Plantuml \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<h3>\u0909\u0926\u093e\u0939\u0930\u0923 3: \u0918\u091f\u0915 \u0906\u0930\u0947\u0916 (\u0938\u094d\u0924\u0930 3) \u2013 \u0916\u093e\u0924\u093e \u0938\u0947\u0935\u093e<\/h3>\n<p>\u090f\u0915\u0932 \u0915\u0902\u091f\u0947\u0928\u0930 \u092a\u0930 \u091c\u093c\u0942\u092e \u0915\u0930\u0924\u093e \u0939\u0948\u0964 \u092f\u0939\u0940\u0902 \u092a\u0930 VPasCode \u091a\u092e\u0915\u0924\u093e \u0939\u0948: \u0918\u091f\u0915 \u0938\u0940\u0927\u0947 \u0915\u094b\u0921 \u092e\u0949\u0921\u094d\u092f\u0942\u0932 \u0938\u0947 \u092e\u0948\u092a \u0939\u094b\u0924\u0947 \u0939\u0948\u0902\u0964<\/p>\n<p><img alt=\"VPasCode C# \u0915\u094b\u0921 \u091c\u094b API \u0917\u0947\u091f\u0935\u0947 \u0914\u0930 Auth \u092e\u0940\u0921\u093f\u0932\u0935\u0947\u092f\u0930 \u0915\u0947 \u0938\u093e\u0925 \u0938\u094d\u0924\u0930 3 \u0916\u093e\u0924\u093e \u0938\u0947\u0935\u093e \u0918\u091f\u0915 \u0906\u0930\u0947\u0916 \u0909\u0924\u094d\u092a\u0928\u094d\u0928 \u0915\u0930 \u0930\u0939\u093e \u0939\u0948\u0964\" decoding=\"async\" src=\"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e1166edd6.png\"\/><\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:NLFBRjim4BmRy3zitOi3EDQbXoAdEB9TfBKB-T7sM53InbwK4bLowJZz-Yuf-PMJnENiS3YpV7IiBFjAmwGeZAzvW_P01VvEJTMO6cjs_Tu7gWljIuGzS-CUaiIgr_6EUEzpxz0MfcO1ZWjJ9OrMTQ2xTrngofFqqtqMIZ-MYwHIZj5AwK8-RWJRx_LxJAmHpdMOajfPLJsSP46d2uRZxxCjVBuBJQaShAX6ErGDZM0moPxXYs9yLMy3MNupzMvmTmMRviCo3xYES_eKO9bnlBEuMIrkm2kF7eTu21O8QXP-uCcxqB9MUKwyN0qw6PtgeVAy3_poWIMLfHOf5aF7P9D5uNFIua6e_5IQIX7huEklxGZmo5OLx20u2j7I8xU2JkoXQ8tMQ2ztIC-rwrF4Y2Xpjja2rcLZI2u1ByP2eje-TqjTcaekVQ6TndNdUQ1AFqAgbNEmeDmg6_rzKfAiH58eNOn0vDVkHRHRh_4TlSN6NCZNidB4fcMPpINsrgIfOWKY49qu_jUZVGFJC5NqJp6P-fQpyRacjuzcn72oKo5GBKNhDYWYZXbtUmvYKOmMli2baR64DkKspJNgTfowC3DXaZwB8iZ5H28YRjuaCZTMqYvTR1G-AbJWVjTutN9s_Ra-c3zoY3md6JrnMPiT5QUM4wnpKGRJ4heaG-l8jR83hDsE0puxOk73Q7L3VSrourj5CXVjpfK90Nu5Ex-1iujnrfQhh7NiKKPCdl5_\" 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>VPasCode \u092e\u0947\u0902 Plantuml \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">PlantUML<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:NLFBRjim4BmRy3zitOi3EDQbXoAdEB9TfBKB-T7sM53InbwK4bLowJZz-Yuf-PMJnENiS3YpV7IiBFjAmwGeZAzvW_P01VvEJTMO6cjs_Tu7gWljIuGzS-CUaiIgr_6EUEzpxz0MfcO1ZWjJ9OrMTQ2xTrngofFqqtqMIZ-MYwHIZj5AwK8-RWJRx_LxJAmHpdMOajfPLJsSP46d2uRZxxCjVBuBJQaShAX6ErGDZM0moPxXYs9yLMy3MNupzMvmTmMRviCo3xYES_eKO9bnlBEuMIrkm2kF7eTu21O8QXP-uCcxqB9MUKwyN0qw6PtgeVAy3_poWIMLfHOf5aF7P9D5uNFIua6e_5IQIX7huEklxGZmo5OLx20u2j7I8xU2JkoXQ8tMQ2ztIC-rwrF4Y2Xpjja2rcLZI2u1ByP2eje-TqjTcaekVQ6TndNdUQ1AFqAgbNEmeDmg6_rzKfAiH58eNOn0vDVkHRHRh_4TlSN6NCZNidB4fcMPpINsrgIfOWKY49qu_jUZVGFJC5NqJp6P-fQpyRacjuzcn72oKo5GBKNhDYWYZXbtUmvYKOmMli2baR64DkKspJNgTfowC3DXaZwB8iZ5H28YRjuaCZTMqYvTR1G-AbJWVjTutN9s_Ra-c3zoY3md6JrnMPiT5QUM4wnpKGRJ4heaG-l8jR83hDsE0puxOk73Q7L3VSrourj5CXVjpfK90Nu5Ex-1iujnrfQhh7NiKKPCdl5_\" 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>VPasCode \u092e\u0947\u0902 PlantUML \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/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\">PlantUML<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:NLFBRjim4BmRy3zitOi3EDQbXoAdEB9TfBKB-T7sM53InbwK4bLowJZz-Yuf-PMJnENiS3YpV7IiBFjAmwGeZAzvW_P01VvEJTMO6cjs_Tu7gWljIuGzS-CUaiIgr_6EUEzpxz0MfcO1ZWjJ9OrMTQ2xTrngofFqqtqMIZ-MYwHIZj5AwK8-RWJRx_LxJAmHpdMOajfPLJsSP46d2uRZxxCjVBuBJQaShAX6ErGDZM0moPxXYs9yLMy3MNupzMvmTmMRviCo3xYES_eKO9bnlBEuMIrkm2kF7eTu21O8QXP-uCcxqB9MUKwyN0qw6PtgeVAy3_poWIMLfHOf5aF7P9D5uNFIua6e_5IQIX7huEklxGZmo5OLx20u2j7I8xU2JkoXQ8tMQ2ztIC-rwrF4Y2Xpjja2rcLZI2u1ByP2eje-TqjTcaekVQ6TndNdUQ1AFqAgbNEmeDmg6_rzKfAiH58eNOn0vDVkHRHRh_4TlSN6NCZNidB4fcMPpINsrgIfOWKY49qu_jUZVGFJC5NqJp6P-fQpyRacjuzcn72oKo5GBKNhDYWYZXbtUmvYKOmMli2baR64DkKspJNgTfowC3DXaZwB8iZ5H28YRjuaCZTMqYvTR1G-AbJWVjTutN9s_Ra-c3zoY3md6JrnMPiT5QUM4wnpKGRJ4heaG-l8jR83hDsE0puxOk73Q7L3VSrourj5CXVjpfK90Nu5Ex-1iujnrfQhh7NiKKPCdl5_\" \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 PlantUML in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml AccountService_Components\r\n!include https:\/\/raw.githubusercontent.com\/plantuml-stdlib\/C4-PlantUML\/master\/C4_Component.puml\r\n\r\ntitle Component Diagram: Account Service (.NET 8)\r\n\r\nContainer(api, \"API Gateway\", \"Kong\")\r\nContainerDb(db, \"Account DB\", \"PostgreSQL\")\r\nContainerQueue(events, \"Event Bus\", \"RabbitMQ\")\r\n\r\nComponent(auth, \"Auth Middleware\", \"ASP.NET Filter\", \"Validates JWT, extracts user context\")\r\nComponent(controller, \"AccountController\", \"ASP.NET API\", \"REST endpoints for \/accounts\")\r\nComponent(domain, \"AccountDomainService\", \"C# Class Library\", \"Balance calc, transfer rules\")\r\nComponent(repo, \"AccountRepository\", \"EF Core\", \"Data access, query optimization\")\r\nComponent(publisher, \"EventPublisher\", \"MassTransit\", \"Publishes TransactionCompleted events\")\r\n\r\nRel(api, auth, \"Passes request\")\r\nRel(auth, controller, \"Forwards authenticated request\")\r\nRel(controller, domain, \"Invokes business logic\")\r\nRel(domain, repo, \"Queries\/Persists\")\r\nRel(repo, db, \"Executes SQL\")\r\nRel(domain, publisher, \"Emits domain events\")\r\nRel(publisher, events, \"Publishes\", \"AMQP\")\r\n\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:NLFBRjim4BmRy3zitOi3EDQbXoAdEB9TfBKB-T7sM53InbwK4bLowJZz-Yuf-PMJnENiS3YpV7IiBFjAmwGeZAzvW_P01VvEJTMO6cjs_Tu7gWljIuGzS-CUaiIgr_6EUEzpxz0MfcO1ZWjJ9OrMTQ2xTrngofFqqtqMIZ-MYwHIZj5AwK8-RWJRx_LxJAmHpdMOajfPLJsSP46d2uRZxxCjVBuBJQaShAX6ErGDZM0moPxXYs9yLMy3MNupzMvmTmMRviCo3xYES_eKO9bnlBEuMIrkm2kF7eTu21O8QXP-uCcxqB9MUKwyN0qw6PtgeVAy3_poWIMLfHOf5aF7P9D5uNFIua6e_5IQIX7huEklxGZmo5OLx20u2j7I8xU2JkoXQ8tMQ2ztIC-rwrF4Y2Xpjja2rcLZI2u1ByP2eje-TqjTcaekVQ6TndNdUQ1AFqAgbNEmeDmg6_rzKfAiH58eNOn0vDVkHRHRh_4TlSN6NCZNidB4fcMPpINsrgIfOWKY49qu_jUZVGFJC5NqJp6P-fQpyRacjuzcn72oKo5GBKNhDYWYZXbtUmvYKOmMli2baR64DkKspJNgTfowC3DXaZwB8iZ5H28YRjuaCZTMqYvTR1G-AbJWVjTutN9s_Ra-c3zoY3md6JrnMPiT5QUM4wnpKGRJ4heaG-l8jR83hDsE0puxOk73Q7L3VSrourj5CXVjpfK90Nu5Ex-1iujnrfQhh7NiKKPCdl5_\" \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 PlantUML 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\/#plantuml:NLFBRjim4BmRy3zitOi3EDQbXoAdEB9TfBKB-T7sM53InbwK4bLowJZz-Yuf-PMJnENiS3YpV7IiBFjAmwGeZAzvW_P01VvEJTMO6cjs_Tu7gWljIuGzS-CUaiIgr_6EUEzpxz0MfcO1ZWjJ9OrMTQ2xTrngofFqqtqMIZ-MYwHIZj5AwK8-RWJRx_LxJAmHpdMOajfPLJsSP46d2uRZxxCjVBuBJQaShAX6ErGDZM0moPxXYs9yLMy3MNupzMvmTmMRviCo3xYES_eKO9bnlBEuMIrkm2kF7eTu21O8QXP-uCcxqB9MUKwyN0qw6PtgeVAy3_poWIMLfHOf5aF7P9D5uNFIua6e_5IQIX7huEklxGZmo5OLx20u2j7I8xU2JkoXQ8tMQ2ztIC-rwrF4Y2Xpjja2rcLZI2u1ByP2eje-TqjTcaekVQ6TndNdUQ1AFqAgbNEmeDmg6_rzKfAiH58eNOn0vDVkHRHRh_4TlSN6NCZNidB4fcMPpINsrgIfOWKY49qu_jUZVGFJC5NqJp6P-fQpyRacjuzcn72oKo5GBKNhDYWYZXbtUmvYKOmMli2baR64DkKspJNgTfowC3DXaZwB8iZ5H28YRjuaCZTMqYvTR1G-AbJWVjTutN9s_Ra-c3zoY3md6JrnMPiT5QUM4wnpKGRJ4heaG-l8jR83hDsE0puxOk73Q7L3VSrourj5CXVjpfK90Nu5Ex-1iujnrfQhh7NiKKPCdl5_\" 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>VPasCode \u092e\u0947\u0902 PlantUML \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:NLFBRjim4BmRy3zitOi3EDQbXoAdEB9TfBKB-T7sM53InbwK4bLowJZz-Yuf-PMJnENiS3YpV7IiBFjAmwGeZAzvW_P01VvEJTMO6cjs_Tu7gWljIuGzS-CUaiIgr_6EUEzpxz0MfcO1ZWjJ9OrMTQ2xTrngofFqqtqMIZ-MYwHIZj5AwK8-RWJRx_LxJAmHpdMOajfPLJsSP46d2uRZxxCjVBuBJQaShAX6ErGDZM0moPxXYs9yLMy3MNupzMvmTmMRviCo3xYES_eKO9bnlBEuMIrkm2kF7eTu21O8QXP-uCcxqB9MUKwyN0qw6PtgeVAy3_poWIMLfHOf5aF7P9D5uNFIua6e_5IQIX7huEklxGZmo5OLx20u2j7I8xU2JkoXQ8tMQ2ztIC-rwrF4Y2Xpjja2rcLZI2u1ByP2eje-TqjTcaekVQ6TndNdUQ1AFqAgbNEmeDmg6_rzKfAiH58eNOn0vDVkHRHRh_4TlSN6NCZNidB4fcMPpINsrgIfOWKY49qu_jUZVGFJC5NqJp6P-fQpyRacjuzcn72oKo5GBKNhDYWYZXbtUmvYKOmMli2baR64DkKspJNgTfowC3DXaZwB8iZ5H28YRjuaCZTMqYvTR1G-AbJWVjTutN9s_Ra-c3zoY3md6JrnMPiT5QUM4wnpKGRJ4heaG-l8jR83hDsE0puxOk73Q7L3VSrourj5CXVjpfK90Nu5Ex-1iujnrfQhh7NiKKPCdl5_\" 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>VPasCode \u092e\u0947\u0902 Plantuml \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<hr\/>\n<h2>\u091a\u0930\u0923 3: \u0905\u092a\u0928\u0947 \u0935\u093f\u0915\u093e\u0938 \u0915\u093e\u0930\u094d\u092f\u092a\u094d\u0930\u0935\u093e\u0939 \u092e\u0947\u0902 VPasCode \u0915\u094b \u090f\u0915\u0940\u0915\u0943\u0924 \u0915\u0930\u0928\u093e<\/h2>\n<p>PlantUML \u0909\u0924\u094d\u092a\u0928\u094d\u0928 \u0915\u0930\u0928\u093e \u0915\u0947\u0935\u0932 \u0906\u0927\u0947 \u0938\u0902\u0918\u0930\u094d\u0937 \u0915\u0940 \u0924\u0930\u0939 \u0939\u0948\u0964 \u092f\u0939\u093e\u0901 \u092c\u0924\u093e\u092f\u093e \u0917\u092f\u093e \u0939\u0948 \u0915\u093f \u0907\u0938\u0947 \u090f\u0915 \u0906\u0927\u0941\u0928\u093f\u0915 \u091f\u0940\u092e \u092e\u0947\u0902 \u0915\u0948\u0938\u0947 \u0938\u094d\u0925\u093e\u092f\u0940 \u092c\u0928\u093e\u092f\u093e \u091c\u093e\u090f:<\/p>\n<h3>\u0938\u092c \u0915\u0941\u091b \u0938\u0902\u0938\u094d\u0915\u0930\u0923 \u0928\u093f\u092f\u0902\u0924\u094d\u0930\u0923 \u092e\u0947\u0902 \u0930\u0916\u0947\u0902<\/h3>\n<p>\u0938\u092d\u0940 \u0915\u094b \u0938\u094d\u091f\u094b\u0930 \u0915\u0930\u0947\u0902<code data-backticks=\"1\">.puml<\/code> \u092b\u093c\u093e\u0907\u0932\u0947\u0902 \u0905\u092a\u0928\u0947 \u090f\u092a\u094d\u0932\u093f\u0915\u0947\u0936\u0928 \u0915\u094b\u0921 \u0915\u0947 \u0938\u093e\u0925 \u0939\u0940 \u0909\u0938\u0940 \u0930\u093f\u092a\u0949\u091c\u093f\u091f\u0930\u0940 \u092e\u0947\u0902 \u0930\u0916\u0947\u0902\u0964 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u094b \u0907\u0902\u092b\u094d\u0930\u093e\u0938\u094d\u091f\u094d\u0930\u0915\u094d\u091a\u0930-\u090f\u091c-\u0915\u094b\u0921 \u0915\u0940 \u0924\u0930\u0939 \u0935\u094d\u092f\u0935\u0939\u093e\u0930 \u0915\u0930\u0947\u0902:<\/p>\n<pre class=\"lang-text\"><code data-language=\"text\">\/docs\/architecture\/c4\/\r\n\u251c\u2500\u2500 01-context.puml\r\n\u251c\u2500\u2500 02-containers.puml\r\n\u251c\u2500\u2500 03-account-service-components.puml\r\n\u2514\u2500\u2500 README.md\r\n<\/code><\/pre>\n<h3>CI\/CD \u092e\u0947\u0902 \u0930\u0947\u0902\u0921\u0930\u093f\u0902\u0917 \u0915\u094b \u0938\u094d\u0935\u091a\u093e\u0932\u093f\u0924 \u0915\u0930\u0947\u0902<\/h3>\n<p>\u0939\u0930 PR \u092a\u0930 PNGs\/SVGs \u0930\u0947\u0902\u0921\u0930 \u0915\u0930\u0928\u0947 \u0915\u0947 \u0932\u093f\u090f Visual Paradigm \u0915\u0947 CLI \u092f\u093e GitHub Action \u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0915\u0930\u0947\u0902\u0964 \u0915\u092d\u0940 \u092d\u0940 \u0930\u0947\u0902\u0921\u0930 \u0915\u0940 \u0917\u0908 \u091b\u0935\u093f\u092f\u094b\u0902 \u0915\u094b \u092e\u0948\u0928\u0941\u0905\u0932\u0940 \u0915\u092e\u093f\u091f \u0928 \u0915\u0930\u0947\u0902\u0964<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">YAML<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#yaml:eNp1yz0LwjAUheG90P9wwE2IWTp1ExU7O7vE21gD+SK5tyj441U6CXqmM7zPCoe7CdlbHB0PcsGW2KWIGl3OlttGIZpge5xsHG3BrsPemamYUNsGKBJ7PD8PmLMi71CWUDmMiao2hW6OLbEUq6nT602W4HFezPdU+mGScBbWf8QVdZ6gFHXKm8e7hRFOL1CMPnY=\" 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>VPasCode \u092e\u0947\u0902 YAML \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">YAML<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#yaml:eNp1yz0LwjAUheG90P9wwE2IWTp1ExU7O7vE21gD+SK5tyj441U6CXqmM7zPCoe7CdlbHB0PcsGW2KWIGl3OlttGIZpge5xsHG3BrsPemamYUNsGKBJ7PD8PmLMi71CWUDmMiao2hW6OLbEUq6nT602W4HFezPdU+mGScBbWf8QVdZ6gFHXKm8e7hRFOL1CMPnY=\" 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>VPasCode \u092e\u0947\u0902 YAML \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/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\">YAML<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#yaml:eNptyzEKwjAYxfFd6B0euAmxS6duoqCzN4gx1kDblDQRBHdx8AwOfhVxctRFr\/IdxUonwTe94f\/rg+nAdGF6MT2Z7kxnTI2fhQVGyhtbtsGDmyPTlenNdONmz3SKegKlLHSKuS6X2mGcYGJk5mRRRz3AhTLF7vuATSVUbuC6UBgsrapj6dTaeK18cDpWSTwYVqHI0ZHfCfuH2OCr4OP\/YIV6k0EIlYhcbtsUMnj7AYivVBo=\" \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 YAML in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-yaml\"><code class=\"language-yaml\" data-language=\"yaml\" class=\"language-yaml\"># \u0909\u0926\u093e\u0939\u0930\u0923 GitHub Action \u0938\u094d\u0928\u093f\u092a\u0947\u091f\r\n- name: Render C4 Diagrams\r\n  run: |\r\n    vp-cli render -i docs\/architecture\/c4\/*.puml \r\n                  -o docs\/architecture\/output\/ \r\n                  -f svg --c4-layout auto\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#yaml:eNptyzEKwjAYxfFd6B0euAmxS6duoqCzN4gx1kDblDQRBHdx8AwOfhVxctRFr\/IdxUonwTe94f\/rg+nAdGF6MT2Z7kxnTI2fhQVGyhtbtsGDmyPTlenNdONmz3SKegKlLHSKuS6X2mGcYGJk5mRRRz3AhTLF7vuATSVUbuC6UBgsrapj6dTaeK18cDpWSTwYVqHI0ZHfCfuH2OCr4OP\/YIV6k0EIlYhcbtsUMnj7AYivVBo=\" \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 YAML 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\/#yaml:eNp1yz0LwjAUheG90P9wwE2IWTp1ExU7O7vE21gD+SK5tyj441U6CXqmM7zPCoe7CdlbHB0PcsGW2KWIGl3OlttGIZpge5xsHG3BrsPemamYUNsGKBJ7PD8PmLMi71CWUDmMiao2hW6OLbEUq6nT602W4HFezPdU+mGScBbWf8QVdZ6gFHXKm8e7hRFOL1CMPnY=\" 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>VPasCode \u092e\u0947\u0902 YAML \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#yaml:eNp1yz0LwjAUheG90P9wwE2IWTp1ExU7O7vE21gD+SK5tyj441U6CXqmM7zPCoe7CdlbHB0PcsGW2KWIGl3OlttGIZpge5xsHG3BrsPemamYUNsGKBJ7PD8PmLMi71CWUDmMiao2hW6OLbEUq6nT602W4HFezPdU+mGScBbWf8QVdZ6gFHXKm8e7hRFOL1CMPnY=\" 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>VPasCode \u092e\u0947\u0902 YAML \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<h3>VPasCode \u0915\u0947 \u0938\u093e\u0925 \u0926\u094d\u0935\u093f\u0926\u093f\u0936\u0940\u092f \u0938\u093f\u0902\u0915<\/h3>\n<p>VPasCode \u0915\u0947\u0935\u0932 \u090f\u0915 \u0930\u0947\u0902\u0921\u0930\u0930 \u0928\u0939\u0940\u0902 \u0939\u0948\u2014\u092f\u0939 \u090f\u0915 <strong>\u092e\u0949\u0921\u0932 \u0938\u093f\u0902\u0915\u0928\u093e\u0907\u091c\u093c\u0947\u0936\u0928 \u0907\u0902\u091c\u0928<\/strong>. \u091c\u092c \u0906\u092a PlantUML \u0915\u094b \u0905\u092a\u0921\u0947\u091f \u0915\u0930\u0924\u0947 \u0939\u0948\u0902:<\/p>\n<ul>\n<li>\n<p>Visual Paradigm \u0915\u093e \u0915\u0947\u0902\u0926\u094d\u0930\u0940\u092f \u092e\u0949\u0921\u0932 \u0938\u094d\u0935\u091a\u093e\u0932\u093f\u0924 \u0930\u0942\u092a \u0938\u0947 \u0905\u092a\u0921\u0947\u091f \u0939\u094b \u091c\u093e\u0924\u093e \u0939\u0948<\/p>\n<\/li>\n<li>\n<p>\u0915\u094d\u0930\u0949\u0938-\u0930\u0947\u092b\u0930\u0947\u0902\u0938 (\u091c\u0948\u0938\u0947, \u0915\u093f\u0938\u0940 Component \u0915\u094b Jira epic \u092f\u093e Git repo \u0938\u0947 \u0932\u093f\u0902\u0915 \u0915\u0930\u0928\u093e) nguy\u00ean \u0930\u0942\u092a \u092e\u0947\u0902 \u092c\u0928\u0947 \u0930\u0939\u0924\u0947 \u0939\u0948\u0902<\/p>\n<\/li>\n<li>\n<p>GUI \u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0915\u0930\u0928\u0947 \u0935\u093e\u0932\u0947 \u091f\u0940\u092e \u0938\u0926\u0938\u094d\u092f \u092a\u0930\u093f\u0935\u0930\u094d\u0924\u0928\u094b\u0902 \u0915\u094b \u0935\u093e\u0938\u094d\u0924\u0935\u093f\u0915 \u0938\u092e\u092f \u092e\u0947\u0902 \u0926\u0947\u0916 \u0938\u0915\u0924\u0947 \u0939\u0948\u0902<\/p>\n<\/li>\n<li>\n<p>AI \u091a\u0948\u091f\u092c\u0949\u091f \u0938\u0902\u0935\u093e\u0926 \u0909\u0938\u0915\u093e \u0938\u0902\u0926\u0930\u094d\u092d \u0926\u0947 \u0938\u0915\u0924\u0947 \u0939\u0948\u0902 <em>\u0935\u0930\u094d\u0924\u092e\u093e\u0928<\/em>\u00a0\u092e\u0949\u0921\u0932 \u0915\u0940 \u0938\u094d\u0925\u093f\u0924\u093f, \u092a\u0941\u0930\u093e\u0928\u0940 \u0938\u094d\u0928\u0948\u092a\u0936\u0949\u091f \u0928\u0939\u0940\u0902<\/p>\n<\/li>\n<\/ul>\n<blockquote>\n<p>\u26a0\ufe0f\u00a0<strong>\u0917\u0902\u092d\u0940\u0930 \u091a\u0947\u0924\u093e\u0935\u0928\u0940:<\/strong>\u00a0\u0915\u092d\u0940 \u092d\u0940 \u090f\u0906\u0908-\u091c\u0928\u093f\u0924 PlantUML \u0915\u094b \u092e\u093e\u0928\u0935\u0940\u092f \u0938\u092e\u0940\u0915\u094d\u0937\u093e \u0938\u0947 \u092c\u091a\u0928\u0947 \u0928 \u0926\u0947\u0902\u0964 \u090f\u0906\u0908 \u0905\u0915\u094d\u0938\u0930 \u0905\u0938\u094d\u0924\u093f\u0924\u094d\u0935\u0939\u0940\u0928 APIs \u0917\u0922\u093c \u0932\u0947\u0924\u093e \u0939\u0948, \u092a\u094d\u0930\u094b\u091f\u094b\u0915\u0949\u0932 \u0915\u094b \u0917\u0932\u0924 \u0932\u0947\u092c\u0932 \u0915\u0930\u0924\u093e \u0939\u0948, \u092f\u093e \u092e\u0939\u0924\u094d\u0935\u092a\u0942\u0930\u094d\u0923 \u0938\u0941\u0930\u0915\u094d\u0937\u093e \u0938\u0940\u092e\u093e\u0913\u0902 \u0915\u094b \u091b\u094b\u0921\u093c \u0926\u0947\u0924\u093e \u0939\u0948\u0964 \u0915\u092d\u0940 \u092d\u0940 \u0915\u092e\u094d\u092e\u093e\u0907\u091f \u0915\u0930\u0928\u0947 \u0938\u0947 \u092a\u0939\u0932\u0947 \u0909\u0924\u094d\u092a\u0928\u094d\u0928 \u0915\u094b\u0921 \u0915\u094b \u0905\u092a\u0928\u0947 \u0935\u093e\u0938\u094d\u0924\u0935\u093f\u0915 \u0915\u094b\u0921\u092c\u0947\u0938 \u0914\u0930 \u0916\u0924\u0930\u0947 \u0915\u0947 \u092e\u0949\u0921\u0932 \u0915\u0947 \u0916\u093f\u0932\u093e\u092b \u0938\u0924\u094d\u092f\u093e\u092a\u093f\u0924 \u0915\u0930\u0947\u0902\u0964<\/p>\n<\/blockquote>\n<hr\/>\n<h2>\u0906\u0927\u0941\u0928\u093f\u0915 \u091f\u0940\u092e\u094b\u0902 \u0915\u0947 \u0932\u093f\u090f \u0905\u092a\u0928\u093e\u0908 \u091c\u093e\u0928\u0947 \u0935\u093e\u0932\u0940 \u091c\u093e\u0901\u091a \u0938\u0942\u091a\u0940<\/h2>\n<table>\n<thead>\n<tr>\n<th align=\"left\">\u0915\u0926\u092e<\/th>\n<th align=\"left\">\u0915\u093e\u0930\u094d\u0930\u0935\u093e\u0908<\/th>\n<th align=\"left\">\u0909\u092a\u0915\u0930\u0923<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td align=\"left\">1<\/td>\n<td align=\"left\">\u0938\u0902\u0935\u093e\u0926\u093e\u0924\u094d\u092e\u0915 \u092a\u094d\u0930\u0949\u092e\u094d\u092a\u094d\u091f\u093f\u0902\u0917 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 \u092a\u094d\u0930\u093e\u0930\u0902\u092d\u093f\u0915 C4 \u092e\u0949\u0921\u0932 \u0924\u0948\u092f\u093e\u0930 \u0915\u0930\u0947\u0902<\/td>\n<td align=\"left\">\u090f\u0906\u0908 \u091a\u0948\u091f\u092c\u0949\u091f<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">2<\/td>\n<td align=\"left\">\u092a\u0941\u0928\u0930\u093e\u0935\u0943\u0924\u094d\u0924\u093f \u091a\u0948\u091f \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 \u090f\u0906\u0908 \u0906\u0909\u091f\u092a\u0941\u091f \u0915\u094b \u092a\u0930\u093f\u0937\u094d\u0915\u0943\u0924 \u0914\u0930 \u0938\u0941\u0927\u093e\u0930\u0947\u0902<\/td>\n<td align=\"left\">\u090f\u0906\u0908 \u091a\u0948\u091f\u092c\u0949\u091f<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">3<\/td>\n<td align=\"left\">\u0938\u0924\u094d\u092f\u093e\u092a\u093f\u0924 PlantUML \u0915\u094b \u0935\u0930\u094d\u091c\u0928-\u0928\u093f\u092f\u0902\u0924\u094d\u0930\u093f\u0924 \u0930\u093f\u092a\u0949\u091c\u093f\u091f\u0930\u0940 \u092e\u0947\u0902 \u0928\u093f\u0930\u094d\u092f\u093e\u0924 \u0915\u0930\u0947\u0902<\/td>\n<td align=\"left\">VPasCode<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">4<\/td>\n<td align=\"left\">PR \u092a\u0930 \u0938\u094d\u0935\u091a\u093e\u0932\u093f\u0924 \u0930\u0942\u092a \u0938\u0947 \u0930\u0947\u0902\u0921\u0930 \u0915\u0930\u0928\u0947 \u0915\u0947 \u0932\u093f\u090f CI \u092a\u093e\u0907\u092a\u0932\u093e\u0907\u0928 \u0938\u0947\u091f \u0915\u0930\u0947\u0902<\/td>\n<td align=\"left\">VPasCode CLI<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">5<\/td>\n<td align=\"left\">C4 \u0924\u0924\u094d\u0935\u094b\u0902 \u0915\u094b \u0915\u094b\u0921 \u0930\u093f\u092a\u0949\u091c\u093f\u091f\u0930\u0940, \u091f\u093f\u0915\u091f \u0914\u0930 \u0926\u0938\u094d\u0924\u093e\u0935\u0947\u091c\u093c\u094b\u0902 \u0938\u0947 \u0932\u093f\u0902\u0915 \u0915\u0930\u0947\u0902<\/td>\n<td align=\"left\">Visual Paradigm<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">6<\/td>\n<td align=\"left\">\u090f\u0906\u0908 \u0938\u092e\u0940\u0915\u094d\u0937\u093e \u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0915\u0930\u0915\u0947 \u0924\u094d\u0930\u0948\u092e\u093e\u0938\u093f\u0915 &#8216;\u092e\u0949\u0921\u0932 \u0938\u094d\u0935\u091a\u094d\u091b\u0924\u093e&#8217; \u0938\u092e\u0940\u0915\u094d\u0937\u093e\u0913\u0902 \u0915\u0940 \u092f\u094b\u091c\u0928\u093e \u092c\u0928\u093e\u090f\u0902<\/td>\n<td align=\"left\">\u090f\u0906\u0908 \u091a\u0948\u091f\u092c\u0949\u091f<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>\u0905\u0902\u0924\u093f\u092e \u0935\u093f\u091a\u093e\u0930<\/h2>\n<p class=\"\">C4 \u092e\u0949\u0921\u0932\u093f\u0902\u0917 \u0915\u094b \u0906\u092a\u0915\u0940 \u091f\u0940\u092e \u0915\u0940 \u0917\u0924\u093f \u092a\u0930 \u0915\u0930 \u0928\u0939\u0940\u0902 \u0939\u094b\u0928\u093e \u091a\u093e\u0939\u093f\u090f\u0964 \u090f\u0906\u0908 \u0915\u094b \u090f\u0915\u00a0<strong>\u0938\u0943\u091c\u0928\u093e\u0924\u094d\u092e\u0915 \u091a\u093f\u0902\u0917\u093e\u0930\u0940<\/strong> \u0914\u0930 VPasCode \u0915\u094b \u090f\u0915 <strong>\u0928\u093f\u0936\u094d\u091a\u093f\u0924 \u090f\u0902\u0915\u0930<\/strong>, \u0906\u092a\u0915\u094b \u0926\u094b\u0928\u094b\u0902 \u0926\u0941\u0928\u093f\u092f\u093e\u0913\u0902 \u0915\u093e \u0938\u0930\u094d\u0935\u0936\u094d\u0930\u0947\u0937\u094d\u0920 \u092e\u093f\u0932\u0924\u093e \u0939\u0948: \u0924\u0947\u091c\u093c \u0905\u0928\u094d\u0935\u0947\u0937\u0923 <em>\u0914\u0930<\/em> \u091f\u093f\u0915\u093e\u090a \u0926\u0938\u094d\u0924\u093e\u0935\u0947\u091c\u093c\u0940\u0915\u0930\u0923\u0964 \u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0928\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902\u0964 \u092c\u093e\u0924\u091a\u0940\u0924 \u0915\u0940 \u0917\u0924\u093f \u092a\u0930 \u0935\u093e\u0938\u094d\u0924\u0941\u0915\u0932\u093e \u0936\u0941\u0930\u0942 \u0915\u0930\u0947\u0902\u0964<\/p>\n","protected":false},"excerpt":{"rendered":"<p>GUI-\u0906\u0927\u093e\u0930\u093f\u0924 \u0935\u093e\u0938\u094d\u0924\u0941\u0915\u0932\u093e \u0915\u0940 \u0938\u092e\u0938\u094d\u092f\u093e \u0915\u0908 \u0935\u0930\u094d\u0937\u094b\u0902 \u0938\u0947, C4 \u092e\u0949\u0921\u0932\u093f\u0902\u0917 \u090f\u0915 \u0935\u093f\u0930\u094b\u0927\u093e\u092d\u093e\u0938 \u092e\u0947\u0902 \u092b\u0902\u0938\u0940 \u0939\u0941\u0908 \u0939\u0948: \u0939\u092e &#8220;\u0935\u093e\u0938\u094d\u0924\u0941\u0915\u0932\u093e \u0915\u094b \u0915\u094b\u0921&#8221; \u0915\u0947 \u092a\u0915\u094d\u0937 \u092e\u0947\u0902 \u0939\u0948\u0902, \u0932\u0947\u0915\u093f\u0928 \u0905\u0927\u093f\u0915\u093e\u0902\u0936 \u091f\u0940\u092e\u0947\u0902 \u0905\u092d\u0940 \u092d\u0940 \u0905\u092a\u0928\u0947 C4&hellip;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_yoast_wpseo_title":"","_yoast_wpseo_metadesc":"","inline_featured_image":false,"source_url":"","source_h1_title":"","fifu_image_url":"","fifu_image_alt":"","_fifu_image_alt":"","fifu_alt":"","_fifu_alt":"","fifu_image_title":"","_fifu_image_title":"","fifu_input_alt":"","vp_image_hash":"","footnotes":""},"categories":[26,8,22],"tags":[],"asset-category":[],"class_list":["post-523","post","type-post","status-publish","format-standard","hentry","category-ai-chatbot","category-c4-model","category-vsascode"],"source_url":"","source_h1_title":"","fifu_image_url":"","fifu_image_alt":"","vp_image_hash":"","yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0928\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902: VPasCode \u0914\u0930 AI \u091a\u0948\u091f\u092c\u0949\u091f\u094d\u0938 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 C4 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u093e \u0928\u093f\u0930\u094d\u092e\u093e\u0923 - AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News<\/title>\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.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/\" \/>\n<meta property=\"og:locale\" content=\"hi_IN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0928\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902: VPasCode \u0914\u0930 AI \u091a\u0948\u091f\u092c\u0949\u091f\u094d\u0938 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 C4 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u093e \u0928\u093f\u0930\u094d\u092e\u093e\u0923 - AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News\" \/>\n<meta property=\"og:description\" content=\"GUI-\u0906\u0927\u093e\u0930\u093f\u0924 \u0935\u093e\u0938\u094d\u0924\u0941\u0915\u0932\u093e \u0915\u0940 \u0938\u092e\u0938\u094d\u092f\u093e \u0915\u0908 \u0935\u0930\u094d\u0937\u094b\u0902 \u0938\u0947, C4 \u092e\u0949\u0921\u0932\u093f\u0902\u0917 \u090f\u0915 \u0935\u093f\u0930\u094b\u0927\u093e\u092d\u093e\u0938 \u092e\u0947\u0902 \u092b\u0902\u0938\u0940 \u0939\u0941\u0908 \u0939\u0948: \u0939\u092e &#8220;\u0935\u093e\u0938\u094d\u0924\u0941\u0915\u0932\u093e \u0915\u094b \u0915\u094b\u0921&#8221; \u0915\u0947 \u092a\u0915\u094d\u0937 \u092e\u0947\u0902 \u0939\u0948\u0902, \u0932\u0947\u0915\u093f\u0928 \u0905\u0927\u093f\u0915\u093e\u0902\u0936 \u091f\u0940\u092e\u0947\u0902 \u0905\u092d\u0940 \u092d\u0940 \u0905\u092a\u0928\u0947 C4&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/\" \/>\n<meta property=\"og:site_name\" content=\"AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-17T10:20:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-03T15:28:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401.png\" \/>\n<meta name=\"author\" content=\"curtis\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u0926\u094d\u0935\u093e\u0930\u093e \u0932\u093f\u0916\u093f\u0924\" \/>\n\t<meta name=\"twitter:data1\" content=\"\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u0905\u0928\u0941\u092e\u093e\u0928\u093f\u0924 \u092a\u0922\u093c\u0928\u0947 \u0915\u093e \u0938\u092e\u092f\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 \u092e\u093f\u0928\u091f\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/\"},\"author\":{\"name\":\"curtis\",\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/#\/schema\/person\/7799982e6b83f10fb8a41071b61608d1\"},\"headline\":\"\u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0928\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902: VPasCode \u0914\u0930 AI \u091a\u0948\u091f\u092c\u0949\u091f\u094d\u0938 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 C4 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u093e \u0928\u093f\u0930\u094d\u092e\u093e\u0923\",\"datePublished\":\"2026-08-17T10:20:02+00:00\",\"dateModified\":\"2026-09-03T15:28:05+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/\"},\"wordCount\":142,\"publisher\":{\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401.png\",\"articleSection\":[\"AI Chatbot\",\"C4 Model\",\"VSasCode\"],\"inLanguage\":\"hi-IN\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/\",\"url\":\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/\",\"name\":\"\u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0928\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902: VPasCode \u0914\u0930 AI \u091a\u0948\u091f\u092c\u0949\u091f\u094d\u0938 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 C4 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u093e \u0928\u093f\u0930\u094d\u092e\u093e\u0923 - AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News\",\"isPartOf\":{\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401.png\",\"datePublished\":\"2026-08-17T10:20:02+00:00\",\"dateModified\":\"2026-09-03T15:28:05+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#breadcrumb\"},\"inLanguage\":\"hi-IN\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"hi-IN\",\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#primaryimage\",\"url\":\"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401.png\",\"contentUrl\":\"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.ai-diagrams.com\/in\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0928\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902: VPasCode \u0914\u0930 AI \u091a\u0948\u091f\u092c\u0949\u091f\u094d\u0938 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 C4 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u093e \u0928\u093f\u0930\u094d\u092e\u093e\u0923\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/#website\",\"url\":\"https:\/\/www.ai-diagrams.com\/in\/\",\"name\":\"AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.ai-diagrams.com\/in\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"hi-IN\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/#organization\",\"name\":\"AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News\",\"url\":\"https:\/\/www.ai-diagrams.com\/in\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"hi-IN\",\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.ai-diagrams.com\/in\/wp-content\/uploads\/sites\/19\/2026\/03\/ai-diagram-logo.png\",\"contentUrl\":\"https:\/\/www.ai-diagrams.com\/in\/wp-content\/uploads\/sites\/19\/2026\/03\/ai-diagram-logo.png\",\"width\":648,\"height\":648,\"caption\":\"AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News\"},\"image\":{\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/#\/schema\/person\/7799982e6b83f10fb8a41071b61608d1\",\"name\":\"curtis\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"hi-IN\",\"@id\":\"https:\/\/www.ai-diagrams.com\/in\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/6910084565fcc601ec03c6693bb8ea480c1e52ccaa0efb299eb038bb6a1edc87?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/6910084565fcc601ec03c6693bb8ea480c1e52ccaa0efb299eb038bb6a1edc87?s=96&d=mm&r=g\",\"caption\":\"curtis\"},\"url\":\"https:\/\/www.ai-diagrams.com\/in\/author\/curtis\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0928\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902: VPasCode \u0914\u0930 AI \u091a\u0948\u091f\u092c\u0949\u091f\u094d\u0938 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 C4 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u093e \u0928\u093f\u0930\u094d\u092e\u093e\u0923 - AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News","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.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/","og_locale":"hi_IN","og_type":"article","og_title":"\u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0928\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902: VPasCode \u0914\u0930 AI \u091a\u0948\u091f\u092c\u0949\u091f\u094d\u0938 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 C4 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u093e \u0928\u093f\u0930\u094d\u092e\u093e\u0923 - AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News","og_description":"GUI-\u0906\u0927\u093e\u0930\u093f\u0924 \u0935\u093e\u0938\u094d\u0924\u0941\u0915\u0932\u093e \u0915\u0940 \u0938\u092e\u0938\u094d\u092f\u093e \u0915\u0908 \u0935\u0930\u094d\u0937\u094b\u0902 \u0938\u0947, C4 \u092e\u0949\u0921\u0932\u093f\u0902\u0917 \u090f\u0915 \u0935\u093f\u0930\u094b\u0927\u093e\u092d\u093e\u0938 \u092e\u0947\u0902 \u092b\u0902\u0938\u0940 \u0939\u0941\u0908 \u0939\u0948: \u0939\u092e &#8220;\u0935\u093e\u0938\u094d\u0924\u0941\u0915\u0932\u093e \u0915\u094b \u0915\u094b\u0921&#8221; \u0915\u0947 \u092a\u0915\u094d\u0937 \u092e\u0947\u0902 \u0939\u0948\u0902, \u0932\u0947\u0915\u093f\u0928 \u0905\u0927\u093f\u0915\u093e\u0902\u0936 \u091f\u0940\u092e\u0947\u0902 \u0905\u092d\u0940 \u092d\u0940 \u0905\u092a\u0928\u0947 C4&hellip;","og_url":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/","og_site_name":"AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News","article_published_time":"2026-08-17T10:20:02+00:00","article_modified_time":"2026-09-03T15:28:05+00:00","og_image":[{"url":"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401.png","type":"","width":"","height":""}],"author":"curtis","twitter_card":"summary_large_image","twitter_misc":{"\u0926\u094d\u0935\u093e\u0930\u093e \u0932\u093f\u0916\u093f\u0924":false,"\u0905\u0928\u0941\u092e\u093e\u0928\u093f\u0924 \u092a\u0922\u093c\u0928\u0947 \u0915\u093e \u0938\u092e\u092f":"4 \u092e\u093f\u0928\u091f"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#article","isPartOf":{"@id":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/"},"author":{"name":"curtis","@id":"https:\/\/www.ai-diagrams.com\/in\/#\/schema\/person\/7799982e6b83f10fb8a41071b61608d1"},"headline":"\u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0928\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902: VPasCode \u0914\u0930 AI \u091a\u0948\u091f\u092c\u0949\u091f\u094d\u0938 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 C4 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u093e \u0928\u093f\u0930\u094d\u092e\u093e\u0923","datePublished":"2026-08-17T10:20:02+00:00","dateModified":"2026-09-03T15:28:05+00:00","mainEntityOfPage":{"@id":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/"},"wordCount":142,"publisher":{"@id":"https:\/\/www.ai-diagrams.com\/in\/#organization"},"image":{"@id":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#primaryimage"},"thumbnailUrl":"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401.png","articleSection":["AI Chatbot","C4 Model","VSasCode"],"inLanguage":"hi-IN"},{"@type":"WebPage","@id":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/","url":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/","name":"\u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0928\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902: VPasCode \u0914\u0930 AI \u091a\u0948\u091f\u092c\u0949\u091f\u094d\u0938 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 C4 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u093e \u0928\u093f\u0930\u094d\u092e\u093e\u0923 - AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News","isPartOf":{"@id":"https:\/\/www.ai-diagrams.com\/in\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#primaryimage"},"image":{"@id":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#primaryimage"},"thumbnailUrl":"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401.png","datePublished":"2026-08-17T10:20:02+00:00","dateModified":"2026-09-03T15:28:05+00:00","breadcrumb":{"@id":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#breadcrumb"},"inLanguage":"hi-IN","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/"]}]},{"@type":"ImageObject","inLanguage":"hi-IN","@id":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#primaryimage","url":"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401.png","contentUrl":"https:\/\/www.ai-diagrams.com\/wp-content\/uploads\/2026\/08\/img_6a82e01435401.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.ai-diagrams.com\/in\/stop-dragging-boxes-generating-c4-diagrams-via-vpascode-and-ai-chatbots\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.ai-diagrams.com\/in\/"},{"@type":"ListItem","position":2,"name":"\u092c\u0949\u0915\u094d\u0938 \u0916\u0940\u0902\u091a\u0928\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902: VPasCode \u0914\u0930 AI \u091a\u0948\u091f\u092c\u0949\u091f\u094d\u0938 \u0915\u0947 \u092e\u093e\u0927\u094d\u092f\u092e \u0938\u0947 C4 \u0906\u0930\u0947\u0916\u094b\u0902 \u0915\u093e \u0928\u093f\u0930\u094d\u092e\u093e\u0923"}]},{"@type":"WebSite","@id":"https:\/\/www.ai-diagrams.com\/in\/#website","url":"https:\/\/www.ai-diagrams.com\/in\/","name":"AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News","description":"","publisher":{"@id":"https:\/\/www.ai-diagrams.com\/in\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.ai-diagrams.com\/in\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"hi-IN"},{"@type":"Organization","@id":"https:\/\/www.ai-diagrams.com\/in\/#organization","name":"AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News","url":"https:\/\/www.ai-diagrams.com\/in\/","logo":{"@type":"ImageObject","inLanguage":"hi-IN","@id":"https:\/\/www.ai-diagrams.com\/in\/#\/schema\/logo\/image\/","url":"https:\/\/www.ai-diagrams.com\/in\/wp-content\/uploads\/sites\/19\/2026\/03\/ai-diagram-logo.png","contentUrl":"https:\/\/www.ai-diagrams.com\/in\/wp-content\/uploads\/sites\/19\/2026\/03\/ai-diagram-logo.png","width":648,"height":648,"caption":"AI Diagrams \u092d\u093e\u0930\u0924\u0940\u092f \u2013 Explore Artificial Intelligence Trends &amp; News"},"image":{"@id":"https:\/\/www.ai-diagrams.com\/in\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.ai-diagrams.com\/in\/#\/schema\/person\/7799982e6b83f10fb8a41071b61608d1","name":"curtis","image":{"@type":"ImageObject","inLanguage":"hi-IN","@id":"https:\/\/www.ai-diagrams.com\/in\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6910084565fcc601ec03c6693bb8ea480c1e52ccaa0efb299eb038bb6a1edc87?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6910084565fcc601ec03c6693bb8ea480c1e52ccaa0efb299eb038bb6a1edc87?s=96&d=mm&r=g","caption":"curtis"},"url":"https:\/\/www.ai-diagrams.com\/in\/author\/curtis\/"}]}},"_links":{"self":[{"href":"https:\/\/www.ai-diagrams.com\/in\/wp-json\/wp\/v2\/posts\/523","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ai-diagrams.com\/in\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ai-diagrams.com\/in\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ai-diagrams.com\/in\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ai-diagrams.com\/in\/wp-json\/wp\/v2\/comments?post=523"}],"version-history":[{"count":0,"href":"https:\/\/www.ai-diagrams.com\/in\/wp-json\/wp\/v2\/posts\/523\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.ai-diagrams.com\/in\/wp-json\/wp\/v2\/media?parent=523"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ai-diagrams.com\/in\/wp-json\/wp\/v2\/categories?post=523"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ai-diagrams.com\/in\/wp-json\/wp\/v2\/tags?post=523"},{"taxonomy":"asset-category","embeddable":true,"href":"https:\/\/www.ai-diagrams.com\/in\/wp-json\/wp\/v2\/asset-category?post=523"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}