What the platform does with the file
- It reads the file with the same rules as the page editor, Look and feel and Homepage. Anything it would drop (an unknown block, a field outside the description, an unsafe link, an invalid colour) is listed for you one by one before you apply it.
- Pages are created as drafts, and you review them before they go live. An existing page is overwritten only if you explicitly choose to.
- The file does not carry images, only their addresses. The target store downloads them into its media library and accepts JPEG, PNG, GIF, WebP and AVIF. An address starting with a slash is combined with the zdroj field.
- Homepage categories and products are referenced by slug, not by id: an id from one store is meaningless in another.
- A newer format version than the platform knows is rejected as a whole.
Limits
- File size
- 2 MB
- Pages per file
- 300
- Blocks per page
- 200
- Images per use
- 80
From the platform code. This list is built directly from the platform source code, and every deployment checks that the two still match.
File fields
| Field | What it holds |
|---|
druh | File marker, always portican-predvolba. It tells the platform this is not just any JSON. |
|---|
verzia | Format version, currently 2. |
|---|
nazov | The name the agency gave the preset. |
|---|
vytvorene | When the preset was created, in ISO 8601. For humans only. |
|---|
zdroj | The address of the website the preset came from. Image addresses starting with a slash are built from it. |
|---|
tema | The website theme; fields below. Optional. |
|---|
stranky | The list of pages; fields below. |
|---|
uvodnaStrana | The store homepage; fields below. Optional. |
|---|
eshop | The store layout from a template: homepage banner, columns on a phone, categories and product card, each option from a closed list. May be missing; version 1 has none. |
|---|
Page fields
| Field | What it holds |
|---|
slug | The page address. Empty means the website homepage. |
|---|
jazyk | Language code of the page, for example sk, cs, en. |
|---|
adresa | The address in the page's language, when it differs from the slug. |
|---|
nazov | Page name in the menu. |
|---|
seoTitulok | Title for search engines. |
|---|
seoPopis | Description for search engines. |
|---|
poradieVMenu | Position in the website menu. Without a number the page stays out of the menu. |
|---|
bloky | Page blocks in the order they appear. Kinds and fields are covered in Blocks and fields. |
|---|
Theme fields
| Field | What it holds |
|---|
light | Theme colours as #rrggbb: background, foreground, primary, primaryForeground, accent, accentForeground, mutedForeground, surface, line, brand2, brand3. |
|---|
radius | Corner radius in rem, for example 0.75rem. |
|---|
tmavyRezim | Whether the store offers a dark mode switch (true or false). |
|---|
font | Body font: Geist, Jost, Inter, Lora, Playfair Display, Old Standard TT, Space Grotesk, Bodoni Moda, Archivo, system-ui, Faustina, DM Sans, Montserrat, Work Sans, Manrope, Nunito Sans, Cormorant Garamond, Source Serif 4, Libre Baskerville, Merriweather. |
|---|
pismo | Script font: Allura, Kaushan Script. |
|---|
sablona | Template: zaklad, expert. |
|---|
styl | Style of the Expert template: vyrazny, triezvy, redakcny, produktovy, teply. |
|---|
fontNadpisov | Heading font, from the same list as the body font. |
|---|
znacka | Text wordmark instead of a logo: up to 40 characters plus an optional script addition. |
|---|
logo | Logo address. |
|---|
logoWidth | Logo width in pixels. |
|---|
logoHeight | Logo height in pixels. |
|---|
titulnaFotka | Hero photo address. |
|---|
popisZnacky | Short brand tagline, up to 40 characters. |
|---|
Store homepage fields
| Field | What it holds |
|---|
pas | Texts of the banner at the top of the homepage. |
|---|
sekcie | Homepage sections in order, always all of them. |
|---|
dlazdice | Category tiles; the category is a slug. |
|---|
pocetKategorii | How many categories to show when they are picked automatically. |
|---|
pasy | Product strips; both the collection and the products are slugs. |
|---|
pocetProduktov | How many products one strip holds. |
|---|
vyhody | Store benefits below the banner. |
|---|
Example
The smallest useful preset: a theme and one page with two blocks. The platform reads all of it without a single finding; every deployment checks that.
{
"druh": "portican-predvolba",
"verzia": 1,
"nazov": "Florist, simple website",
"vytvorene": "2026-09-29T10:00:00Z",
"zdroj": "https://example.com",
"tema": {
"light": {
"primary": "#0f5c4a",
"primaryForeground": "#ffffff"
},
"radius": "0.75rem",
"font": "Inter",
"sablona": "expert",
"styl": "teply"
},
"stranky": [
{
"slug": "",
"jazyk": "en",
"nazov": "Home",
"poradieVMenu": 1,
"bloky": [
{
"id": "uvod",
"druh": "hlavicka",
"obsah": {
"nadpis": "Flowers for every day",
"text": "We tie our bouquets in the morning and deliver them the same day.",
"tlacidlo": "See what we offer",
"odkaz": "/shop"
}
},
{
"id": "otazky",
"druh": "otazky",
"obsah": {
"nadpis": "Frequently asked questions",
"polozky": [
{
"otazka": "Do you deliver on Sundays?",
"odpoved": "Yes, orders placed by 10:00 are delivered the same day."
}
]
}
}
]
}
]
}