New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

file-swap

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

file-swap

A versatile file conversion tool

latest
Source
npmnpm
Version
1.0.2
Version published
Weekly downloads
4
-20%
Maintainers
1
Weekly downloads
 
Created
Source

file-swap

file-swap is a command-line file conversion tool. It supports conversion between various formats for images, texts and documents.


Prerequisites

Ensure you have Node.js and npm installed on your machine before using this tool.


Installation & Usage

To use file-swap:


  • Install the package globally:

npm install file-swap

  • Convert files using the following syntax:

npx file-swap <filepath> <target-format> [options]

Example commands:

# Convert image to PNG
npx file-swap image.jpg png

# Convert to ICO with size option
npx file-swap logo.png ico -s  # small (16x16)

npx file-swap logo.png ico -m  # medium (32x32)

npx file-swap logo.png ico -l  # large (48x48)

# Convert and delete the original
npx file-swap image.jpg png -d

You can also view a help section by running the following command:

npx file-swap --help

Supported Formats

Image Formats

  • JPEG/JPG

  • PNG

  • SVG

  • WEBP

  • ICO (with size options: small, medium, large)


Text Formats

  • TXT (Plain Text)

  • MD (Markdown)

  • JSON

  • YAML

  • CSV


Text Format Conversion Details

CSV Conversion Behavior

  • TXT/MD to CSV: Each line becomes a row with a "content" column

  • JSON/YAML to CSV: Nested objects are flattened with underscore-separated keys

  • Arrays in CSV: Handled as numbered columns (e.g., array_0, array_1)

  • Special Characters: Automatically escaped in CSV output


Other Conversions

  • JSON/YAML: Preserves data structure and formatting

  • TXT/MD: Maintains text content and line breaks

  • All formats: Handles null values and empty fields gracefully


Development & Testing

To modify or test this package locally:

  • Clone the repository.

  • Run npm link in the project directory to make it available globally on your system.

  • Use the command file-swap to run locally.


License

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


Contributing

Contributions are welcome! Here's how you can help:

  • Fork the repository

  • Create a feature branch

  • Make your changes

  • Run the tests

  • Submit a pull request


I especially welcome contributions for:

  • Additional format support

  • Improved conversion algorithms


Notes

  • Large files may require additional processing time

  • Some conversions may result in loss of formatting (e.g., complex formatting in MD to TXT)

  • ICO conversion requires specifying a size option

  • CSV conversion works best with structured data

Keywords

file

FAQs

Package last updated on 23 Mar 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts