Skip to content

pwa-builder/PWABuilder

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

fixes #[issue number] 
<!-- Link to relevant issue (for ex: "fixes #1234") which will
automatically close the issue once the PR is merged -->

## PR Type
<!-- Please uncomment one ore more that apply to this PR -->

<!-- - Bugfix -->
<!-- - Feature -->
<!-- - Code style update (formatting) -->
<!-- - Refactoring (no functional changes, no api changes) -->
<!-- - Build or CI related changes -->
<!-- - Documentation content changes -->
<!-- - Sample app changes -->
<!-- - Other... Please describe: -->


## Describe the current behavior?
<!-- Please describe the current behavior that is being modified or link
to a relevant issue. -->


## Describe the new behavior?


## PR Checklist

- [ ] Test: run `npm run test` and ensure that all tests pass
- [ ] Target main branch (or an appropriate release branch if
appropriate for a bug fix)
- [ ] Ensure that your contribution follows [standard accessibility
guidelines](https://docs.microsoft.com/en-us/microsoft-edge/accessibility/design).
Use tools like https://webhint.io/ to validate your changes.


## Additional Information

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Beth Pan <xupa@microsoft.com>
Co-authored-by: Gleb Khmyznikov <gleb.khmyznikov@gmail.com>
Co-authored-by: Jaylyn Barbee <jaylyn.1b@gmail.com>
Co-authored-by: Jaylyn Barbee <51131738+Jaylyn-Barbee@users.noreply.github.com>
Co-authored-by: Nikola Metulev <nmetulev@users.noreply.github.com>
Co-authored-by: Mara'ah Lee <maraahlee@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Adolf Daniel <10156724+adolfdaniel@users.noreply.github.com>
Co-authored-by: Justin Willis (HE / HIM) <juwillis@microsoft.com>
Co-authored-by: Zach Teutsch <88554871+zateutsch@users.noreply.github.com>
Co-authored-by: vipul-bhojwani <67650372+vipul-bhojwani@users.noreply.github.com>
Co-authored-by: Amrutha Srinivasan <amrutha.srinivasan95@gmail.com>
Co-authored-by: Federico Navarrete <darklord.navarrete@gmail.com>
Co-authored-by: Toby Liu <ybot1122@gmail.com>
Co-authored-by: microsoft-github-policy-service[bot] <77245923+microsoft-github-policy-service[bot]@users.noreply.github.com>
Co-authored-by: Amrutha Srinivasan <amsrin@microsoft.com>
Co-authored-by: Jonas Thelemann <e-mail@jonas-thelemann.de>
Co-authored-by: Siraj Chokshi <19193347+SirajChokshi@users.noreply.github.com>
Co-authored-by: Thomas Peißl <7underlines@gmail.com>
0fcda7d

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
October 16, 2023 18:33
November 29, 2023 20:13
October 16, 2023 18:33
November 29, 2023 20:13
November 29, 2023 20:13
June 8, 2022 15:40
June 23, 2022 14:08
May 6, 2022 14:58
May 5, 2022 21:26
July 18, 2022 11:55
October 10, 2022 11:21
April 25, 2022 20:07

PWABuilder

The simplest way to create progressive web apps across platforms and devices.

This repo is home to several projects in the PWABuilder family of tools.

Tools

Tools Overview Source Docs Contribute
PWABuilder.com The best way to package PWAs for various stores. /apps/pwabuilder PWABuilder docs Wiki
PWA Studio PWA Studio makes VSCode the BEST developer environment for building Progressive Web Apps. /apps/pwabuilder-vscode PWA Studio docs Wiki
PWA Starter Our opinionated and production tested progressive web app (PWA) template for creating new projects. Repo PWA Starter docs Wiki

Docs

Docs Source Contribute
docs.pwabuilder.com /docs Wiki
blog.pwabuilder.com /apps/blog /apps/blog

Components

Components Overview Source Docs Contribute
<pwa-auth>

npm version
Web component for authenticating users /components/pwa-auth /components/pwa-auth/docs Wiki
<pwa-update>

npm version
Web component for great PWA update experience /components/pwa-update /components/pwa-update Wiki
<pwa-install>

npm version
Web component for great PWA install experience /components/pwa-install /components/pwa-install Wiki
<pwa-inking>

npm version
Web component for adding inking to your PWAs /components/pwa-inking /components/pwa-inking Wiki

Recommended Development setup

You will need the following things properly installed on your computer.

You should also be familiar with TypeScript which we use for this project. This helps give you more guidance as you code from intellisense when using VSCode.

We recommend the following tools for your dev setup:

Additionally, when you open the project in VS Code, you'll be prompted to install recommended extensions.

Development

Navigate to the folder of the project you plan to work on (example /apps/pwabuilder), and follow the README for how to get started.

Running npm install in the project folder will automatically install and build all dependencies.

About this monorepo

This monorepo does not use a root package.json like other monorepos you might be used to. Instead, projects live in their separate folders and are mostly independent of each other.

However, when there are dependencies between projects, our tooling should automatically handle linking and dependency building when you run npm install in the project root.

For example /apps/pwabuilder has a dependency on library/site-analytics. This dependency is defined in the pwabuilder package.json like so:

  //package.json
  "dependencies": {
    "@pwabuilder/site-analytics": "file:../../libraries/site-analytics",
    ...

Running npm install in the pwabuilder folder will also run npm install and npm run build for the site-analytics project. In most cases, and unless working on a dependency, a developer will not have to worry about how these projects are linked.

For automatic linking of projects to work, ensure each project has a preinstall script like so:

  // package.json
  "scripts": {
    "preinstall": "node ../../scripts/setupDeps.js",
    ...

License

All files on the PWABuilder repository are subject to the MIT license. Please read the License file at the root of the project.


This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.