xk6 is a command-line tool and Go library for building custom k6 binaries with extensions, enabling developers to create, test, and distribute k6 extensions. The tool provides scaffolding for new extensions, a build system that integrates with k6's module system and automatically resolves the correct k6 major version, a linter for extension compliance (including security, licensing, and quality checks), a test runner for k6 scripts, and a dependency synchronizer to keep extension dependencies aligned with k6. It also ships as a Docker image and a Dev Container feature. The codebase is a well-structured Go application using cobra for CLI, with clean separation of concerns across internal packages for linting, scaffolding, sync, and testing. It demonstrates high craftsmanship with proper error handling, logging, and test coverage.
This repository is a Node.js CLI tool that converts Postman collections into executable k6 JavaScript scripts for load testing. It reads Postman collection JSON (v1/v2) along with optional environment, globals, and data files, processes authentication methods, variables, pre-request/test scripts, and outputs a k6-compatible script. The architecture features distinct layers: input conversion (lib/convert), collection traversal and processing (lib/generate, lib/common), authentication strategies (lib/auth), and script rendering (lib/render). A shim layer (lib/shim) provides Postman API compatibility in the k6 environment using symbol-based state management and extension patterns. Despite the code demonstrating solid engineering practices, the project is explicitly unmaintained per its README, with development moved to a fork, and relies on outdated Node.js 11 in its Dockerfile.