Skip to content

Quick Start ​

Get Versu running in your project in 5 minutes.

Prerequisites ​

Before starting, make sure you have:

  • ✅ Node.js 24+ installed
  • ✅ A Git repository initialized
  • ✅ Your project follows Conventional Commits

Step 1: Install Versu ​

In case you want to use Versu as a local dev dependency:

bash
npm install -D @versu/cli

Or install it globally to use it across multiple projects or system-wide:

bash
npm install -g @versu/cli

Step 2: Install Plugins ​

Versu uses plugins to detect your project type and manage versioning. Install the appropriate plugins for your project. For example, if you're using Gradle:

bash
npm install -g @versu/plugin-gradle

Step 3: Create Configuration ​

Versu can work with zero configuration by automatically searching for installed plugins.

However, for performance and reliability reasons, as well as to enable advanced features, it's recommended to create a versu.config.js file in your project with at least the plugins array to explicitly specify which plugins to use.

javascript
export default {
  plugins: [
    // Add plugins here (e.g., npm, gradle, etc.)
    "@versu/plugin-gradle",
  ],
};

Step 4: Run Versu ​

If you installed Versu globally you can run:

bash
versu run

You can also run it using npx:

bash
npx @versu/cli run

INFO

If you have a local or global installation in your system, npx will search for the local version first and fallback to the global one if not found.

Versu will:

  1. Analyze your commit history
  2. Determine version bumps
  3. Update version files
  4. Generate changelogs
  5. Display results

Step 5: Results ​

Versu will create or update:

  • Version related files based on your plugins

    (e.g. package.json, gradle.properties, etc.)

  • CHANGELOG.md files per module and a root one if you have multiple modules

  • Commit messages and tags for your new versions

TIP

You can execute with --dry-run flag to see what changes would be made without actually modifying any files. This is a great way to preview the results before applying them.

Common Commands ​

bash
# Check what will be versioned
versu run --dry-run

# Generate specific pre-release
versu run --prerelease-mode --prerelease-id alpha

Next Steps ​

Troubleshooting ​

No versions bumped? ​

Check that your commits follow Conventional Commits. Example:

text
feat: add new feature    # ✓ Triggers minor bump
fix: resolve bug         # ✓ Triggers patch bump
docs: update README      # ✓ Triggers patch bump (default - configurable)

Also make sure there are new commits since the last release tag - if nothing changed, there is nothing to bump.

Dependencies not updated? ​

Plugins are responsible for identifying project structure and its dependencies. If you have a multi-module project, make sure your plugins are correctly configured to recognize the relationships between modules.

You can enable debug logging to see how Versu is analyzing your project:

bash
DEBUG=versu* versu run #...

Still stuck? ​

Released under the MIT License.