Convert character encodings in pure javascript.
iconv-lite is a pure JavaScript library for converting character encodings, supporting both Node.js and browser environments. It provides encode and decode functionality for a wide range of character sets, including Unicode variants (UTF-8, UTF-16, UTF-32, UTF-7), single-byte encodings (Windows 125x, ISO-8859, IBM/DOS codepages), and multibyte encodings (CP932, CP936, GB2312, GBK, Shift_JIS, EUC-JP, and others). The library requires no native code compilation, offers an intuitive API with streaming support, and is used in popular projects like Express.js, Nodemailer, and Yeoman. It uses a backend architecture with Uint8Array and Uint16Array as internal representations to efficiently handle different runtime environments while maintaining performance that exceeds node-iconv.