3.0.0 • Published 1 year ago

svaffold v3.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

Svaffold

Scaffold a monorepo to collect Svelte and TypeScript projects.

⚠️ Warning ⚠️ This is a highly opinionated tool, but PRs are welcome to make it more generalised. Refer to Contributing for more information.

The following assumptions are made:

  • The package manager is pnpm
  • All projects are using TypeScript
  • All web projects are using SvelteKit and TailwindCSS
  • If no design system was selected, the forms and typography Tailwind plugins will be installed

What can be generated

A monorepo that uses Turborepo. It can generate the following empty projects:

SvelteKit:

  • Landing page
  • Blog
  • Custom app
  • Component library

Other:

  • CMS
  • CLI
  • Assets (shared static files)
  • Config (shared configuration files)

Options

TailwindCSS will be installed, but you can extend it with the following design systems:

  • DaisyUI
  • SkeletonUI
  • None

You can select the following deployment methods:

  • Auto
  • Cloudflare

    (A GitHub Workflow will be created to redeploy when the package has changes)

  • Vercel

  • Docker (Node.js)

    (A Dockerfile will be generated)

In case you select "Component library", you can choose between the following story builders:

  • Storybook
  • Histoire
  • None

In case you select "CMS", you can select from the following:

  • Payload
  • Sanity
  • Storyblok

In case you select "Assets", you can select the following bucket providers:

(A GitHub Workflow will be created to sync the assets with your bucket)

  • GCP Cloud Storage
  • AWS S3
  • Cloudflare R2
  • None

Requirements

  • node.js >= 16
  • pnpm >= 7
  • git

Usage

npx svaffold@latest root-dir

Arguments:

NameDescription
directoryroot of the monorepo

Options:

OptionDescription
--forceoverwrite existing files (default: false)
--verboseoutput the messages of subprocesses (default: false)
-h, --helpdisplay help for command
-V, --versionoutput the version number

Contributing

All contributions are welcome, especially ones that make the tool more robust and generalised. To get started:

  1. git clone https://github.com/adevien-solutions/svaffold.git
  2. cd svaffold
  3. npm i

Test locally

  1. npm run update-local
  2. svaffold <dir>
3.0.0

1 year ago

2.1.1

2 years ago

2.1.0

2 years ago

2.0.6

2 years ago

2.0.5

2 years ago

2.0.4

2 years ago

2.0.3

2 years ago

2.0.2

2 years ago

2.0.1

2 years ago

2.0.0

2 years ago