ssube efa5fb7d19 | ||
---|---|---|
config | ||
docs/api | ||
scripts | ||
src | ||
test | ||
.codeclimate.yml | ||
.gitignore | ||
.gitlab-ci.yml | ||
.npmignore | ||
.npmrc | ||
LICENSE.md | ||
Makefile | ||
README.md | ||
package.json | ||
renovate.json | ||
tsconfig.json | ||
yarn.lock |
README.md
Rollup Template
This project contains the base configuration and build scripts for most of my Typescript/Rollup projects.
Contents
Features
- bundled with rollup
- tested with mocha
- type checking from typescript
- style checking from tslint (with plugins)
- code coverage with source maps from nyc
- pipeline and published tags with gitlab CI
- identical local and CI builds with make
- test harness with source map support and helpers for async leak tracking
Intentionally Omitted Features
- everything frontend: React, CSS, etc
- heavy backend libraries: ORMs, etc
Usage
Setup
To create a new repository from this template:
- create your new repo on Github & Gitlab (your server or Gitlab.com)
git clone git@github.com:ssube/rollup-template.git your-project
cd your-project
git remote add github git@github.com:yourname/your-project.git
git remote add gitlab git@gitlab.com:yourname/your-project.git
- set up repository mirroring in Gitlab
- set up some maintenance bots
make git-push
- install your dependencies
- write some code
Daily
Once your project is set up:
make
to bundle and test- commit
make git-push
The git-push
target pushed to Github first, to avoid conflicts with changes from bots and other contributors.
External Services
This template works with or expects a few external services, namely a Gitlab CI server (self-hosted or using Gitlab.com).
Maintenance Bots
Good tests and clever bots can eliminate the most painful parts of project maintenance. This repository is configured to work with:
None of these are required, but Renovate and Snyk can be very helpful when dependencies release a security patch.
External Secrets
This template expects a few secrets to exist in the environment, including tokens for the external services.
TODO: doc secrets