GithubHelp home page GithubHelp logo

link2cory / cookiecutter-node-monorepo-collection Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 23 KB

an opinionated collection of cookiecutters to facilitate the bootstrapping and management of node monorepos and their subpackages

License: MIT License

Python 21.06% Shell 1.46% JavaScript 20.88% TypeScript 56.61%

cookiecutter-node-monorepo-collection's Introduction

cookiecutter-node-monorepo-collection

A collection of cookiecutters designed to automate the creation of node monorepos and their components (packages)

Features

Someday features

  • improve usability (it works on my machine...)
  • add more configuration options
    • make typescript optional
    • add options for testing frameworks
    • add options for remote repository
  • add more specific types of component
    • graphql-api component
    • domain component
    • application component
    • database gateway component
    • frontend component
    • anything else that requires scaffolding or highly generic abstractions

Installation and setup

It works on my machine and to be honest I need to circle back and figure out exactly what needs to happen to make this more distributable (Python is not my strongest language)

Why Components instead of Packages?

Lerna's documentation states that it is best practice to locate all packages under a subdirectory named 'packages' but there is no real requirement to do so.

I chose to use the name components in order to avoid shell completion conflicts with package.json which must be named as such.

Also, I was originally inspired to create this project after reading Uncle Bob's Clean Architecture which refers to "smallest unit of deployment" as a "component" so I want to stick with that terminology if only to help solidify the idea that clean architecture is not bound to the frameworks and tools that we use to implement its design.

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.