Code Monkey home page Code Monkey logo

aem-site-template-builder's Introduction

AEM Site Template Builder

This repository contains scripts for building AEM Site Templates.

Installation

Required dependencies: node, npm, mvn

cd your-aem-site-template
npm install @adobe/aem-site-template-builder --save-dev

Usage

To build your AEM Site Template just go into its folder and run command:

npx aem-site-template-builder

Expected structure of the repository

files/                  Optional, folder with the UI kit XD file and possibly other files.
    design.xd
previews/               Folder with screenshots of the site template.
    buttons.png
    navigation.png
    teaser.png
site/                   Content module that contains the templates and policies.
theme/                  Theme sources (CSS, JS). It's a npm package with dev-dependency to aem-site-theme-builder.
package.json            Includes meta informations.
    - version           The version of the Site Template.
    - name              Unique name to help AEM to only contain a Site Template once.
    - title             Name of Site Template displayed in AEM UI.
    - description       Free-formed text that can contain some HTML like paragraphs, lists, links.
    - createdBy         Author or vendor.
    - useCases          List of strings that describe the purpose of the site template.
    - docsUrl
    - showcaseUrl
    - sourceRepositoryUrl
    - license

NPM scripts in your template

Template Builder assumes that your AEM Site Template will contain npm run build npm script in the /theme folder which will compile the theme sources into production ready compiled code available in /theme/dist folder.

Compiled site template artifact

files/                  Optional, folder with the UI kit XD file and possibly other files.
    design.xd
previews/               Folder with screenshots of the site template.
    buttons.png
    navigation.png
    teaser.png
site.zip                Content package that contains the templates and policies.
theme.zip               Contains compiled theme.
theme-sources.zip       Zipped theme sources folder.

Local development

For development purposes you can build local npm package which will provide aem-site-template-builder command. You need access to AEM Site Template Builder repository.

  1. Clone AEM Site Template Builder repository.
  2. cd aem-site-template-builder
  3. npm link

Now you should have aem-site-template-builder command available globally as a command line. All changes that you will provide for the aem-site-template-builder script sources will get automatically applied to the linked command.

Release and publish

Run the "Release and publish" GitHub workflow and provide the semantic version you're about to release.

Contributing

Contributions are welcomed! Read the Contributing Guide for more information.

Licensing

This project is licensed under the MIT License. See LICENSE for more information.

aem-site-template-builder's People

Contributors

bartoszglow avatar basecode avatar bpauli avatar dependabot[bot] avatar vladbailescu avatar vtsaplin avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.