Description
Update (April 2025): This work has mostly completed. See #2145 for tracking of making automated updates fully inferable: i.e. not needing a create-typescript-app.config.js
config file. milestone/8 Transition Mode Automation tracks issues in that area.
Now that create-typescript-app@v2 is stable (#1831 -> #1955) and adhering to the long-term vision of using Bingo (#1181), I'd like to roll out the v2 to other repositories I'm a maintainer on.
But there's a catch: I'd like this rollout to include getting each repository auto-updating to the latest version of the template. #1965 tracks adding a Block to enable them to do that. 🤖 ✅
Automatic refers to whether the repositories are able to fully infer their current options without a create-typescript-app.config.js
. Running the following command should be enough to initialize most repositories:
npx create-typescript-app --add-cta-transitions
Repos with refinements that aren't yet inferable can use an explicit config file
// create-typescript-app.config.js
// 👋 Hi! This is an optional config file for create-typescript-app (CTA).
// Repos created with CTA or its underlying framework Bingo don't use one by default.
// A CTA config file allows automatic updates to the repo that preserve customizations.
// For more information, see Bingo's docs:
// https://www.create.bingo/execution#transition-mode
// Eventually these values should be inferable, making this config file unnecessary:
// https://github.com/JoshuaKGoldberg/bingo/issues/128
import { createConfig } from "create-typescript-app";
export default createConfig({
refinements: {
// ...
},
});
pnpm add create-typescript-app -D;
npx create-typescript-app
Status key:
- ✅: Done
- 👀: In Review
- ⏳: In Progress
- 🛠️: Blocked on CTA/Bingo issue
- ⚪️: To do
- 🛑: Blocked on external issue