{"id":26410740,"url":"https://github.com/chadnpc/clihelper.xconvert","last_synced_at":"2026-02-22T05:34:31.218Z","repository":{"id":259692869,"uuid":"868102406","full_name":"chadnpc/cliHelper.xconvert","owner":"chadnpc","description":"all-in-one module to convert files and object types","archived":false,"fork":false,"pushed_at":"2025-03-13T16:41:55.000Z","size":2428,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-13T17:49:43.940Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://powershellgallery.com/packages/cliHelper.xconvert/","language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chadnpc.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-05T13:37:54.000Z","updated_at":"2025-03-13T16:41:59.000Z","dependencies_parsed_at":"2024-10-27T11:57:36.402Z","dependency_job_id":"6161b11e-a102-4a63-981e-f1df93caf147","html_url":"https://github.com/chadnpc/cliHelper.xconvert","commit_stats":null,"previous_names":["alainqtec/clihelper.xconvert","chadnpc/clihelper.xconvert"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chadnpc%2FcliHelper.xconvert","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chadnpc%2FcliHelper.xconvert/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chadnpc%2FcliHelper.xconvert/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chadnpc%2FcliHelper.xconvert/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chadnpc","download_url":"https://codeload.github.com/chadnpc/cliHelper.xconvert/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244102826,"owners_count":20398386,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-17T20:19:15.789Z","updated_at":"2026-02-22T05:34:26.195Z","avatar_url":"https://github.com/chadnpc.png","language":"PowerShell","funding_links":["https://www.paypal.com/donate/?hosted_button_id=3LA3EUKRU6722"],"categories":[],"sub_categories":[],"readme":"# [![✖convert](https://github.com/user-attachments/assets/777c32d2-d5bc-4298-9ac9-38fc3e9c8ad9)](https://alainqtec.dev/clihelper-modules/xconvert)\n\n\u003cp\u003e\u003cb\u003e\u003ca href=\"https://powershellgallery.com/packages/cliHelper.xconvert\"\u003e✖convert\u003c/a\u003e\u003c/b\u003e - version \u003cb\u003e0.1.8\u003c/b\u003e\u003c/p\u003e\n\nAIO module for bidirectional data transformations across multiple encoding formats and native object structures, eliminating dependency on multiple conversion utilities.\n\n\u003cp\u003e\nIts like the builtin \u003ca href=\"https://learn.microsoft.com/en-us/dotnet/fundamentals/runtime-libraries/system-convert\"\u003e[system.convert]\u003c/a\u003e but extended.\n\u003c/br\u003e\n\u003c/p\u003e\n\n## ↯ Install\n\n```PowerShell\nInstall-Module cliHelper.xconvert\n```\n\n⤷ Straight forward; gets the latest version.\n\n## 🧑🏻‍💻 ᴜsᴀɢᴇ\n\n\u003cp\u003e\nHint: \u003ca href=\"./Public/Invoke-Converter.ps1\"\u003exconvert\u003c/a\u003e is pretty much the only cmdlet\nyou have to remember ×͜×\n\n\u003c/p\u003e\n\n⤷ **1. (xconvert). Like directly using the class.**\n\n- To know what method to use, you just type `xconvert From` and \u003cdetails\u003e\n  \u003csummary\u003e\u003cb\u003eTab\u003c/b\u003e to see all options.\u003c/summary\u003e\n\n  xconvert From `Tab`\n\n  gives this output\n\n  [![from tab](https://github.com/user-attachments/assets/6a2ed842-ee1e-4b6f-8309-c483e8b0eade)](https://alainqtec.dev/clihelper-modules/xconvert)\n\n  `or` xconvert To `Tab`\n\n  [![to tab](https://github.com/user-attachments/assets/b7168891-deb2-42f9-8c44-af2f17bc174e)](https://alainqtec.dev/clihelper-modules/xconvert)\n\n\u003c/details\u003e\n\nThen you can do stuff like:\n\n```PowerShell\n\"HelloWorld\" | xconvert ToBase32\n# same as\n(xconvert)::ToBase32(\"HelloWorld\")\n```\n\n\u003cp\u003e\nie: since xconvert is an alias for the public funtion \u003ca href=\"./Public/Invoke-Converter.ps1\"\u003eInvoke-Converter\u003c/a\u003e.\n\u003c/p\u003e\n\n⤷ **2. Chain⫘⫘ing and piping public function(s)**\n\nex: do stuff like\n\n```PowerShell\n$enc_Pass = \"HelloWorld\" | xconvert ToBase32, ToObfuscated, ToSecurestring\n# then reverse it:\n$txt_Pass = $enc_Pass | xconvert ToString, FromObfuscated, FromBase32, ToUTF8str\n$txt_Pass | Should -Be \"HelloWorld\"\n# Metal 🔥 ⚡︎ 🤘\n```\n\nSome still wip:\n\n- [Argumenttransforms](https://learn.microsoft.com/en-us/dotnet/api/system.management.automation.argumenttransformationattribute)\n  I'm planning to get nuts with them🤓\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cb\u003eғᴀᴏ̨ (‘•.•’)\u003c/b\u003e: Why?!\u003c/summary\u003e\n\n⤷ **PowerShell has limited built-in Support for Some Formats**.\n\n\u003cp\u003e\nFor me, this is like a fun and AIO solution to extend that\nfunctionality.\n\u003c/p\u003e\n\n- While PowerShell excels at handling common file formats(JSON, XML, CSV) and\n  [data types](https://learn.microsoft.com/en-us/powershell/scripting/lang-spec/chapter-06?view=powershell-7.4),\n  users may find limited built-in support for less common file types,\n  necessitating additional modules.\n\n  `Example`: Converting excel Files often result in\n  [corrupted files](https://forums.powershell.org/t/converting-excel-files-in-powershell/10807).\n\nThe goal is simple, to make [xconvert] the \u003cb\u003ebest module to convert\u003c/b\u003e objects\nin powershell.\n\n\u003c/details\u003e\n\n## ʟɪᴄᴇɴsᴇ\n\nThis project is licensed under the MIT License. See the\n[ʟɪᴄᴇɴsᴇ](https://alain.MIT-license.org) file for details.\n\n\u003c!-- ## sᴘᴏɴsᴏʀ?\n\nIf this tool saves your time and you want to support me;\n\u003ca href=\"https://www.paypal.com/donate/?hosted_button_id=3LA3EUKRU6722\"\u003e\n\u003cimg src=\"https://img.shields.io/static/v1?logo=paypal\u0026label=PayPal\u0026logoColor=white\u0026message=donate to alain\u0026color=00457C\"/\u003e\n\u003c/a\u003e\n\n[You can also share ideas, and provide feedback](https://github.com/chadnpc/cliHelper.xconvert/discussions/1). --\u003e\n\nContributions are welcome.\n\n⤷ This is still a **ᴡɪᴘ 🚧**. Yes its usable, but alot of cool stuff are not\nfully done.\n\n- [x] Added main class (90%) 🎉.\n- [ ] New methods to xconvert class: For each method you add there should be\n      counter-method for it. There's a lot of missing methods, or new ways to do\n      things. you just have to look for them. For example:\n  - ToBase32 💱 FromBase32\n\n  You can get a quick overview by running `show-MethodsOverview`:\n\n  ```PowerShell\n  #Requires -Modules cliHelper.xconvert\n  function show-MethodsOverview() {\n    $mark = @{ True = \"✅\"; False = \"😒\"}\n    $xmethods = [xconvert].GetMethods().Where({ $_.IsStatic -and !$_.IsHideBySig }).name | Sort-Object -Unique;\n    $analysis = $xmethods | % { $_.Replace('To', \"\").Replace('From', \"\") } | Sort-Object -Unique | Select-Object @{l=\"Name\"; e={$_} }, @{l='HasBoth'; e={ $xmethods -contains \"To$_\" -and $xmethods -contains \"From$_\" }};\n    $hasBoth = $analysis.Where({ $_.HasBoth }); $doesNotHaveBoth = $analysis.Where({ !$_.HasBoth });\n    Write-Host \"`nOverview of all static methods for [xconvert]\" -f Green;\n    ($hasBoth + $doesNotHaveBoth) | Select-Object Name, @{l=\"To\"; e={ $mark[[string]($xmethods -contains \"To$($_.Name)\")] }}, @{l=\"From\"; e={ $mark[[string]($xmethods -contains \"From$($_.Name)\")] } } | Format-Table\n  }\n  ```\n- [x] Added Private /utility classes\n- [x] Add Public function(s)\n\n  `Note`: [This module intentionally uses 1 huge main class](). _Creating all\n  functions for each method in [xconvert] might get tedious overtime_, so _only\n  functions for **Common format conversions** will be created_. **i.e**:\n  - [x] Ansi\n  - [x] ASCIIstr\n  - [x] Base32\n  - [x] Base58\n  - [x] Base64str\n  - [x] Base85\n  - [x] BitArray\n  - [x] BUnicodestr\n  - [x] Bytes\n  - [x] Caesar\n  - [x] Compressed\n  - [x] Csv\n  - [x] HexString\n  - [x] Int32\n  - [x] Latin1str\n  - [x] Obfuscated\n  - [x] Object\n  - [x] Polybius\n  - [x] Protected\n  - [x] PSObject\n  - [x] ROT13\n  - [x] Unicodestr\n  - [x] UtcDate\n  - [x] UTF32str\n  - [x] UTF7str\n  - [x] UTF8str\n  - [x] JSON-CSV\n  - [ ] JSON-XML\n  - [ ] JSON-Log\n  - [x] Markdown-HTML\n  - [ ] Powershell-Batch\n  - [ ] Word-Pdf (why not)\n  - [ ] Hex-RGB\n  - [ ] Bitmaps\n  - [x] Roman-Numbers\n  - [X] GUID\n  - [x] Url-encoding\n  - [ ] DecimalIPv4\n  - [ ] functions convert data type to another (string, integer, datetime ...)\n  - [x] functions to convert encodings (ASCII, UTF-8, base32 ...)\n  - [ ] Binary manipulation\n  - [ ] audio-video conversion (why not)\n  - [ ] functions to convert between visualization formats\n- [ ] Write tests for encoder/decoder utility classes (they work. trust me bro)\n\n- [ ] Add/improve a github workflows\n\n[![Contributors](https://contrib.rocks/image?repo=chadnpc/cliHelper.xconvert)](https://github.com/chadnpc/cliHelper.xconvert/graphs/contributors)\n\nThank you.\n\n![Alt](https://repobeats.axiom.co/api/embed/d89af108bf024aef37b230136bf3883b83aa8386.svg \"Repobeats analytics image\")\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchadnpc%2Fclihelper.xconvert","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchadnpc%2Fclihelper.xconvert","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchadnpc%2Fclihelper.xconvert/lists"}