__ __ _ ____ ____ _
\ \ / /_ _ __ _| | _|___ \| _ \ ___ ___| |_ _ __ ___ __ _ _ __
\ V / _` |/ _` | |/ / __) | |_) / _ \/ __| __| '_ ` _ \ / _` | '_ \
| | (_| | (_| | < / __/| __/ (_) \__ \ |_| | | | | | (_| | | | |
|_|\__,_|\__,_|_|\_\_____|_| \___/|___/\__|_| |_| |_|\__,_|_| |_|
A simple CLI tool to convert YAAK exported files into Postman collections and environments π οΈ
β’ Overview
β’ Features
β’ Installation
β’ Usage
β’ Examples
β’ Development
β’ API Reference
β’ Contributing
β’ License
YAAK to Postman Converter is a command-line interface tool that transforms YAAK format files into Postman collections and environments. It maintains folder structures, request details, and environment variables while providing a seamless conversion experience.
- π Convert YAAK files to Postman Collection v2.1.0
- π Environment variables support
- π Preserves folder hierarchy
- π Handles both relative and absolute paths
- π Fast and efficient processing
- πΎ Automatic file saving
- π― Type-safe implementation
# Using npm
npm install -g @bitecraft/yaak2postman
# Using Bun
bun install -g @bitecraft/yaak2postman
# Using pnpm
pnpm install -g @bitecraft/yaak2postman
# Using yarn
yarn global add @bitecraft/yaak2postmanThe CLI supports three main usage patterns:
# Convert both collection and environments
yaak2postman path/to/yaak-file.json
# Convert only collection
yaak2postman collection path/to/yaak-file.json
# Convert only environments
yaak2postman env path/to/yaak-file.jsonyaak2postman ./my-api.jsonyaak2postman collection ./my-api.jsonyaak2postman env ./my-api.json- Node.js >= 14.0.0
- Bun (latest version)
- TypeScript knowledge
- Clone the repository:
git clone https://github.com/yourusername/yaak2postman.git
cd yaak2postman- Install dependencies:
bun install- Start development:
bun run startbun run buildThe tool expects a YAAK file with the following structure:
interface YaakData {
resources: {
workspaces: YaakWorkspace[];
environments: YaakEnvironment[];
folders: YaakFolder[];
httpRequests: YaakRequest[];
};
}The tool generates Postman Collection v2.1.0 format files:
interface PostmanCollection {
info: {
name: string;
description: string;
schema: string;
};
item: (PostmanFolder | PostmanRequest)[];
variable: PostmanVariable[];
}Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the ISC License - see the LICENSE file for details.
Made with β€οΈ using TypeScript and Bun