This repository provides a base template for creating responsive and modular email designs, with a focus on compatibility with Marketo. It includes configurations, workflows, and scripts to streamline email development and ensure quality.
- Marketo Compatibility: A script is included to clean the email template and make it ready for use in Marketo by removing unsupported
<script>tags. - Automated Workflows: GitHub Actions are configured to handle tasks like dependency reviews, linting, and stale issue management.
- Bun Integration: The repository uses Bun for running scripts efficiently.
To use this repository, you need to install Bun. Follow the installation instructions on their website.
To prepare the email template for Marketo:
- Run the following command:
bun run clean
- This will process the
index.htmlfile, remove all<script>tags, and generate amarketo.index.htmlfile that is ready for use in Marketo. - Upload the
marketo.index.htmlfile to Marketo or your email platform.
bun run clean: Executes the script defined inconfig/build.jsto clean theindex.htmlfile and create a Marketo-compatible version.
The repository includes several GitHub Actions workflows to automate tasks:
-
Labeler Workflow (
.github/workflows/label.yml):- Automatically applies labels to pull requests based on the files modified.
- Uses the
actions/labeleraction.
-
Dependency Review Workflow (
.github/workflows/dependency-review.yml):- Scans dependency manifest files in pull requests for known vulnerabilities.
- Uses the
actions/dependency-review-action.
-
Stale Issues Workflow (
.github/workflows/stale.yml):- Marks issues and pull requests as stale after a period of inactivity.
- Uses the
actions/staleaction.
-
Super Linter Workflow (
.github/workflows/super-linter.yml):- Lints code in pull requests to ensure quality and consistency.
- Uses the
super-linteraction. - Automatically commits and pushes fixes for linting issues when applicable.
index.html: The main email template file.marketo.index.html: The Marketo-ready version of the email template, generated by the cleaning script.config/build.js: Script to clean the template and remove<script>tags..github/workflows/: Contains GitHub Actions workflows for automation.
- Clone the repository:
git clone https://github.com/your-repo/base-template-email.git cd base-template-email - Install Bun if not already installed.
- Run the cleaning script:
bun run clean