{"id":19270557,"url":"https://github.com/markmusic27/permutant","last_synced_at":"2026-06-09T21:32:00.507Z","repository":{"id":57322257,"uuid":"305472183","full_name":"markmusic27/permutant","owner":"markmusic27","description":"🧠 Permutant finds every possible permutation of an array using Heap's Algorithm.","archived":false,"fork":false,"pushed_at":"2020-12-08T21:09:38.000Z","size":93,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-27T15:52:19.545Z","etag":null,"topics":["factorial","heapsort-algorithm","permutate","permutation-algorithms","recursion"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/markmusic27.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-10-19T18:06:17.000Z","updated_at":"2023-08-28T04:39:36.000Z","dependencies_parsed_at":"2022-08-25T20:40:14.985Z","dependency_job_id":null,"html_url":"https://github.com/markmusic27/permutant","commit_stats":null,"previous_names":["markmusic2727/permutate"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/markmusic27/permutant","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markmusic27%2Fpermutant","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markmusic27%2Fpermutant/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markmusic27%2Fpermutant/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markmusic27%2Fpermutant/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/markmusic27","download_url":"https://codeload.github.com/markmusic27/permutant/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markmusic27%2Fpermutant/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34127343,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-09T02:00:06.510Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["factorial","heapsort-algorithm","permutate","permutation-algorithms","recursion"],"created_at":"2024-11-09T20:25:45.434Z","updated_at":"2026-06-09T21:32:00.492Z","avatar_url":"https://github.com/markmusic27.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg align=\"left\" alt=\"Mark Music| Twitter\" width=\"100px\" src=\"https://i.ibb.co/tMhqBMs/permutate.png\" /\u003e \n\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\n# Permutant Framework `1.0.16`\n\nPermutant is a JavaScript/TypeScript and Dart framework to find every possible permutation of an array _(or list in Dart)_ of data.\n\nCreated with ❤️ by [@markmusic2727](https://twitter.com/MarkMusic2727) and [@filippofonseca](https://twitter.com/FilippoFonseca) \n\n## Table of Content\n  - [Why Permutant](#why-permutant)\n  - [Multi Language Integration](#multi-language-integration)\n  - [Get Started](#get-started)\n  - [Learn More](#learn-more)\n\n# Why Permutant?\n\nPermutant allows for seamless and easy use of complex algorithms (like Heap's Algorithm) to find every possible permutation of an array/list. Algorithms like these usually take a general understanding of computer science and mathematical concepts, like recursion and factorials, to recreate. Instead of spending valueble time grasping these conceps, simply create a Permutant instance. That is all it takes.\n\n\n# Multi Language Integration\n\nPermutant is not limited to single language architecture. It was designed and optimized to work with TypeScript, and Dart. With cohesive imports and fuctionality, Permutant keeps both codebases consistent, allowing for Permutant to remain the same on all languages. \n\n# Get Started\n\nEnsure that you have the latest version of [Node](https://nodejs.org/en/) and [npm](https://www.npmjs.com/) (if using TS) or [Dart](https://dart.dev/) installed.\n\n### Using Permutant with Dart\n\n__1. Add Permutant to Dependancies__\n\nIn your `pubspec.yaml` file, add the following to your dependancies:\n\n```yaml\ndependencies:\n  ...\n  permutant: ^1.0.15\n```\n\n__2. Initiaization__\n\nAt the top of your Dart file, import the `permutant` package, as shown:\n\n```dart\nimport 'package:permutant/dart/permutant.dart';\n```\n\n### Using Permutant with TypeScript\n\n__1. Installation with npm__\n\n```\nnpm i permutant\n```\n\n__2. Initiaization__\n\nAt the top of your TypeScript file, import `permutant`, as shown:\n\n```ts\nimport Permutant from \"permutant\";\n```\n\nNOTE: The name Permutant after import is arbitrary; it can be replaced with whatever you'd like and the code will still run properly:\n\n```ts\nimport Foo from \"permutant\";\n```\n\n# Learn More\n\nWant to know more about what goes behing the scenes in Permutant? We, at Permutant, have made a comprehensive lesson on all of the math behind Heap's Algorithm. Check out the lesson [here](https://github.com/markmusic2727/permutate/blob/master/extras/lesson.md).\n\nIf you want to know more about the functions and the different methods that can be called with Permutant, view the documentation [here](https://github.com/markmusic2727/permutate/blob/master/extras/documentation.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkmusic27%2Fpermutant","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarkmusic27%2Fpermutant","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkmusic27%2Fpermutant/lists"}