{"id":2116,"date":"2026-05-26T07:53:11","date_gmt":"2026-05-26T07:53:11","guid":{"rendered":"https:\/\/www.vpascode.com\/pl\/docs\/uncategorized\/plantuml-c4-model-syntax-guide\/"},"modified":"2026-05-26T07:53:11","modified_gmt":"2026-05-26T07:53:11","slug":"plantuml-c4-model-syntax-guide","status":"publish","type":"ld_docs","link":"https:\/\/www.vpascode.com\/pl\/docs\/vpascode-docs\/plantuml-c4-model-syntax-guide\/","title":{"rendered":"Przewodnik po sk\u0142adni modelu C4 w PlantUML"},"content":{"rendered":"<h2>Co to jest diagram modelu C4?<\/h2>\n<p>Rozszerzenie <strong>diagram modelu C4<\/strong> to hierarchiczny, czteropoziomowy ramowy model architektury zaprojektowany do dokumentowania architektury oprogramowania z r\u00f3\u017cnym stopniem szczeg\u00f3\u0142owo\u015bci. Stworzony przez Simona Browna, model C4 unika nieprecyzyjnych p\u00f3l i linii, strukturalizuj\u0105c mapy system\u00f3w w cztery wyra\u017ane poziomy abstrakcji: <strong>Zasi\u0119g<\/strong> (zasi\u0119g na poziomie systemu), <strong>Pojemnik<\/strong> (aplikacje i magazyny danych), <strong>Sk\u0142adnik<\/strong> (modu\u0142y wewn\u0119trzne), oraz <strong>Kod<\/strong> (realizacje na poziomie klas).<\/p>\n<p>Aby skutecznie zaimplementowa\u0107 ten model w tek\u015bcie, in\u017cynierowie u\u017cywaj\u0105 oficjalnej biblioteki rozszerze\u0144 <code>C4-PlantUML<\/code> rozszerzenia biblioteki standardowej. Ta biblioteka zast\u0119puje surowe kszta\u0142ty UML specjalnymi makrami, kt\u00f3re automatycznie wstrzykuj\u0105 r\u00f3\u017cne kolory, kszta\u0142ty i pola metadanych dla u\u017cytkownik\u00f3w, system\u00f3w i baz danych. Dzi\u0119ki <strong>VPasCode<\/strong>, mo\u017cesz czysto zdefiniowa\u0107 te zagnie\u017cd\u017cone \u015brodowiska w kodzie. Silnik uk\u0142adu dynamicznie kieruje wektory po\u0142\u0105cze\u0144 i skaluje pola tekstowe, nie zruinowuj\u0105c geometrii uk\u0142adu.<\/p>\n<h2>Podstawowy przewodnik sk\u0142adniowy: elementy i konstrukcje<\/h2>\n<p>Tworzenie poprawnego modelu C4 przy u\u017cyciu PlantUML opiera si\u0119 na importowaniu odpowiednich plik\u00f3w bibliotek, wybieraniu makr strukturalnych, ustalaniu granic oraz u\u017cywaniu specjalistycznych po\u0142\u0105cze\u0144 relacyjnych.<\/p>\n<h3>1. Importowanie plik\u00f3w biblioteki standardowej C4<\/h3>\n<p>Rozszerzenie <code>C4-PlantUML<\/code> rozszerzenie jest podzielone na pojedyncze pliki, kt\u00f3re bezpo\u015brednio odpowiadaj\u0105 poszczeg\u00f3lnym poziomom modelu abstrakcji. Aby unikn\u0105\u0107 spowolnienia wydajno\u015bci lub b\u0142\u0119d\u00f3w kompilatora, powiniene\u015b importowa\u0107 tylko ten konkretny warstwowy plik, na kt\u00f3ry jest skierowany tw\u00f3j diagram:<\/p>\n<pre class=\"lang-plantuml\"><code>@startuml\r\n' Do\u0142\u0105cz wymagany plik warstwy C4\r\n!include &lt;C4\/C4_Context&gt;\r\n' U\u017cyj C4_Container lub C4_Component dla g\u0142\u0119bszych map architektonicznych<\/code><\/pre>\n<h3>2. Deklarowanie podstawowych aktor\u00f3w i system\u00f3w (poziom kontekstu)<\/h3>\n<p>Na poziomie kontekstu systemu, modelujesz komponenty wewn\u0119trzne, zale\u017cno\u015bci zewn\u0119trzne oraz ludzkich u\u017cytkownik\u00f3w ko\u0144cowych. Biblioteka standardowa oferuje specjalne makra, kt\u00f3re przyjmuj\u0105 identyfikator, etykiet\u0119 wizualn\u0105 oraz opcjonalny opis:<\/p>\n<ul>\n<li><code>Osoba(id, \"Etykieta\", \"Opis\")<\/code> \u2014 Reprezentuje profil u\u017cytkownika lub aktora systemu.<\/li>\n<li><code>System(id, \"Etykieta\", \"Opis\")<\/code> \u2014 Reprezentuje podstawowy wewn\u0119trzny ekosystem aplikacji lub us\u0142ugi oprogramowania.<\/li>\n<li><code>System_Ext(id, \"Etykieta\", \"Opis\")<\/code> \u2014 Reprezentuje system zewn\u0119trzny lub zale\u017cno\u015b\u0107 od interfejsu API firm trzecich (wy\u015bwietlany w jasno zdefiniowanej paletcie szaro\u015bci).<\/li>\n<\/ul>\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:HS_1IWD130RW-yA-GzpJ5XGlFOgemu8UXC9wNz9fMeCp6PbaRVVjdR4j7fFy-KYUr33R70EuzJG4YYIcRNF3uiEy8tXmw_ioSKcCJlRODXlAcgJtirgAb6-XUq7vOZc0kxIwqdk6Qm2ER9-0yFstXm6s9GxeVPh5kbNRZ8iQnNvxLYPTjEoxb0cky3bHsLUKNI25FGkAvw9PHb7qnadqNvk6a_KHELouuQuMC5B-OKzLUYl_v7hE-Fwn0Kd6U_PO6JYWqH6NRlKB\" 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>Edytuj Plantuml w 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\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:JOt1IiD048RlWRp3c5CA5IyzYWYXU2X2eOhW9KoIjOpPsPMT2MboBFeGFeUFOFDURaIen_d-___cLXI3TcoXM9LhQzWubJIv85VRhZ5mNQokOb9uf-QWDscoDK6yo-jErBC9IyWsbk88AdIjxuViJ4Pevnc35r-HwC3P8arsWqIMptLo-r86YOkxwVZzrRi1v3VzBtl6C9u-cX510ph1jdv59dWX5w_OOJfRo_L1SqQoVzf7cOxT7i5Spd2sFPdUdJurZF5N5P1RX3VV4pQUoKpliBj_s6QB7m00\" \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 C4_Elements\r\n!include &lt;C4\/C4_Context&gt;\r\nPerson(customer, \"Klient bankowy\", \"Klient z kontem osobistym\")\r\nSystem(banking_sys, \"G\u0142\u00f3wny system bankowy\", \"Zarz\u0105dza transakcjami finansowymi\")\r\nSystem_Ext(mail_sys, \"Us\u0142uga e-mail\", \"Wewn\u0119trzny bramka powiadomie\u0144 SMTP\")<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:JOt1IiD048RlWRp3c5CA5IyzYWYXU2X2eOhW9KoIjOpPsPMT2MboBFeGFeUFOFDURaIen_d-___cLXI3TcoXM9LhQzWubJIv85VRhZ5mNQokOb9uf-QWDscoDK6yo-jErBC9IyWsbk88AdIjxuViJ4Pevnc35r-HwC3P8arsWqIMptLo-r86YOkxwVZzrRi1v3VzBtl6C9u-cX510ph1jdv59dWX5w_OOJfRo_L1SqQoVzf7cOxT7i5Spd2sFPdUdJurZF5N5P1RX3VV4pQUoKpliBj_s6QB7m00\" \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:HS_1IWD130RW-yA-GzpJ5XGlFOgemu8UXC9wNz9fMeCp6PbaRVVjdR4j7fFy-KYUr33R70EuzJG4YYIcRNF3uiEy8tXmw_ioSKcCJlRODXlAcgJtirgAb6-XUq7vOZc0kxIwqdk6Qm2ER9-0yFstXm6s9GxeVPh5kbNRZ8iQnNvxLYPTjEoxb0cky3bHsLUKNI25FGkAvw9PHb7qnadqNvk6a_KHELouuQuMC5B-OKzLUYl_v7hE-Fwn0Kd6U_PO6JYWqH6NRlKB\" 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>Edytuj Plantuml w VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"USSGhTV\"><img fetchpriority=\"high\" alt=\"\" class=\"alignnone size-full wp-image-608\" decoding=\"async\" fetchpriority=\"high\" height=\"316\" sizes=\"(max-width: 461px) 100vw, 461px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901f8a8e4e.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901f8a8e4e.png 461w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901f8a8e4e-300x206.png 300w\" width=\"461\"\/><\/p>\n<h3>3. Rozpraszanie granic (poziomy kontenera i komponentu)<\/h3>\n<p>Gdy g\u0142\u0119biej analizujesz warstw\u0119 kontenera, modelujesz aplikacje internetowe, mikroserwisy i bazy danych. Mo\u017cesz izolowa\u0107 te elementy wewn\u0119trzne w wyra\u017anym logicznym polu granicznym, u\u017cywaj\u0105c<code>System_Boundary()<\/code> makra otoczki:<\/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:NOrFQyCm3CNlWNm7DOUHmi8Oz3W6MzfR3zsyUr1iDHCujf6TbZ3stUTaVmxJHNfFqkzjs6ax6OA7TdVNxhhMkuJiI1xBeYpK71EDtREVd46PQtr_2zMXQVquacY2xpqSj6_YEbPR-2WBoFK7gg_KTnX2_bJi1alD2GU2fn0iQqpiNPLNhuGwmGsypO6K5WvfSK_YBsmemXH9u4oO9idgmWYPcZjTg-s_l7rV6qpOOwILQzSCjB3_SLUmZsaGKY_7HQdavJSaY3-p9K1dm98PilNECHymnINhymi0\" 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>Edytuj Plantuml w 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\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:NOw_IiH04CRxGDvXJ24vK4IuKWGlPsUXnZvCDdF9PkFEijabvCJIXpXy35ixS-_b9eAWKymm_txVToArw7n5S9MjBx9raR5sA3NPwpYAetpi7JqN6_QwGZkcul8Cabl5_JA7d-A1pXlKLUUJ5Rp44OJunQG3bGKQ4_vkJ2SLYXQXfKfpxonhANZ092mV2OM3KtWQ3UN2IkFcwJPSeHLxX9tNIhG4_lWvEiM33YWmREoUzZ3dkflUWaSr7PBLFm_RCgtGOOaz1UO60wv2FOe6B7KenbOl5kw3M6qfVxXRki0K3Gy-Y1hBEzdz4V_w64128tl7LXAeNaw7cWS-lWiv6tZz1W00\" \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\">!include &lt;C4\/C4_Container&gt;\r\n\r\nSystem_Boundary(c1, \"Ekosystem systemu e-handlu\") {\r\n    Container(web_app, \"Aplikacja jednostronicowa\", \"React &amp; TypeScript\", \"Dostarcza funkcje u\u017cytkownika poprzez przegl\u0105dark\u0119\")\r\n    ContainerDb(database, \"Baza danych relacyjna\", \"PostgreSQL\", \"Przechowuje profile u\u017cytkownik\u00f3w i historie ksi\u0119gowo\u015bci\")\r\n}<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:NOw_IiH04CRxGDvXJ24vK4IuKWGlPsUXnZvCDdF9PkFEijabvCJIXpXy35ixS-_b9eAWKymm_txVToArw7n5S9MjBx9raR5sA3NPwpYAetpi7JqN6_QwGZkcul8Cabl5_JA7d-A1pXlKLUUJ5Rp44OJunQG3bGKQ4_vkJ2SLYXQXfKfpxonhANZ092mV2OM3KtWQ3UN2IkFcwJPSeHLxX9tNIhG4_lWvEiM33YWmREoUzZ3dkflUWaSr7PBLFm_RCgtGOOaz1UO60wv2FOe6B7KenbOl5kw3M6qfVxXRki0K3Gy-Y1hBEzdz4V_w64128tl7LXAeNaw7cWS-lWiv6tZz1W00\" \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:NOrFQyCm3CNlWNm7DOUHmi8Oz3W6MzfR3zsyUr1iDHCujf6TbZ3stUTaVmxJHNfFqkzjs6ax6OA7TdVNxhhMkuJiI1xBeYpK71EDtREVd46PQtr_2zMXQVquacY2xpqSj6_YEbPR-2WBoFK7gg_KTnX2_bJi1alD2GU2fn0iQqpiNPLNhuGwmGsypO6K5WvfSK_YBsmemXH9u4oO9idgmWYPcZjTg-s_l7rV6qpOOwILQzSCjB3_SLUmZsaGKY_7HQdavJSaY3-p9K1dm98PilNECHymnINhymi0\" 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>Edytuj Plantuml w VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"GZPysCa\"><img alt=\"\" class=\"alignnone size-full wp-image-609\" decoding=\"async\" height=\"223\" sizes=\"(max-width: 473px) 100vw, 473px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902094851f.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902094851f.png 473w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1902094851f-300x141.png 300w\" width=\"473\"\/><\/p>\n<h3>4. Mapowanie relacji technicznych<\/h3>\n<p>Zamiast polega\u0107 na podstawowych linii przerywanych, C4 wykorzystuje jasno zdefiniowane makra komunikacji w formacie<code>Rel(From_ID, To_ID, \"Etykieta\", \"Technologia\")<\/code>. Dzi\u0119ki temu Twoje mapy architektury s\u0105 bardzo czytelne, poniewa\u017c wymusza si\u0119, by ka\u017cda po\u0142\u0105czenie wyra\u017anie okre\u015bla\u0142o swoje przeznaczenie i podstawowy protok\u00f3\u0142 transportowy (np. HTTPS, gRPC lub AMQP):<\/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:LPB1QkD038Rl1h-3ciFYG4DPwB4KMZVGXLrmr-uvo6FP5PtCc9bnNBFikrVZE6dZoo0XVVf_oLTib1uQWhlyzYQ_tUNM16H3xZvDqgGWvwt9rE23tPExXjKZcdSs7UHBQYMv1pWLmCZX3H3wkGyrr58Eg9GTJ5YjqwISVA1zLXyfEpzvwS-j8pY1ZnKH-uocqUIXPOD6iT22G-DH1RR6Vz5ssu-GxP7rWjjkOW0bkGChYgHV9f2BSie_LG761cvPOSH0Xu56d2Bjp7iKjGswALC_Prnkz-9DqQ8Djifk_57c6lwb2SXttbisKht3lfVEKlnesXJO4JpqlLvcHaL_IMp03wYcdahbk0ynMpXxu4Oi3rvssHA6mKbqO0IXoajZ57enxwdE6WnOewUPg-SPulLfoSvWwqFdg7pv7QCoM7SQqZlRiYQGNOEcffFK6yin7TEyulzf8inlVy2NlLSla5XAhHCr5thd-rLLKKP619pRBiHYu-V9e-CWZT_kAmPYvOaboc-gl5YjFm40\" 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>Edytuj Plantuml w 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\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:LPB1RjD048RlaVmEGmx8bK0LKey8YQOLI808JL0bBj5uFN4cjdUjtRNC6d6fu24Y7eChD-BtOjQqIUg3lJlU-UR_P_O9QrMrES7BsSNvx68rCzeZQxAlaaaocPDrHgUgTTxKP9_1z5t5f3rag4lJXUanqaCfgLI3SIPZvqCzFKicY-0abiRZh8kL2quotWntVtztEe0R_vx2lg3jzp_p7i5Rr0vBjSMQOSrQTdAcvYDrTVtLfpLoTO_zx8Qxja2Wvp4OQRVKwVtEsrvgPHRh4g4n7MDkQgRX1om-BEUHTo1UcbRdQ4EgNaZwTMdk5Vx_j8BUeCwhTde6tv89o7FeLzfHjiAcaRpNJSKbYdBOKgwDyzPeLgR3gEc6K7bu2ilGq49PRdoCNiafj4fyhrijfWdQuK_mqXRDe-h6zjH3V1ULD0XjkTz5wOyqN6LfZXupT2JCInHSZZge3LYgK8Mj7YNCfLXXQV7f_RWJfjgOhfMYZJLhhXuLbqa1mqOcQYmJb8xtky9qPlYbnbbyJoOtL9rSaMCVRaDfR2-jY-W7Nwwig6aV74K1RvVB-IAY8kUGVMBaOwxwC48OUcpOnQKOeyCb4MTqYXHhvykPpFOV\" \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\">!include &lt;C4\/C4_Container&gt;\r\n\r\nPerson(customer, \"Klient bankowy\", \"Klient z kontem osobistym\")\r\nSystem(banking_sys, \"G\u0142\u00f3wny system bankowy\", \"Zarz\u0105dza transakcjami finansowymi\")\r\nSystem_Ext(mail_sys, \"Us\u0142uga e-mail\", \"Wewn\u0119trzny bramka powiadomie\u0144 SMTP\")\r\n\r\nSystem_Boundary(c1, \"Ekosystem systemu e-handlu\") {\r\n    Container(web_app, \"Aplikacja jednostronicowa\", \"React &amp; TypeScript\", \"Dostarcza funkcje u\u017cytkownika poprzez przegl\u0105dark\u0119\")\r\n    ContainerDb(database, \"Baza danych relacyjna\", \"PostgreSQL\", \"Przechowuje profile u\u017cytkownik\u00f3w i historie ksi\u0119gowo\u015bci\")\r\n}\r\nRel(customer, web_app, \"Wykorzystuje funkcje sklepu poprzez\", \"HTTPS\")\r\nRel(web_app, database, \"Odczytuje i zapisuje dane transakcyjne poprzez\", \"SQL\/TCP\")<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:LPB1RjD048RlaVmEGmx8bK0LKey8YQOLI808JL0bBj5uFN4cjdUjtRNC6d6fu24Y7eChD-BtOjQqIUg3lJlU-UR_P_O9QrMrES7BsSNvx68rCzeZQxAlaaaocPDrHgUgTTxKP9_1z5t5f3rag4lJXUanqaCfgLI3SIPZvqCzFKicY-0abiRZh8kL2quotWntVtztEe0R_vx2lg3jzp_p7i5Rr0vBjSMQOSrQTdAcvYDrTVtLfpLoTO_zx8Qxja2Wvp4OQRVKwVtEsrvgPHRh4g4n7MDkQgRX1om-BEUHTo1UcbRdQ4EgNaZwTMdk5Vx_j8BUeCwhTde6tv89o7FeLzfHjiAcaRpNJSKbYdBOKgwDyzPeLgR3gEc6K7bu2ilGq49PRdoCNiafj4fyhrijfWdQuK_mqXRDe-h6zjH3V1ULD0XjkTz5wOyqN6LfZXupT2JCInHSZZge3LYgK8Mj7YNCfLXXQV7f_RWJfjgOhfMYZJLhhXuLbqa1mqOcQYmJb8xtky9qPlYbnbbyJoOtL9rSaMCVRaDfR2-jY-W7Nwwig6aV74K1RvVB-IAY8kUGVMBaOwxwC48OUcpOnQKOeyCb4MTqYXHhvykPpFOV\" \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:LPB1QkD038Rl1h-3ciFYG4DPwB4KMZVGXLrmr-uvo6FP5PtCc9bnNBFikrVZE6dZoo0XVVf_oLTib1uQWhlyzYQ_tUNM16H3xZvDqgGWvwt9rE23tPExXjKZcdSs7UHBQYMv1pWLmCZX3H3wkGyrr58Eg9GTJ5YjqwISVA1zLXyfEpzvwS-j8pY1ZnKH-uocqUIXPOD6iT22G-DH1RR6Vz5ssu-GxP7rWjjkOW0bkGChYgHV9f2BSie_LG761cvPOSH0Xu56d2Bjp7iKjGswALC_Prnkz-9DqQ8Djifk_57c6lwb2SXttbisKht3lfVEKlnesXJO4JpqlLvcHaL_IMp03wYcdahbk0ynMpXxu4Oi3rvssHA6mKbqO0IXoajZ57enxwdE6WnOewUPg-SPulLfoSvWwqFdg7pv7QCoM7SQqZlRiYQGNOEcffFK6yin7TEyulzf8inlVy2NlLSla5XAhHCr5thd-rLLKKP619pRBiHYu-V9e-CWZT_kAmPYvOaboc-gl5YjFm40\" 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>Edytuj Plantuml w VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"OfOQvLl\"><img alt=\"\" class=\"alignnone size-full wp-image-610\" decoding=\"async\" height=\"692\" sizes=\"(max-width: 744px) 100vw, 744px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a190224848fe.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a190224848fe.png 744w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a190224848fe-300x279.png 300w\" width=\"744\"\/><\/p>\n<h2>Najlepsze praktyki dla czytelnych architektur C4<\/h2>\n<ul>\n<li><strong>Nigdy nie miesza\u0107 poziom\u00f3w abstrakcji:<\/strong> Zachowaj skupienie diagram\u00f3w na jednym poziomie. Nie mieszkaj szczeg\u00f3\u0142owych wewn\u0119trznych komponent\u00f3w oprogramowania w mapie kontekstu systemu na wysokim poziomie. Je\u015bli system staje si\u0119 zbyt z\u0142o\u017cony, rozdziel go na osobny, dedykowany diagram poziomu kontenera.<\/li>\n<li><strong>Jasno okre\u015bl technologie:<\/strong> Zawsze korzystaj z czwartego parametru w swoich<code>Rel()<\/code> makrach, aby wyra\u017anie okre\u015bli\u0107 dok\u0142adn\u0105 technologi\u0119 lub protok\u00f3\u0142 u\u017cywany (np.<code>\"JSON\/HTTPS\"<\/code> lub <code>\"JDBC\"<\/code>). Dzi\u0119ki temu zesp\u00f3\u0142 ma kluczowy kontekst implementacyjny na pierwszy rzut oka.<\/li>\n<li><strong>Wykorzystaj zast\u0119powania uk\u0142adu kierunkowego:<\/strong> Je\u015bli komponenty zaczynaj\u0105 si\u0119 nieporz\u0105dnie nak\u0142ada\u0107, u\u017cyj makr relacji kierunkowych (takich jak <code>Rel_D()<\/code> dla d\u00f3\u0142, <code>Rel_R()<\/code> dla prawo, lub <code>Rel_L()<\/code> dla lewo) w celu r\u0119cznego wyr\u00f3wnania przep\u0142ywu architektonicznego.<\/li>\n<\/ul>\n<h2>Przyk\u0142ady PlantUML C4 z rzeczywistego \u015bwiata<\/h2>\n<h3>Przyk\u0142ad 1: Uk\u0142ad kontekstu systemu na wysokim poziomie (poziom 1)<\/h3>\n<p>Ten funkcjonalny szkic modeluje standardowy diagram kontekstu systemu poziomu 1, szczeg\u00f3\u0142owo opisuj\u0105c spos\u00f3b, w jaki klient interakcjonuje z aplikacj\u0105 internetowego bankowo\u015bci oraz jej zale\u017cno\u015bciami zewn\u0119trznymi.<\/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:TL9BJy904ButwNyOEM7YuyBH6BGIuy6409wRQJk52TjTiZC5_FTEoqCCyTRT-Pwp7OjYrBPnQNB3ldHjHV2KZHwpKPu5hxJNvpH94sLr1FDlKMhWE80tncN41keGuSEkeYU5L_HhziiZjkDEAKhmmx8L3Gt5EnWSRj2TmTbnDh3X2voG46hG5K5XADYnhc1p8c9PXjQhF0nkq-HWDImEOhdqHrFw9rDlubpOoTb9G0DicNPGiqTVibcmhmEWhw31DO56z58Ryi8nd-nrs22xNyl9VNU6ULl8sMjX5RYFOghKVMmYYssJVFKUkO8on4s8g0GzMIXkhRozXId4tYzDPkGkDdXLzKj887Z7dg12MHK1OsMDi6CRDvzThUTly2wC03gAAdrhYy0rbwWSl2MiJByLutUDvf-BQISyDfBzEZy0\" 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>Edytuj Plantuml w 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\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:TP9DQjn048Nt0jsXCYiRyhFnCWJ31BmmnYOJOyXcA4irTacjRj4_T5fBWmzXV8niPvVHlLmjaI73u5stwjLxNrNht7cqFdIgB3wmhbIe2RukpxuipzPBeptzzj_AeYnyyc5yWk-C3nOxQ7EfTJw0IyvJ5w1Mk3_VesvDDEDhnS0Yj9gyYTHaesjdxl6aLKpQVuJ5vNGuw32YO35g5eVr0BrnZ3Ksk-SgJGYu5tzUd9R5Qie_cJ7MisSIa_dxkrWvvxOpurPnP8IPpNJGsu4UrEwvHiqa7HjZEwmQXWrhr4wygqVWITPR4x4U9c6-Auf__yJ_eDQ_AFu3wv3L0LXlgi4de4-vacdkAEhTYxU3bZaLYiY28nl9YkiidzDROtjZiKgDpjSLwVh2SZq5byKFKljD7otbTjocYD2Z9XN0QCLwPXzoixIkRuusUJJ0NN9fVChF8B0qRadB0bcmwWH2cpRSJd2JSu8WcHM7FEBgwkTD3ZeNPFdxtW00\" \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\r\n!include &lt;C4\/C4_Context&gt;\r\n\r\ntytu\u0142 Diagram kontekstu systemu dla systemu bankowo\u015bci internetowej\r\n\r\nOsoba(klient, \"Klient bankowo\u015bci osobistej\", \"Klient banku posiadaj\u0105cy konta osobiste.\")\r\nSystem(system_bankowy, \"System bankowo\u015bci internetowej\", \"Umo\u017cliwia klientom przegl\u0105danie informacji finansowych i przeprowadzanie przelew\u00f3w.\")\r\nSystem_Zew(system_mailowy, \"System poczty e-mail\", \"Wewn\u0119trzny klaster serwer\u00f3w pocztowych korporacyjnych SendGrid.\")\r\n\r\nRel(klient, system_bankowy, \"U\u017cywa panelu online przez\")\r\nRel_P(system_bankowy, system_mailowy, \"Wysy\u0142a ostrze\u017cenia i kody weryfikacyjne przy u\u017cyciu\", \"SMTP\")\r\n@enduml<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:TP9DQjn048Nt0jsXCYiRyhFnCWJ31BmmnYOJOyXcA4irTacjRj4_T5fBWmzXV8niPvVHlLmjaI73u5stwjLxNrNht7cqFdIgB3wmhbIe2RukpxuipzPBeptzzj_AeYnyyc5yWk-C3nOxQ7EfTJw0IyvJ5w1Mk3_VesvDDEDhnS0Yj9gyYTHaesjdxl6aLKpQVuJ5vNGuw32YO35g5eVr0BrnZ3Ksk-SgJGYu5tzUd9R5Qie_cJ7MisSIa_dxkrWvvxOpurPnP8IPpNJGsu4UrEwvHiqa7HjZEwmQXWrhr4wygqVWITPR4x4U9c6-Auf__yJ_eDQ_AFu3wv3L0LXlgi4de4-vacdkAEhTYxU3bZaLYiY28nl9YkiidzDROtjZiKgDpjSLwVh2SZq5byKFKljD7otbTjocYD2Z9XN0QCLwPXzoixIkRuusUJJ0NN9fVChF8B0qRadB0bcmwWH2cpRSJd2JSu8WcHM7FEBgwkTD3ZeNPFdxtW00\" \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:TL9BJy904ButwNyOEM7YuyBH6BGIuy6409wRQJk52TjTiZC5_FTEoqCCyTRT-Pwp7OjYrBPnQNB3ldHjHV2KZHwpKPu5hxJNvpH94sLr1FDlKMhWE80tncN41keGuSEkeYU5L_HhziiZjkDEAKhmmx8L3Gt5EnWSRj2TmTbnDh3X2voG46hG5K5XADYnhc1p8c9PXjQhF0nkq-HWDImEOhdqHrFw9rDlubpOoTb9G0DicNPGiqTVibcmhmEWhw31DO56z58Ryi8nd-nrs22xNyl9VNU6ULl8sMjX5RYFOghKVMmYYssJVFKUkO8on4s8g0GzMIXkhRozXId4tYzDPkGkDdXLzKj887Z7dg12MHK1OsMDi6CRDvzThUTly2wC03gAAdrhYy0rbwWSl2MiJByLutUDvf-BQISyDfBzEZy0\" 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>Edytuj Plantuml w VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"NTJPRPC\"><img loading=\"lazy\" alt=\"\" class=\"alignnone size-full wp-image-611\" decoding=\"async\" height=\"439\" loading=\"lazy\" sizes=\"auto, (max-width: 561px) 100vw, 561px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a190234b2052.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a190234b2052.png 561w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a190234b2052-300x235.png 300w\" width=\"561\"\/><\/p>\n<p><strong>Analiza sk\u0142adni:<\/strong> Ten diagram skupia si\u0119 wy\u0142\u0105cznie na wysokim poziomie szczeg\u00f3\u0142owo\u015bci. Makro <code>System_Zew<\/code> automatycznie stosuje profil koloru szarego do us\u0142ugi poczty e-mail, wizualnie oddzielaj\u0105c system g\u0142\u00f3wny od zale\u017cno\u015bci zewn\u0119trznych. Makro <code>Rel_P<\/code> zmusza silnik uk\u0142adu do umieszczenia w\u0119z\u0142a poczty bezpo\u015brednio po prawej stronie bloku systemu bankowego.<\/p>\n<h3>Przyk\u0142ad 2: G\u0142\u0119boka analiza topologii kontener\u00f3w mikroserwis\u00f3w (poziom 2)<\/h3>\n<p>Ten zaawansowany szkic przedsi\u0119biorstwa rozk\u0142ada system na jego sk\u0142adaj\u0105ce si\u0119 aplikacje kontener\u00f3w i izolowane magazyny danych, pokazuj\u0105c, jak ruch internetowy przep\u0142ywa przez bram\u0119 interfejsu API do mikroserwis\u00f3w backendowych.<\/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:TLHTRzf047n7uZziUMY9b3PIbSUgIW9jIfGF5wFsqLgV5tFA-SwwMqEigF-zUxP38Kfv07bzDpExCyj5OFJSL6OyUgUjCar1y6LsVZOxpsRECcfB_kjuD1wnPaEmhy5SO-cnWhNpa61RaML8d6SqS8rCEspZhOHyS7PQaLSRj7mAaz-KmztmA1Sz2zX4wWlB981C0Mg3BB0Lg0sfHzSma2rgfoq7a2y7l27jOKTvq7B-q-GaKgLjOAgoAzVO0dqxhJinML2k9i5_qJY8Ws_AXUx6v0IUnoEGpxwvATOwA_k3SlKoMS1IP6XRGkBTKnlrtfVQFhq8zuhgJbmUsK6XCU4KfCN2I3-nAp2wqd94If2ZGQlaXNN58FyLVSERB93VQXMbBmeHhhc5Ewsy6-gH-jh1UtYubDEVu-ClDBhe9bZGbepqxI5gP_T8jgVkfl4M9J_P0yQLHnjGiNOMRgaeUujkS8kGrZxEuSevZZMPXtGIeclzW7kU2YsMKZJTPK2bP33y1l4yd_PdiY8Nk9uCviWOsFckovbJZzwXsiolkdbNjQ6UgT21lSuRfW8kPulvH-NafOx9Oimbha4IL65F-oU6v4Dd905xNA-rWhLnkm3A45hJYamPRvSnybQ2hFPfboKfYSDuj2HpaERZdAHDtdayJ2B-6eT5WAt6gFp7QfMaPpVfmttK8qZP_3Xfhtp_vwTifglYs0Sh1y1ocSp-0tNivtVdT-X5oNwZUdE30Bu6MXvduT2TkCqoyhsjqgJNj9UJ_hmzMzsc4UX2DbR-LFu2\" 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>Edytuj Plantuml w 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\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:VLHDRnCn4Br7odyOSe1KGbH2FIBKDa6bfRIXgTHZDEjrD-xksYj_uDg8ImJYDrJy3AwzaVrVZBTDcnJ1dhmUxtlptZplhh6ehQkhVk-PaAnoEOStevtjqSvifAH58Rb-s-_rUpPOrovWBB3GM4D9HKwrtxyyv1L2Hfi16gKjLWwQTe5MglOd4-dRKwCo79f6HvwZP_WI1XDYfSz148oMt2eV1hHzIA-5TbSS6YTB6uYd_SQKv-kGq5HeBvKcGebWl19i3iPg9P4MQuXi_cgmbHeuq2W5mzaq6CjhD-IbCjrorlLDnEzMEoibZtI3BVZIxm4z7-v53zCPd64ZaXAjhWDevQoGXOEzoM4ISb88UJteof6pkIVtaYZ5vYgFo-yihTi5BIANWWnHcMaNhaY7Ab4BKcvYoCexlGAIpr9vR6y3-ELDR1UXaxRHbUiWg2zdvyJyKPHQ6QwzC61LUskmljD3jGC5p-5qZmw-JgyNN8TBKIPsgqek0r56B3Kt8Gc2d7jUgQORzxzvxRKah74KN4fHWYNJ3PRigcCymiy8qqQJIR2lb5rvOptgY1lZJToQJCffF-KCQm6KidjSzrS3usouAixoB2d70cEGaAEa33nyYObpf1ZPGa4PxtU1gvkArrnsuz4gDcHPL9A3ONDU8yt1OiOhY8NAQJV2tkXmt7NmDGNh1IGDr7pme1sRTz4FH4RpfK8cU87TAeBdNYvlh8u4mtZ5rwzGltV6guqBifwmYs02sPFaFBa72JYfU7z-Ffbk7qrFJr9dX3KRhsVqIJ3Mfaq8uJ6IzxD_W2tE9gF_0jvDF5bGOanuP3LIWnJfb1_Nf9kRgwTOayt8R0xlN7kax53M5wHo-GDy8qptcrcDyR71wQVZxVFZQSBTvJAdtzWV\" \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\r\n!include &lt;C4\/C4_Container&gt;\r\n\r\ntytu\u0142 Diagram kontener\u00f3w dla bramy portalu p\u0142atno\u015bci\r\n\r\nOsoba(sprzedawca, \"Partner internetowy\", \"Integruje punkty ko\u0144cowe p\u0142atno\u015bci platformy na swoich stronach internetowych.\")\r\n\r\nGranica_Systemu(ekosystem_bramy, \"Ekosystem bramy p\u0142atno\u015bci\") {\r\n    Kontener(brama_api, \"Proxy routingu API\", \"Nginx\", \"Przechwytuje pochodz\u0105ce po\u0142\u0105czenia, obs\u0142uguje limity szybko\u015bci i r\u00f3wnowa\u017cy w\u0119z\u0142y.\")\r\n    Kontener(us\u0142uga_auth, \"Mikroserwis to\u017csamo\u015bci\", \"Go &amp; OAuth2\", \"Weryfikuje tokeny i zakresy API deweloper\u00f3w.\")\r\n    Kontener(us\u0142uga_txn, \"Dziennik transakcji\", \"Java Spring Boot\", \"Przetwarza p\u0142atno\u015bci i zarz\u0105dza kontami w dzienniku.\")\r\n    KontenerDb(dziennik_db, \"Magazyn danych dziennika\", \"CockroachDB\", \"Implementuje rozproszone schematy tabel zgodne z ACID.\")\r\n}\r\n\r\n' Przep\u0142yw ruchu p\u0142ynnie przebiega przez wewn\u0119trzne cele kontener\u00f3w\r\nRel(sprzedawca, brama_api, \"Wysy\u0142a dane p\u0142atno\u015bci przez\", \"HTTPS\/JSON\")\r\nRel_D(brama_api, us\u0142uga_auth, \"Weryfikuje przychodz\u0105ce tokeny przez\", \"gRPC\")\r\nRel_D(brama_api, us\u0142uga_txn, \"Przekazuje dzia\u0142ania zakupowe do\", \"gRPC\")\r\nRel_P(us\u0142uga_txn, dziennik_db, \"Trwa trwa\u0142o\u015b\u0107 wpis\u00f3w dziennika przez\", \"SQL\/TLS\")\r\n@enduml<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:VLHDRnCn4Br7odyOSe1KGbH2FIBKDa6bfRIXgTHZDEjrD-xksYj_uDg8ImJYDrJy3AwzaVrVZBTDcnJ1dhmUxtlptZplhh6ehQkhVk-PaAnoEOStevtjqSvifAH58Rb-s-_rUpPOrovWBB3GM4D9HKwrtxyyv1L2Hfi16gKjLWwQTe5MglOd4-dRKwCo79f6HvwZP_WI1XDYfSz148oMt2eV1hHzIA-5TbSS6YTB6uYd_SQKv-kGq5HeBvKcGebWl19i3iPg9P4MQuXi_cgmbHeuq2W5mzaq6CjhD-IbCjrorlLDnEzMEoibZtI3BVZIxm4z7-v53zCPd64ZaXAjhWDevQoGXOEzoM4ISb88UJteof6pkIVtaYZ5vYgFo-yihTi5BIANWWnHcMaNhaY7Ab4BKcvYoCexlGAIpr9vR6y3-ELDR1UXaxRHbUiWg2zdvyJyKPHQ6QwzC61LUskmljD3jGC5p-5qZmw-JgyNN8TBKIPsgqek0r56B3Kt8Gc2d7jUgQORzxzvxRKah74KN4fHWYNJ3PRigcCymiy8qqQJIR2lb5rvOptgY1lZJToQJCffF-KCQm6KidjSzrS3usouAixoB2d70cEGaAEa33nyYObpf1ZPGa4PxtU1gvkArrnsuz4gDcHPL9A3ONDU8yt1OiOhY8NAQJV2tkXmt7NmDGNh1IGDr7pme1sRTz4FH4RpfK8cU87TAeBdNYvlh8u4mtZ5rwzGltV6guqBifwmYs02sPFaFBa72JYfU7z-Ffbk7qrFJr9dX3KRhsVqIJ3Mfaq8uJ6IzxD_W2tE9gF_0jvDF5bGOanuP3LIWnJfb1_Nf9kRgwTOayt8R0xlN7kax53M5wHo-GDy8qptcrcDyR71wQVZxVFZQSBTvJAdtzWV\" \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:TLHTRzf047n7uZziUMY9b3PIbSUgIW9jIfGF5wFsqLgV5tFA-SwwMqEigF-zUxP38Kfv07bzDpExCyj5OFJSL6OyUgUjCar1y6LsVZOxpsRECcfB_kjuD1wnPaEmhy5SO-cnWhNpa61RaML8d6SqS8rCEspZhOHyS7PQaLSRj7mAaz-KmztmA1Sz2zX4wWlB981C0Mg3BB0Lg0sfHzSma2rgfoq7a2y7l27jOKTvq7B-q-GaKgLjOAgoAzVO0dqxhJinML2k9i5_qJY8Ws_AXUx6v0IUnoEGpxwvATOwA_k3SlKoMS1IP6XRGkBTKnlrtfVQFhq8zuhgJbmUsK6XCU4KfCN2I3-nAp2wqd94If2ZGQlaXNN58FyLVSERB93VQXMbBmeHhhc5Ewsy6-gH-jh1UtYubDEVu-ClDBhe9bZGbepqxI5gP_T8jgVkfl4M9J_P0yQLHnjGiNOMRgaeUujkS8kGrZxEuSevZZMPXtGIeclzW7kU2YsMKZJTPK2bP33y1l4yd_PdiY8Nk9uCviWOsFckovbJZzwXsiolkdbNjQ6UgT21lSuRfW8kPulvH-NafOx9Oimbha4IL65F-oU6v4Dd905xNA-rWhLnkm3A45hJYamPRvSnybQ2hFPfboKfYSDuj2HpaERZdAHDtdayJ2B-6eT5WAt6gFp7QfMaPpVfmttK8qZP_3Xfhtp_vwTifglYs0Sh1y1ocSp-0tNivtVdT-X5oNwZUdE30Bu6MXvduT2TkCqoyhsjqgJNj9UJ_hmzMzsc4UX2DbR-LFu2\" 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>Edytuj Plantuml w VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"ZtGazyC\"><img loading=\"lazy\" alt=\"\" class=\"alignnone size-full wp-image-612\" decoding=\"async\" height=\"728\" loading=\"lazy\" sizes=\"auto, (max-width: 759px) 100vw, 759px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19024586a43.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19024586a43.png 759w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19024586a43-300x288.png 300w\" width=\"759\"\/><\/p>\n<p><strong>Rozbicie sk\u0142adni:<\/strong> Korzystaj\u0105c z <code>System_Boundary<\/code> makro otoczki, wewn\u0119trzne sk\u0142adniki s\u0105 czysto grupowane razem wewn\u0105trz jasno zdefiniowanego pude\u0142ka granicznego. Specjalistyczne makro <code>ContainerDb<\/code> makro renderuje magazyn danych za pomoc\u0105 wyra\u017anego ikony cylindra bazy danych, co jasno pokazuje podzia\u0142 mi\u0119dzy \u015brodowiskami obliczeniowymi a warstwami trwa\u0142ego przechowywania danych.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Co to jest diagram modelu C4? Rozszerzenie diagram modelu C4 to hierarchiczny, czteropoziomowy ramowy model architektury zaprojektowany do dokumentowania architektury oprogramowania z r\u00f3\u017cnym stopniem szczeg\u00f3\u0142owo\u015bci. Stworzony przez Simona Browna, model C4 unika nieprecyzyjnych p\u00f3l i linii, strukturalizuj\u0105c mapy system\u00f3w w&#8230;<\/p>\n","protected":false},"author":4,"featured_media":0,"parent":0,"menu_order":12,"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-2116","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>PlantUML C4 Model Syntax | VPasCode Text to Diagram Guide<\/title>\n<meta name=\"description\" content=\"Map software architecture hierarchies with PlantUML C4 diagrams in VPasCode, your free diagram-as-code tool.\" \/>\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\/pl\/docs\/vpascode-docs\/plantuml-c4-model-syntax-guide\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PlantUML C4 Model Syntax | VPasCode Text to Diagram Guide\" \/>\n<meta property=\"og:description\" content=\"Map software architecture hierarchies with PlantUML C4 diagrams in VPasCode, your free diagram-as-code tool.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.vpascode.com\/pl\/docs\/vpascode-docs\/plantuml-c4-model-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_6a1901f8a8e4e.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minuty\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/docs\\\/vpascode-docs\\\/plantuml-c4-model-syntax-guide\\\/\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/docs\\\/vpascode-docs\\\/plantuml-c4-model-syntax-guide\\\/\",\"name\":\"PlantUML C4 Model Syntax | VPasCode Text to Diagram Guide\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/docs\\\/vpascode-docs\\\/plantuml-c4-model-syntax-guide\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/docs\\\/vpascode-docs\\\/plantuml-c4-model-syntax-guide\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.vpascode.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/img_6a1901f8a8e4e.png\",\"datePublished\":\"2026-05-26T07:53:11+00:00\",\"description\":\"Map software architecture hierarchies with PlantUML C4 diagrams in VPasCode, your free diagram-as-code tool.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/docs\\\/vpascode-docs\\\/plantuml-c4-model-syntax-guide\\\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/docs\\\/vpascode-docs\\\/plantuml-c4-model-syntax-guide\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/docs\\\/vpascode-docs\\\/plantuml-c4-model-syntax-guide\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/img_6a1901f8a8e4e.png\",\"contentUrl\":\"https:\\\/\\\/www.vpascode.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/img_6a1901f8a8e4e.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/docs\\\/vpascode-docs\\\/plantuml-c4-model-syntax-guide\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Lean Docs\",\"item\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/docs\\\/%ld_collection%\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Przewodnik po sk\u0142adni modelu C4 w PlantUML\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/#website\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/\",\"name\":\"VPasCode\",\"description\":\"by Visual Paradigm\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/#organization\",\"name\":\"VPasCode\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/wp-content\\\/uploads\\\/sites\\\/9\\\/2026\\\/06\\\/cropped-vp-online-logo-v1.png\",\"contentUrl\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/wp-content\\\/uploads\\\/sites\\\/9\\\/2026\\\/06\\\/cropped-vp-online-logo-v1.png\",\"width\":128,\"height\":138,\"caption\":\"VPasCode\"},\"image\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/pl\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PlantUML C4 Model Syntax | VPasCode Text to Diagram Guide","description":"Map software architecture hierarchies with PlantUML C4 diagrams in VPasCode, your free diagram-as-code tool.","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\/pl\/docs\/vpascode-docs\/plantuml-c4-model-syntax-guide\/","og_locale":"pl_PL","og_type":"article","og_title":"PlantUML C4 Model Syntax | VPasCode Text to Diagram Guide","og_description":"Map software architecture hierarchies with PlantUML C4 diagrams in VPasCode, your free diagram-as-code tool.","og_url":"https:\/\/www.vpascode.com\/pl\/docs\/vpascode-docs\/plantuml-c4-model-syntax-guide\/","og_site_name":"VPasCode","og_image":[{"url":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901f8a8e4e.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Szacowany czas czytania":"4 minuty"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.vpascode.com\/pl\/docs\/vpascode-docs\/plantuml-c4-model-syntax-guide\/","url":"https:\/\/www.vpascode.com\/pl\/docs\/vpascode-docs\/plantuml-c4-model-syntax-guide\/","name":"PlantUML C4 Model Syntax | VPasCode Text to Diagram Guide","isPartOf":{"@id":"https:\/\/www.vpascode.com\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.vpascode.com\/pl\/docs\/vpascode-docs\/plantuml-c4-model-syntax-guide\/#primaryimage"},"image":{"@id":"https:\/\/www.vpascode.com\/pl\/docs\/vpascode-docs\/plantuml-c4-model-syntax-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901f8a8e4e.png","datePublished":"2026-05-26T07:53:11+00:00","description":"Map software architecture hierarchies with PlantUML C4 diagrams in VPasCode, your free diagram-as-code tool.","breadcrumb":{"@id":"https:\/\/www.vpascode.com\/pl\/docs\/vpascode-docs\/plantuml-c4-model-syntax-guide\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.vpascode.com\/pl\/docs\/vpascode-docs\/plantuml-c4-model-syntax-guide\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.vpascode.com\/pl\/docs\/vpascode-docs\/plantuml-c4-model-syntax-guide\/#primaryimage","url":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901f8a8e4e.png","contentUrl":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901f8a8e4e.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.vpascode.com\/pl\/docs\/vpascode-docs\/plantuml-c4-model-syntax-guide\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.vpascode.com\/pl\/"},{"@type":"ListItem","position":2,"name":"Lean Docs","item":"https:\/\/www.vpascode.com\/pl\/docs\/%ld_collection%\/"},{"@type":"ListItem","position":3,"name":"Przewodnik po sk\u0142adni modelu C4 w PlantUML"}]},{"@type":"WebSite","@id":"https:\/\/www.vpascode.com\/pl\/#website","url":"https:\/\/www.vpascode.com\/pl\/","name":"VPasCode","description":"by Visual Paradigm","publisher":{"@id":"https:\/\/www.vpascode.com\/pl\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.vpascode.com\/pl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/www.vpascode.com\/pl\/#organization","name":"VPasCode","url":"https:\/\/www.vpascode.com\/pl\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.vpascode.com\/pl\/#\/schema\/logo\/image\/","url":"https:\/\/www.vpascode.com\/pl\/wp-content\/uploads\/sites\/9\/2026\/06\/cropped-vp-online-logo-v1.png","contentUrl":"https:\/\/www.vpascode.com\/pl\/wp-content\/uploads\/sites\/9\/2026\/06\/cropped-vp-online-logo-v1.png","width":128,"height":138,"caption":"VPasCode"},"image":{"@id":"https:\/\/www.vpascode.com\/pl\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.vpascode.com\/pl\/wp-json\/wp\/v2\/ld_docs\/2116","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vpascode.com\/pl\/wp-json\/wp\/v2\/ld_docs"}],"about":[{"href":"https:\/\/www.vpascode.com\/pl\/wp-json\/wp\/v2\/types\/ld_docs"}],"author":[{"embeddable":true,"href":"https:\/\/www.vpascode.com\/pl\/wp-json\/wp\/v2\/users\/4"}],"wp:attachment":[{"href":"https:\/\/www.vpascode.com\/pl\/wp-json\/wp\/v2\/media?parent=2116"}],"wp:term":[{"taxonomy":"ld_collection","embeddable":true,"href":"https:\/\/www.vpascode.com\/pl\/wp-json\/wp\/v2\/ld_collection?post=2116"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}