@frycz/atm
v1.1.0
Published
Set up private GitHub repos and push commits quickly
Downloads
1,076
Maintainers
Readme
atm
In the era of AI tools, drafting new ideas is easier than ever. atm helps you set up private GitHub repos for your ideas and save iterations quickly.
With a single atm init command, the tool prepares a private repository. Develop your project by adding changes and quickly pushing them with atm s. That's it.
No need to visit github.com to create a private repo and set it up locally. No need for "add" -> "commit" -> "push" repetitive flow.
Installation
# Global installation (recommended)
bun install -g @frycz/atm
# or
npm install -g @frycz/atmAlternatively, you can use bunx or npx
bunx @frycz/atm
# or
npx @frycz/atm
# later remember
bunx @frycz/atm [command]
# or
npx @frycz/atm [command]Prerequisites
- Node.js >= 14
- GitHub CLI (
gh) installed and authenticated
Quick Start
# Create a new private GitHub repo
atm init
# go to the repo directory (if not already there)
cd [repo-directory]
# Add or modify files
# Then commit all and push to origin with one command:
atm s
# Or with a custom commit message
atm s add new featureCommands
atm init
Initialize a new private GitHub repository. This command will:
- Prompt for your GitHub username (auto-detected from
gh) - Prompt for a repository name
- Prompt for a local directory (defaults to
./<repo-name>) - Create a private repository on GitHub
- Initialize a local git repository with a README
- Push the initial commit
$ atm init
GitHub username [yourname]:
Repository name: my-project
Directory [./my-project]:
Creating private repo yourname/my-project...
Initializing git...
Pushing to GitHub...
Done! Repository created at /path/to/my-projectUsing atm init in an existing repository
If you run atm init inside an existing git repository, it will detect this and offer to create only the atm.json configuration file. This is useful when you want to start using atm with a project that already has a GitHub remote set up.
$ cd existing-project
$ atm init
Git repository detected in: /path/to/existing-project
Remote URL: [email protected]:yourname/existing-project.git
Host: github
Visibility: private
This will only create an atm.json file. No new repository will be created.
Create atm.json in this directory? [y/N]: y
atm.json created successfully.
You can now use 'atm s' to save and push changes.atm s
Quick save - stages all changes, commits with the default message from config, and pushes to origin.
atm satm s <message>
Stages all changes, commits with your custom message, and pushes to origin.
atm s fix login bug
atm s add user authenticationatm -h / atm --help
Print help.
atm -hatm -v / atm --version
Print version.
atm -vConfiguration
After running atm init, a atm.json file is created in your repository containing:
{
"defaultCommitMessage": "save"
}You can change the default commit message used by atm s by editing this file.
Troubleshooting
gh CLI is not installed
Install the GitHub CLI from https://cli.github.com/
macOS:
brew install ghWindows:
winget install GitHub.cliLinux:
# Debian/Ubuntu
sudo apt install gh
# Fedora
sudo dnf install ghgh CLI is not authenticated
Run the following command and follow the prompts:
gh auth loginatm.json not found
You need to initialize the repository first:
atm initFAQ
Q: What does "atm" stand for? A: It's "all to main".
Q: Can I tell my friend about atm?
A: Yes, go ahead!
License
MIT
