Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Feb 6, 2026. It is now read-only.

A powerful, cross-platform CLI for modern development workflows. Create projects, manage dependencies, analyze codebases, and streamline your development process with intelligent automation.

License

Notifications You must be signed in to change notification settings

0xshariq/package-installer-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

691 Commits

Repository files navigation

This repo is now archive , please see the devforge repo

package-installer-cli — Monorepo

npm version PyPI version Gem Version Crates.io Docker Hub Docker Image Size

A monorepo that contains the official cross-platform interactive CLI for scaffolding modern application templates and several language-specific wrapper projects and bundles.

This repository groups multiple packages and artifacts used to build, bundle and distribute the package-installer CLI (the pi / package-installer binary). Converting to a monorepo keeps related projects together, simplifies releases, and makes it easier to maintain shared templates and build scripts.

Monorepo layout

Top-level folders you'll commonly use:

  • core-cli/ — The main TypeScript CLI implementation (core). Contains package.json, src/, build scripts and the pi CLI. Versioned independently (see core-cli/package.json).
  • wrappers/python/, wrappers/ruby/, wrappers/rust/, wrappers/go/ — Language-specific wrappers that adapt the CLI or provide language integrations where applicable.
  • wrappers/homebrew-tap/ — Homebrew tap for macOS installations.
  • bundle-executables/, bundle-standalone/, binary/ — Bundled distributions and prebuilt binaries for different platforms (In core-cli folder).
  • templates/ — Project templates used by the CLI to scaffold new projects (In core-cli folder).
  • docs/ and features/ — Documentation and feature definitions for templates and integrations (In core-cli folder).

Files of interest:

  • Root README.md (this file)
  • core-cli/CONTRIBUTING.md — how to contribute and release
  • LICENSE — project license (MIT)

Quick start (local development)

Prerequisites: Node.js (>=18 recommended), pnpm (preferred), or npm/yarn.

  1. Clone the repository:
git clone https://github.com/0xshariq/package-installer-cli.git
cd package-installer-cli
  1. Work with the TypeScript core (recommended):
cd core-cli
# install dependencies (pnpm preferred since lockfile exists)
pnpm install
# build the CLI
pnpm run build
# run locally
pnpm start
# or, using npm
npm install
npm run build
node ./dist/index.js
  1. Work with other packages

Each wrapper or subpackage is self-contained. To develop a wrapper or build a bundled executable, cd into that folder and follow its README or run its scripts. For example, to work with the Rust wrapper:

cd wrappers/rust
# follow the folder's README / use cargo build there

READMEs (paths)

Common tasks

  • Build core CLI: cd core-cli && pnpm run build
  • Run CLI locally: cd core-cli && pnpm start (or node ./dist/index.js)
  • Create distribution bundles: cd tcore-cli && pnpm run build && pnpm run binary && pnpm run bundle (you can use any package manager other than pnpm)
  • Clean builds (dist folder): cd core-cli && pnpm run clean

Contribution & development workflow

  • Follow core-cli/CONTRIBUTING.md for contribution guidelines, commit messages, and release process.
  • When modifying templates, add tests or an example scaffold run to verify the generated project.
  • Keep distribution bundles out of commits; they are generated by build scripts.

Important contribution note

At the moment, please focus contributions on the TypeScript core located at core-cli/ only. The language-specific wrappers (Python, Rust, Ruby, Go, etc.) are currently placeholders or partial ports. I will be rewriting each wrapper's full implementation from scratch as I learn those languages properly. Once the wrappers have complete, native implementations, they will be open for external contributions.

If you'd like to help earlier, please open issues, report bugs, or suggest documentation/template improvements. To avoid duplicate work, please avoid submitting PRs that change wrapper logic until the new implementations are available.

Releases & packaging

Release steps typically involve:

  1. Bumping the version in the package (see core-cli/package.json).
  2. Building the core and creating distribution bundles (pnpm run build, then pnpm run binary, and lastly pnpm run bundle).
  3. Publishing packages or uploading release assets (binaries, installers, Homebrew tap updates).

Automations (CI) may exist in .github/workflows/ inside package folders — check each package for its own CI configuration.

License

This repository is licensed under the MIT License. See the LICENSE file for details.

Questions / Contact

Open issues on GitHub: https://github.com/0xshariq/package-installer-cli/issues

Official packages

About

A powerful, cross-platform CLI for modern development workflows. Create projects, manage dependencies, analyze codebases, and streamline your development process with intelligent automation.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /