定制 disjfa/pwa-bundle 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

disjfa/pwa-bundle

Composer 安装命令:

composer require disjfa/pwa-bundle

包简介

Pwa bundle for symfony, can also be use in glynn-admin-symfony. Create favicons and startup icons

关键字:

README 文档

README

Add favicons, startup icons, launcher icons and a manifest.json to your website. To check out how to set it up see glynn-admin-symfony4

Instalation

composer req disjfa/pwa-bundle

Configuration

Setup the PWA_PUBLIC_PATH in your .env file. See the api unsplash api on details how to get these.

For the initial setup i have setup an icons in the public folder named pwa-icon.png. For a simple setup copy the icon from the bundle public folder to check it out.

cp vendor/disjfa/pwa-bundle/Resources/public/pwa-icon.png public/

Usage

In your header you can include the meta file

{{ include('@DisjfaPwa/meta.html.twig') }}

Manual setup

This is an example using symfony 4, for symfony 3 add the routes to the router.yml and add the settings to the config.yml.

Add routes in the router (config/routes/disjfa_pwa.yaml)

disjfa_pwa:
    resource: '@DisjfaPwaBundle/Controller/'
    type:     annotation

Settings, (config/packages/disjfa_pwa.yaml)

parameters:
    disjfa_pwa.favicon: /pwa-icon.png
    disjfa_pwa.background_color: '#000000'
    disjfa_pwa.theme_color: '#ecf0f1'
    disjfa_pwa.name: 'App name'
    disjfa_pwa.short_name: 'App name'
    disjfa_pwa.start_url: '/?start'
    disjfa_pwa.display: 'standalone'

liip_imagine:
    filter_sets:
        pwa_16x16:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [16, 16]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [16, 16]
                    position: center
                    color: '#aaa'
        pwa_32x32:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [32, 32]
                    mode: inset
                background:
                    size: [32, 32]
                    position: center
                    color: '#aaa'
        pwa_36x36:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [36, 36]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [36, 36]
                    position: center
                    color: '#aaa'
        pwa_48x48:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [48, 48]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [48, 48]
                    position: center
                    color: '#aaa'
        pwa_57x57:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [57, 57]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [57, 57]
                    position: center
                    color: '#aaa'
        pwa_60x60:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [60, 60]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [60, 60]
                    position: center
                    color: '#aaa'
        pwa_72x72:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [72, 72]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [72, 72]
                    position: center
                    color: '#aaa'
        pwa_76x76:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [76, 76]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [76, 76]
                    position: center
                    color: '#aaa'
        pwa_96x96:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [96, 96]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [96, 96]
                    position: center
                    color: '#aaa'
        pwa_114x114:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [114, 114]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [114, 114]
                    position: center
                    color: '#aaa'
        pwa_120x120:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [120, 120]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [120, 120]
                    position: center
                    color: '#aaa'
        pwa_128x128:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [128, 128]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [128, 128]
                    position: center
                    color: '#aaa'
        pwa_144x144:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [144, 144]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [144, 144]
                    position: center
                    color: '#aaa'
        pwa_152x152:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [152, 152]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [152, 152]
                    position: center
                    color: '#aaa'
        pwa_180x180:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [180, 180]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [180, 180]
                    position: center
                    color: '#aaa'
        pwa_192x192:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [192, 192]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [192, 192]
                    position: center
                    color: '#aaa'
        pwa_256x256:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [256, 256]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [256, 256]
                    position: center
                    color: '#aaa'
        pwa_228x228:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [228, 228]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [228, 228]
                    position: center
                    color: '#aaa'
        pwa_384x384:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [384, 384]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [384, 384]
                    position: center
                    color: '#aaa'
        pwa_512x512:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [512, 512]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [512, 512]
                    position: center
                    color: '#aaa'
        pwa_1024x1024:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [1024, 1024]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [1024, 1024]
                    position: center
                    color: '#aaa'
        pwa_320x460:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [320, 460]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [320, 460]
                    position: center
                    color: '#aaa'
        pwa_640x920:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [640, 920]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [640, 920]
                    position: center
                    color: '#aaa'
        pwa_640x1096:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [640, 1096]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [640, 1096]
                    position: center
                    color: '#aaa'
        pwa_750x1294:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [750, 1294]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [750, 1294]
                    position: center
                    color: '#aaa'
        pwa_748x1024_landscape:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                rotate:
                    angle: 90
                thumbnail:
                    size: [748, 1024]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [748, 1024]
                    position: center
                    color: '#aaa'
        pwa_768x1004_portrait:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [768, 1004]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [768, 1004]
                    position: center
                    color: '#aaa'
        pwa_1182x2208_landscape:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                rotate:
                    angle: 90
                thumbnail:
                    size: [1182, 2208]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [1182, 2208]
                    position: center
                    color: '#aaa'
        pwa_1242x2148_landscape:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                rotate:
                    angle: 90
                thumbnail:
                    size: [1242, 2148]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [1242, 2148]
                    position: center
                    color: '#aaa'
        pwa_1242x2148_portrait:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [1242, 2148]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [1242, 2148]
                    position: center
                    color: '#aaa'
        pwa_1496x2048_landscape:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                rotate:
                    angle: 90
                thumbnail:
                    size: [1496, 2048]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [1496, 2048]
                    position: center
                    color: '#aaa'
        pwa_1536x2008_portrait:
            jpeg_quality: 85
            png_compression_level: 8
            filters:
                thumbnail:
                    size: [1536, 2008]
                    mode: inset
                    allow_upscale: true
                background:
                    size: [1536, 2008]
                    position: center
                    color: '#aaa'

disjfa/pwa-bundle 适用场景与选型建议

disjfa/pwa-bundle 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 221 次下载、GitHub Stars 达 4, 最近一次更新时间为 2018 年 11 月 29 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「pwa」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 disjfa/pwa-bundle 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 disjfa/pwa-bundle 我们能提供哪些服务?
定制开发 / 二次开发

基于 disjfa/pwa-bundle 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 221
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 0
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 4
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-11-29