Some notes on my personal workflow and helper tools for creating a new GitHub repository — with an emphasis on committing early and often, so ideas don't end up stranded as half-finished projects sitting on my computer where no one can benefit from them.
This workflow streamlines creating new repositories with consistent setup across tools like gh
(GitHub CLI), npm
, and my dotfiles
. It covers:
- Setting up new GitHub repos quickly using aliases and helpers
- Auto-configuring Node package metadata with
.npmrc
- Maintaining a consistent author/license/version pattern
- Using reusable prompts or agent templates for automation
As someone with a neurodivergent brain and more ideas than I'll ever have time to finish, I needed a smoother way to turn sparks of inspiration into something tangible.
This workflow helps reduce that friction; making it quick, consistent, and satisfying to start something new, commit early, and share progress while it's still alive.
In practice, this workflow helps me to:
- Streamline and standardize repository setup: automate naming, initialization, first commits, and configuration to ensure consistency across projects.
- Commit and share early: capture progress before momentum fades, and publish work (even small or experimental) so others can benefit and ideas don't stagnate.
And is guided by these four underlying principles:
- Efficiency: reducing setup friction so starting something new feels fast and lightweight.
- Consistency: keeping structure, naming, and configuration uniform across projects.
- Momentum: committing early to sustain energy and capture ideas before they fade.
- Openness: sharing progress publicly so even unfinished work can inspire or help others.
My dotfiles form the backbone of my development environment, containing configuration and helper scripts for tools like GitHub CLI, npm, and more:
Locally, they typically live in ~/.dotfiles
, though $ZSH
should point to the same directory, and provides a more flexible, environment-aware way to reference it.
Note: The default branch on my dotfiles repo is devalias
, so when linking to specific files or lines, use URLs in this format:
https://github.com/0xdevalias/dotfiles/blob/devalias/PATH/TO/FILE
For example:
To make project initialization faster and more consistent, I've customized the default behavior of npm init
via my .npmrc
configuration. This ensures that every new package starts with the same author, license, and version information — no manual edits required.
Configured in ~/.dotfiles/node/npmrc.symlink
(which gets symlinked into ~/.npmrc
):
At the time of writing, the relevant part of this config looks like:
# npmrc: The npm config file
# https://docs.npmjs.com/cli/v11/configuring-npm/npmrc
# npm init: Create a package.json file
# https://docs.npmjs.com/cli/v11/commands/npm-init
# https://docs.npmjs.com/cli/v11/commands/npm-init#configuration
init-author-name="Glenn 'devalias' Grant"
init-author-email=""
init-author-url="https://devalias.net/"
init-license="MIT"
init-version="0.0.1"
#init-module="/Users/devalias/.npm-init.js" # TODO: Potentially customise this later... https://github.com/npm/init-package-json/blob/main/lib/default-input.js
For reference, see the relevant npm
documentation:
.npmrc
: https://docs.npmjs.com/cli/v11/configuring-npm/npmrcnpm init
: https://docs.npmjs.com/cli/v11/commands/npm-init
I use a set of gh
aliases that help automate repository initialization and setup — handling creation, structure, and repo public/private visibility defaults.
The node
-related aliases (init-npm
, init-repo-node
, etc.) build on npm init
and my .npmrc
configuration to apply consistent defaults when bootstrapping new packages.
My gh
aliases are defined in ~/.dotfiles/config.symlink/gh/config.yml
:
⇒ gh alias list | grep '^[^[:space:]].*:' | cut -d: -f1 | grep '^init-'
init-npm
init-repo
init-repo-node
init-repo-node-private
init-repo-node-public
A space for small, related notes, commands, and helper patterns as the workflow evolves.
Note: Nothing here yet — the section will grow naturally over time.
Explore defining structured AGENTS.md
instructions to document and coordinate AI-assisted workflows — outlining how different tools, prompts, or automation steps interact within the repo:
- https://agents.md
- https://github.com/openai/codex/blob/main/docs/getting-started.md#memory-with-agentsmd
Explore adding reusable Codex or GPT-style prompts to support automated repo initialization and related workflows:
For example, create /init-repo
or /new-project
prompts in ~/.codex/prompts/
to standardize the early stages of project creation.