Guide for authors and web agencies

Creating starter kits for SimplyCod Studio

From the first JSON file to an installable ZIP: specifications, examples, and checks for distributing reliable, portable, and recoverable additional themes.

Edition 1.0Compatible with SimplyCod Studio 0.22.0Techpaolo by Paolo Zappatore
Basics

1. Introduction

A starter kit is not an executable WordPress theme. It is a project package imported by SimplyCod Studio, with pages, media, and global settings described in JSON.

This separation makes the kit independent from the active WordPress theme and allows the plugin to keep an internal copy. Deleted pages can therefore be recreated from the stored blueprint without uploading the original ZIP again.

For end users

Fast installation, editable content, and no mandatory external dependencies.

For web agencies

Stable identifiers, versioning, and reusable kits for multiple clients.

For marketplaces

A controlled format with no executable code, suitable for distribution.

Rights and licensesOnly include text, images, fonts, and other material you are legally allowed to redistribute. A website used as inspiration does not authorize copying trademarks, photos, or content.

2. Quick start

  1. Create a working folder, for example architecture-studio.
  2. Add simplycod-kit.json at the root.
  3. Create the pages and media folders.
  4. Write at least one page JSON file with version: 2.
  5. Add local images and reference them through portable tokens.
  6. Define design system, header, footer, and menu in the manifest.
  7. Zip the folder contents without adding an extra wrapper folder.
  8. Upload the ZIP from SimplyCod Studio → Add new and verify all pages.
Complete package

Installable kit with home, showcase, contacts, JPG, transparent PNG, and form.

Download example ZIP
SDK and schema

Technical documentation and JSON schema included in the project.

Open SDK guide
Example sources

Readable and editable files before packaging.

Open sources

3. ZIP structure

Allowed structure
architecture-studio.zip
├── simplycod-kit.json
├── pages/
│   ├── home.json
│   ├── projects.json
│   └── contact.json
└── media/
    ├── hero.jpg
    ├── project-01.jpg
    └── brand.png

The installable ZIP may contain the manifest, page JSON files, and supported media. Keep documentation, source files, PSD files, scripts, and notes outside the distributable ZIP.

No wrapper folderWhen the ZIP is opened, simplycod-kit.json must be visible immediately. A structure like architecture-studio/simplycod-kit.json is not valid.
LimitValueReason
ZIP size32 MBReduces upload time and risk.
Extracted content30 MBPrevents abnormal compressed packages.
Total files150Keeps the kit manageable.
Single file8 MBEncourages optimized media.

4. The simplycod-kit.json manifest

The manifest is the kit's index. It defines identity, version, pages, media, menu, design settings, header, footer, and optional modules.

Minimum example
{
  "schema": "simplycod.starter-kit",
  "schema_version": 1,
  "id": "architecture-studio",
  "name": "Architecture Studio",
  "version": "1.0.0",
  "description": "Starter kit for professional studios.",
  "pages": [
    { "key": "home", "title": "Home", "file": "pages/home.json", "front_page": true }
  ],
  "media": {
    "hero": "media/hero.jpg"
  }
}
FieldUseSuggestion
idStable kit identifier.Never change it between versions.
nameVisible kit name.Keep it clear and marketable.
versionRelease number.Use semantic versioning when possible.
pagesPages created by the kit.Use stable keys such as home.
mediaLocal media map.Use readable lowercase keys.

5. Pages and layouts

Each page points to a JSON file. Page keys must remain stable between versions because SimplyCod uses them to restore missing pages and update menu references.

  • Use from 1 to 20 pages.
  • Keep page keys stable and unique.
  • Mark only one page as front_page.
  • Avoid absolute URLs from the development site.
  • Use tokens for internal page and media references.
Restoration logicIf a page is deleted later, SimplyCod can recreate it from the saved blueprint as long as kit and page keys are unchanged.

6. Sections and columns

Pages are made of sections. Sections contain one or more columns, and columns contain components. Keep this hierarchy clean so the imported page remains easy to edit.

Recommended structure

  1. Use a hero section to introduce the page.
  2. Add content sections with clear visual rhythm.
  3. Use columns only when the content benefits from comparison or grouping.
  4. Check mobile stacking before distribution.

Backgrounds

Use background colors, overlays, and images consistently. When a background image is important, define the focal point and test it on mobile.

7. Available components

Starter kits may use the builder's native components: titles, text, images, videos, buttons, dividers, spacers, icons, maps, galleries, accordions, cards, and forms.

Content

