https://github.com/initx-collective/initx
A more convenient scripting engine
https://github.com/initx-collective/initx
initx
Last synced: 29 days ago
JSON representation
A more convenient scripting engine
- Host: GitHub
- URL: https://github.com/initx-collective/initx
- Owner: initx-collective
- License: mit
- Created: 2024-10-17T07:03:54.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2026-04-14T11:12:49.000Z (about 2 months ago)
- Last Synced: 2026-05-02T21:06:24.752Z (about 1 month ago)
- Topics: initx
- Language: TypeScript
- Homepage:
- Size: 901 KB
- Stars: 10
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
initx ⚙️
initx A more convenient scripting engine
npx initx <something>
## What is it?
`initx` can quickly execute some scripts through plug-ins to simplify complex functions
like ...
Set the git username and email address via @initx-plugin/git plugin
```bash
# before
git config --global user.name "foo"
git config --global user.email "foo@example.com"
# after
initx user foo foo@example.com
```
Copy SSH or GPG public key via @initx-plugin/cp plugin
```bash
# before
gpg -k # get the key id
gpg --armor --export # export the key
# after
initx cp gpg
# before
# open ~/.ssh/id_rsa.pub or C:/Users//.ssh/id_rsa.pub and copy it
# after
initx cp ssh
```
Manage code projects using @initx-plugin/pm
```bash
# before
# open github, copy clone url
# use terminal cd to ~/projects, git clone
# maybe more steps
# after
initx pm add ~/projects # add projects directory, only need to do it once
initx create user/repo
# or initx pm create user/repo project-name
```
## Usage
Install it globally
```bash
npm i -g initx
```
Then you can ignore `npx`. You can also use `ix` as a short command alias
```bash
initx [options]
# or
ix [options]
```
Use various functions by installing plugins
```bash
initx plugin add
```
This will install the `@initx-plugin/git` plugin
```bash
initx plugin add git
```
## Plugins
- [@initx-plugin/git](https://github.com/initx-collective/initx-plugin-git)
- [@initx-plugin/gpg](https://github.com/initx-collective/initx-plugin-gpg)
- [@initx-plugin/cp](https://github.com/initx-collective/initx-plugin-cp)
- [@initx-plugin/pm](https://github.com/initx-collective/initx-plugin-pm)
Use [initx-plugin-starter](https://github.com/initx-collective/initx-plugin-starter) to get started
## Acknowledgement
- [cac](https://github.com/cacjs/cac)
- [ora](https://github.com/sindresorhus/ora)
- [defu](https://github.com/unjs/defu)
- [pathe](https://github.com/unjs/pathe)
- [tinyexec](https://github.com/tinylibs/tinyexec)
- [importx](https://github.com/antfu-collective/importx)
- [inquirer](https://github.com/SBoudrias/Inquirer.js)
- [which](https://github.com/npm/node-which)