ctripcorp / Wean
Licence: mit
🍀 小程序构建工具 ♂ 重新实现小程序标准 ♀ 小程序 => web
Stars: ✭ 125
Programming Languages
javascript
184084 projects - #8 most used programming language
Labels
Projects that are alternatives of or similar to Wean
Fuse Box
A blazing fast js bundler/loader with a comprehensive API 🔥
Stars: ✭ 4,055 (+3144%)
Mutual labels: bundler
Aspnetbundling
An assortment of bundling utility classes like custom transformers and fixes for the ASP.NET Web Optimization bundling framework.
Stars: ✭ 61 (-51.2%)
Mutual labels: bundler
Shortstack
🥞 minimal Rollup + PostCSS modern syntax starter template
Stars: ✭ 94 (-24.8%)
Mutual labels: bundler
Phaser Node Kit
Rapid Game Development with PhaserJS and Node for Modern Browsers
Stars: ✭ 39 (-68.8%)
Mutual labels: bundler
Neuron.js
A Full Feature CommonJS Module Manager, Dependency Graph Handler and Loader for Browsers
Stars: ✭ 66 (-47.2%)
Mutual labels: bundler
Mam mol
$mol - fastest reactive micro-modular compact flexible lazy ui web framework.
Stars: ✭ 385 (+208%)
Mutual labels: bundler
Bundleup
A friendlier CLI for Bundler’s `update` and `outdated` commands.
Stars: ✭ 111 (-11.2%)
Mutual labels: bundler
Parcel Plugin Structurize
A plugin to customize the output (dist) directory structure during production.
Stars: ✭ 29 (-76.8%)
Mutual labels: bundler
Jetpack.js
A ECMAScript bundler and minifier implemented in C++ aimed at excellent performance.
Stars: ✭ 75 (-40%)
Mutual labels: bundler
Cloudflare Workers Webpack Boilerplate
A superbly simple, minimal-config template for building, bundling and deploying Cloudflare Workers with Webpack 🚀
Stars: ✭ 101 (-19.2%)
Mutual labels: bundler
Jekyll Minibundle
A minimalistic asset bundling plugin for Jekyll
Stars: ✭ 65 (-48%)
Mutual labels: bundler
Instapack
All-in-one TypeScript and Sass compiler for web applications! 📦 🚀
Stars: ✭ 131 (+4.8%)
Mutual labels: bundler
Nexe
🎉 create a single executable out of your node.js apps
Stars: ✭ 10,565 (+8352%)
Mutual labels: bundler
Denopack
The bundling and minification toolset, made for Deno
Stars: ✭ 81 (-35.2%)
Mutual labels: bundler
🔥 Note this is early experimental! 实验阶段的主要工作是想办法让整体架构变稳定、简洁,不建议上生产。
wean 是一个小程序构建工具,它负责将标准的微信小程序打包成 web 项目,这样做有很多好处——
- 小程序引擎 - 将打包产物跑到 APP webview 上,就可以成为专属小程序,如“携程小程序”
- 开箱即用 - 更现代的标准,更短的开发链路,从某种程度上缓解微信小程序的历史包袱
- 跨双端 - 以保住微信为前提,一套代码,支持微信和 h5 两个端
wean 借助 fre 实现渲染,借助 berial 实现路由和沙箱,不需要 webpack 等
除了基本的编译打包,wean 实现了一些先进特性:Tree shaking、Module federation、Hot reload,做更现代,更简洁的小程序子集
Run
$ npm install
$ npm link
$ wean -e app.json -o /dist/
如果小程序工具导入 dist 目录,遇到 dist 缺少 app.json 和 sitemap.json 的报错,先手动将 demo 里的这两个文件拷贝到 dist 下,能跑起来再说。
剩下的只需要按照 微信小程序开发文档 开发即可
值得注意的是,并非所有的微信小程序的特性都被支持,简单地说,wean 只支持“现代特性”
Motivation
在 wean 之前,大量小程序工具使用 webpack 进行打包,各种 loader、plugin 导致整个开发链路变长
wean 旨在解决链路问题,它自研编译器和打包器,对于标准小程序项目,可以做到开箱即用
Package
Package | Description | Version |
---|---|---|
wean | 微信小程序打包器 | |
wean/wxml | wxml 编译器 |
Design
License
MIT @ctripcorp
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].