Titles, paragraphs, images, videos, and buttons.

Structure

Sections, columns, dividers, spacers, galleries, and cards.

Interaction

Accordions, links, maps, forms, and call-to-action blocks.

Demo contentReplace all demo emails, phone numbers, addresses, social profiles, and button URLs before releasing the kit.

8. Images and media

SimplyCod Studio accepts JPG, JPEG, PNG, GIF, WebP, and AVIF. Images are imported into the WordPress Media Library. PNG transparency is preserved; WebP and AVIF depend on the WordPress server support.

  • Optimize images before packaging.
  • Use descriptive names and stable media keys.
  • Provide alternative text where the layout supports it.
  • Keep source design files outside the installable ZIP.
Transparent logo testThe included example contains a PNG mark with transparency so you can verify import and rendering.

9. Portable tokens

Tokens make a kit portable because they avoid hardcoded development URLs and WordPress IDs.

Common tokens
{{page:home}}
{{media:hero}}
{{media_id:hero}}

Use {{page:key}} for internal links, {{media:key}} for imported media URLs, and {{media_id:key}} when a component needs the attachment ID.

10. Native forms

Forms must be described through native component configuration, including fields, labels, validation, privacy text, and destination settings. This keeps the kit independent from third-party form plugins.

  • Give every field a clear label.
  • Mark required fields explicitly.
  • Test validation errors.
  • Use a real recipient only after installation.
  • Include privacy consent when needed.

12. Design system

A starter kit may define global colors, typography, spacing, button settings, container width, and visual defaults. These settings give the imported site a coherent starting point.

AreaPurpose
ColorsPrimary, secondary, accent, text, and background colors.
TypographyBase fonts, heading scale, weights, and line heights.
ButtonsDefault style, radius, padding, and hover states.
LayoutContainer width, section spacing, and responsive defaults.

14. Creating and validating the package

  1. Validate JSON syntax in every file.
  2. Check that all files referenced by the manifest exist.
  3. Remove hidden files, notes, and source-only assets.
  4. Create the ZIP from the folder contents, not from the parent folder.
  5. Import the ZIP into a clean WordPress installation.
  6. Open every created page and test desktop and mobile rendering.

15. Versions, updates, and restoration

Keep the same id in new versions and increment version. The blueprint copy stored by SimplyCod Studio allows missing pages to be recreated without having the ZIP again.

Do not rename keys lightlyChanging page or media keys breaks references, menu links, and restoration logic.

16. Commented complete example

The attached example demonstrates the full flow with three pages, imported media, design settings, portable tokens, and a native contact form.

  • Three pages with internal navigation through tokens.
  • JPG photos and a transparent PNG mark.
  • Hero with background, overlay, and controlled alignment.
  • Gallery and image components with media URL and ID.
  • Native contact form with fields, privacy, and validation.
  • Global design system reused by pages.
1. Download

Use it immediately as an import test.

Installable package
2. Study

Open source JSON files and compare manifest, pages, and media.

Source folder
3. Duplicate

Change ID, name, content, and resources, then create your ZIP.

JSON schema
Recommended agency methodKeep a source folder under version control and generate the ZIP as a release artifact. Do not edit the distributed archive directly.

17. Diagnostics

ProblemLikely causeSolution
The kit does not appearManifest is not at root or is invalid.Open the ZIP and verify that simplycod-kit.json is at the first level.
Missing imageWrong media key, missing file, or different capitalization.Compare manifest, token, and real path.
PNG has unexpected backgroundThe original file has no alpha channel or was converted.Check the PNG source and do not convert it to JPG.
Form appears as textComponent is not declared as form or fields are malformed.Use the native format from chapter 10.
Development links remainAbsolute URL saved in JSON.Replace it with a {{page:...}} or {{media:...}} token.
Incomplete restorationPage keys changed between versions.Keep kit id and page key stable.

18. Checklist before distribution

  • Stable, unique, and documented kit ID.
  • Updated version and release notes available.
  • From 1 to 20 pages, all present and valid.
  • No development WordPress URL or ID.
  • Optimized local media, including JPG and PNG tests.
  • Alternative image text completed.
  • Menu, home page, buttons, and anchors verified.
  • Forms tested, including validation errors.
  • Header and footer checked on desktop and mobile.
  • Restoration of a deleted page verified.
  • ZIP within limits and free from disallowed files.
  • Material licenses compatible with distribution.
Ready to publishWhen all checks pass, keep both the source folder and the final ZIP with a version number. The package is ready to be distributed for free or sold.