Skip to content

A simple TypeScript CLI tool that converts YAAK files to Postman format. Easily transform your YAAK workspaces, collections and environment variables into Postman v2.1.0 format while preserving folder structures, request details, and environment variables. Perfect for teams migrating from YAAK to Postman or Insomnia.

License

Notifications You must be signed in to change notification settings

BiteCraft/yaak2postman

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

 __   __          _    ____  ____           _                         
 \ \ / /_ _  __ _| | _|___ \|  _ \ ___  ___| |_ _ __ ___   __ _ _ __  
  \ V / _` |/ _` | |/ / __) | |_) / _ \/ __| __| '_ ` _ \ / _` | '_ \ 
   | | (_| | (_| |   < / __/|  __/ (_) \__ \ |_| | | | | | (_| | | | |
   |_|\__,_|\__,_|_|\_\_____|_|   \___/|___/\__|_| |_| |_|\__,_|_| |_|

YAAK to Postman Converter πŸ”„

A simple CLI tool to convert YAAK exported files into Postman collections and environments πŸ› οΈ

License: MIT Node.js Version TypeScript

Table of Contents

β€’ Overview
β€’ Features
β€’ Installation
β€’ Usage
β€’ Examples β€’ Development
β€’ API Reference
β€’ Contributing
β€’ License

Overview 🎯

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.

Features ✨

  • πŸ”„ 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

Installation πŸ“¦

# 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/yaak2postman

Usage πŸš€

The 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.json

Examples πŸ“

Converting a YAAK File

yaak2postman ./my-api.json

Converting Only Collection

yaak2postman collection ./my-api.json

Converting Only Environment

yaak2postman env ./my-api.json

Development πŸ› οΈ

Prerequisites

  • Node.js >= 14.0.0
  • Bun (latest version)
  • TypeScript knowledge

Setting Up Development Environment

  1. Clone the repository:
git clone https://github.com/yourusername/yaak2postman.git
cd yaak2postman
  1. Install dependencies:
bun install
  1. Start development:
bun run start

Building the Project

bun run build

API Reference πŸ“š

YAAK Structure

The tool expects a YAAK file with the following structure:

interface YaakData {
    resources: {
        workspaces: YaakWorkspace[];
        environments: YaakEnvironment[];
        folders: YaakFolder[];
        httpRequests: YaakRequest[];
    };
}

Output Format

The tool generates Postman Collection v2.1.0 format files:

interface PostmanCollection {
    info: {
        name: string;
        description: string;
        schema: string;
    };
    item: (PostmanFolder | PostmanRequest)[];
    variable: PostmanVariable[];
}

Contributing 🀝

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.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License πŸ“„

This project is licensed under the ISC License - see the LICENSE file for details.


Made with ❀️ using TypeScript and Bun

About

A simple TypeScript CLI tool that converts YAAK files to Postman format. Easily transform your YAAK workspaces, collections and environment variables into Postman v2.1.0 format while preserving folder structures, request details, and environment variables. Perfect for teams migrating from YAAK to Postman or Insomnia.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

  •  

Packages

No packages published