Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

cookie-composer

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cookie-composer

Create new projects from a composition of several templates

  • 0.13.1
  • PyPI
  • Socket score

Maintainers
1

PyPI Status Python Version License codecov

Documentation: https://callowayproject.github.io/cookie-composer/

Cookie composer builds on the cookie cutter project to generate projects based on one or more cookiecutter templates.

Goals

  • Create new projects from a composition of several templates
  • Add new capabilities to an existing repository by applying a template
  • Apply template updates to the generated project

Introduction

Cookie Cutter treats templates like sandwiches. There are templates for hamburgers, clubs, and any other kind of sandwich you can dream up. You might have options and defaults on a template, like Hold the mustard?[False]: or Mustard type [dijon]:, but those are decided by the template author.

Templates are treated like finished sandwiches

If you look closely at the sandwiches (templates), there is usually many things in common. What if we treated the templates as compositions of other templates:

Sandwiches as a composition of layers

You now can manage several smaller and specialized templates that provide functionality. Each template's options will be specific to what that template needs.

Templates broken out as layers on a sandwich

Cookie Composer uses a composition file to describe the layers required, and even override a template's default answers.

template: bottom-bun
context:
  toasting_level: light
  buttered: False
---
template: burger
---
template: cheese
context:
  kind: swiss
---
template: bacon
context:
  cooking_level: crispy
---
template: ketchup
---
template: mustard
context:
  type: yellow
---
template: top-bun
context:
  toasting_level: light
  buttered: False

We have created a repo of highly composable templates as examples or reference. However, Cookie Composer is designed to handle any Cookie Cutter template.

Purpose

  • Separate out parts to a repo into composable templates
    • Boilerplate
      • README, CONTRIBUTING, docs, Makefile, license, tooling configurations
    • Project-specific
      • Django
      • Flask
      • Library
      • Data science
    • CI/CD specific
      • Helm chart
      • GitHub Actions vs. Jenkins vs. ...
    • Documentation specific
      • Sphinx
      • MkDocs
  • Each composable template is managed and updated individually
  • A project can update itself based on chages in layers

Please contribute

  • Documentation critiques
  • Documentation suggestions
  • Feature suggestions
  • Feature improvements
  • Edge case identification
  • Code improvements

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc