{"id":13736689,"url":"https://github.com/JohnCoene/packer","last_synced_at":"2025-05-08T13:30:23.626Z","repository":{"id":43756560,"uuid":"281489274","full_name":"JohnCoene/packer","owner":"JohnCoene","description":"webpack + npm + R = ❤️","archived":false,"fork":false,"pushed_at":"2024-08-05T12:40:23.000Z","size":3121,"stargazers_count":149,"open_issues_count":10,"forks_count":7,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-05-08T03:17:33.750Z","etag":null,"topics":["javascript","r","rstats","webpack"],"latest_commit_sha":null,"homepage":"https://packer.john-coene.com/","language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JohnCoene.png","metadata":{"files":{"readme":"README.md","changelog":"NEWS.md","contributing":null,"funding":"FUNDING.yml","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},"funding":{"github":"JohnCoene"}},"created_at":"2020-07-21T19:45:35.000Z","updated_at":"2025-04-28T22:00:32.000Z","dependencies_parsed_at":"2022-08-29T21:51:17.917Z","dependency_job_id":"be573d24-b510-4102-a3cb-9764deedf89c","html_url":"https://github.com/JohnCoene/packer","commit_stats":{"total_commits":432,"total_committers":3,"mean_commits":144.0,"dds":0.04166666666666663,"last_synced_commit":"815e85ac14916e6bb23fde42d0351b10312454be"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JohnCoene%2Fpacker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JohnCoene%2Fpacker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JohnCoene%2Fpacker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JohnCoene%2Fpacker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JohnCoene","download_url":"https://codeload.github.com/JohnCoene/packer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253077111,"owners_count":21850272,"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":["javascript","r","rstats","webpack"],"created_at":"2024-08-03T03:01:26.639Z","updated_at":"2025-05-08T13:30:23.147Z","avatar_url":"https://github.com/JohnCoene.png","language":"R","readme":"\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"docs/_media/packer.png\" height = \"200px\"/\u003e\n\n\u003c!-- badges: start --\u003e\n![License](https://img.shields.io/badge/license-MIT-green?style=flat-square)\n![GitHub tag (latest by date)](https://img.shields.io/github/v/tag/JohnCoene/packer?label=latest\u0026style=flat-square)\n[![R-CMD-check](https://github.com/JohnCoene/packer/workflows/R-CMD-check/badge.svg)](https://github.com/JohnCoene/packer/actions)\n[![Codecov test coverage](https://codecov.io/gh/JohnCoene/packer/branch/master/graph/badge.svg)](https://app.codecov.io/gh/JohnCoene/packer?branch=master)\n\u003c!-- badges: end --\u003e\n\n[Website](https://packer.john-coene.com/) | [Installation](https://packer.john-coene.com/#/guide/installation) | [Get Started](https://packer.john-coene.com/#/guide/getting-started) | [Book](https://book.javascript-for-r.com/webpack-intro.html)\n\n## An opinionated framework for using JavaScript with R\n\n\u003c/div\u003e\n\nAt its core packer consists of functions to scaffold R packages powered by webpack and npm, these take the form of scaffolds which are built on top of packages. All of the scaffolds below thus need to be run from within an R package.\n\n### Things you can do with packer\n\n- Use npm packages with htmlwidgets\n- Create your shiny UI with the pug templating engine\n- Include React/Vue in you shiny application\n- Bundle JavaScript files for golem\n- Scope CSS selectors\n- Use Lit web components\n- And so much more...\n\n### Usage\n\nAlways start from an empty package and run `scaffold_*` to set up the required basic structure.\n\n```r\npacker::scaffold_input(\"\u003cname_of_input\u003e\")\n```\n\nOnce the scaffold laid down you can either `bundle` the JavaScript or `watch` for changes as you develop it.\n\n```r\npacker::bundle()\n```\n\nYou can then document and install the package to try it out.\n\n## Install\n\nGet the stable version from CRAN:\n\n```r\ninstall.packages(\"packer\")\n```\n\nGet the development version from Github with `remotes`.\n\n```r\n# install.packages(\"remotes\")\nremotes::install_github(\"JohnCoene/packer\")\n```\n","funding_links":["https://github.com/sponsors/JohnCoene"],"categories":["R","Developer Tools"],"sub_categories":["Modularization"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJohnCoene%2Fpacker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FJohnCoene%2Fpacker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJohnCoene%2Fpacker/lists"}