{"id":17790086,"url":"https://github.com/angelmunoz/perla","last_synced_at":"2025-08-12T13:53:14.566Z","repository":{"id":40406253,"uuid":"379402841","full_name":"AngelMunoz/Perla","owner":"AngelMunoz","description":"A cross-platform web standards-first SPA dev server","archived":false,"fork":false,"pushed_at":"2025-08-05T20:11:34.000Z","size":3111,"stargazers_count":139,"open_issues_count":5,"forks_count":12,"subscribers_count":5,"default_branch":"dev","last_synced_at":"2025-08-05T22:08:59.921Z","etag":null,"topics":["cli","dev-server","developer-tools","development","devtools","dotnet","dotnet-tool","esbuild-runner","fable","frontend","fsharp","hacktoberfest","perla","skypack"],"latest_commit_sha":null,"homepage":"https://angelmunoz.github.io/Perla/","language":"F#","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/AngelMunoz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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,"zenodo":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":"daniel_tuna","tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2021-06-22T21:16:34.000Z","updated_at":"2025-08-05T20:11:38.000Z","dependencies_parsed_at":"2023-11-18T07:24:09.205Z","dependency_job_id":"fd5eb661-b0e3-4dc1-9cb2-fca976fc1add","html_url":"https://github.com/AngelMunoz/Perla","commit_stats":null,"previous_names":["angelmunoz/finny","angelmunoz/perla"],"tags_count":53,"template":false,"template_full_name":null,"purl":"pkg:github/AngelMunoz/Perla","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngelMunoz%2FPerla","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngelMunoz%2FPerla/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngelMunoz%2FPerla/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngelMunoz%2FPerla/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AngelMunoz","download_url":"https://codeload.github.com/AngelMunoz/Perla/tar.gz/refs/heads/dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngelMunoz%2FPerla/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270072120,"owners_count":24522356,"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","status":"online","status_checked_at":"2025-08-12T02:00:09.011Z","response_time":80,"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":["cli","dev-server","developer-tools","development","devtools","dotnet","dotnet-tool","esbuild-runner","fable","frontend","fsharp","hacktoberfest","perla","skypack"],"created_at":"2024-10-27T10:40:11.001Z","updated_at":"2025-08-12T13:53:14.549Z","avatar_url":"https://github.com/AngelMunoz.png","language":"F#","funding_links":["https://ko-fi.com/daniel_tuna"],"categories":[],"sub_categories":[],"readme":"# Perla Dev Server [![wakatime](https://wakatime.com/badge/user/4537232c-b581-465b-9604-b10a55ffa7b4/project/d46e17c5-054e-4249-a2ab-4294d0e5e026.svg)](https://wakatime.com/badge/user/4537232c-b581-465b-9604-b10a55ffa7b4/project/d46e17c5-054e-4249-a2ab-4294d0e5e026)\n\n[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/AngelMunoz/Perla/tree/dev?quickstart=1) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/AngelMunoz/Perla)\n\nPerla is a cross-platform single executable binary CLI Tool for a Development Server of Single Page Applications (like vite/webpack but no node required!).\n\n## Installation\n\nYou can install Perla manually by downloading the latest release from the [releases page](https://github.com/AngelMunoz/Perla/releases/latest) and adding it to your path.\n\nIf you prefer a more automated approach, you can use the provided install scripts, they're available on this repository for you to review the contents before running them.\n\nFor Linux or macOS, you can run the following command in your terminal:\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/AngelMunoz/Perla/dev/install.sh | bash\n```\n\nFor Windows (or Linux, MacOS if you've installed pwsh), you can use powershell to run the install script:\n\n```powershell\niwr https://raw.githubusercontent.com/AngelMunoz/Perla/dev/install.ps1 -UseBasicParsing | iex\n```\n\nIf you prefer to use the dotnet (global | local) tool, you can install it using the following command:\n\n```bash\ndotnet tool install --global Perla\n```\n\n\u003e **Note**: From `v1.0.0-beta-033` onwards, the dotnet tool won't be available as the playwright support makes it harder to upload to nuget, but a solution is in the works. The install scripts and manual download from the releases page still work unchanged.\n\nOnce you're done with the installation, you can run `perla --help` to verify that the installation was successful.\n\n```\nDescription:\n  The Perla Dev Server!\n\nUsage:\n  Perla [command] [options]\n\nOptions:\n  -?, -h, --help  Show help and usage information\n  --version       Show version information\n\nCommands:\n  create, generate, n, new \u003cname\u003e        Creates a new project based on the selected template if it exists\n  install                                Installs the project dependencies from the perla.json file\n  add \u003cpackage\u003e                          Adds a package to the project dependencies\n  remove \u003cpackage\u003e                       Removes a package from the project dependencies\n  list, ls                               Lists the current dependencies in a table or an npm style json string\n  s, serve, start                        Starts the development server and if fable projects are present it also takes care of it.\n  b, build                               Builds the SPA application for distribution\n  t, templates \u003cTemplateRepositoryName\u003e  Handles Template Repository operations such as list, add, update, and remove templates []\n  describe, ds \u003cproperties\u003e              Describes the perla.json file or it's properties as requested\n```\n\n## Existing tools\n\nIf you actually use and like nodejs, then you would be better taking a look at the tools that inspired this repository\n\n- [jspm](https://github.com/jspm/jspm-cli) - Import map handling, they are the best at manipulating import maps :heart:\n- [vite](https://vitejs.dev/)\n- [snowpack](https://www.snowpack.dev/)\n\nThese tools have a bigger community and rely on an even bigger ecosystem plus they support plugins via npm so if you're using node stick with them they are a better choice\nPerla's unbundled development was inspired by both snowpack and vite, CDN dependencies were inspired by snowpack's remote sources development\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fangelmunoz%2Fperla","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fangelmunoz%2Fperla","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fangelmunoz%2Fperla/lists"}