🚀 ice.js: The Progressive App Framework Based On React(基于 React 的渐进式应用框架)
MIT License
Bot releases are hidden (Show)
Published by ClarkXia almost 2 years ago
import.meta.target
, import.meta.renderer
and import.meta.env.*
#5700routes.injectInitialEntry
#5800Enable routes.injectInitialEntry
when deploy memory router app by assets:
import { defineConfig } from '@ice/app';
export default defineConfig(() => ({
splitChunks: false,
routes: {
injectInitialEntry: true,
},
}));
ObjectProperties
when disable ssg for document render #5785Published by ClarkXia almost 2 years ago
HotFix: bump @swc/helpers version to fix compile error #5768
Published by ClarkXia almost 2 years ago
data-loader.js
to lower es version #5758Published by ClarkXia almost 2 years ago
Configurate plugin to your ice.config.mts
import { defineConfig } from '@ice/app';
import icestark from '@ice/plugin-icestark';
export default defineConfig(() => ({
plugins: [
icestark({ type: 'framework' }),
],
}));
Visit readme for details.
Published by ClarkXia almost 2 years ago
mainFields
of server compiler https://github.com/alibaba/ice/issues/5626
polyfill
https://github.com/alibaba/ice/pull/5648
polyfill: usage
https://github.com/alibaba/ice/issues/5650
ice.config.mts
https://github.com/alibaba/ice/issues/5637
Visit RP for details.
Published by ClarkXia almost 2 years ago
apis
when pack server bundles #5572data-loader
#5577@swc/core
, webpack
#5596Script
and Data
#5630Published by ClarkXia almost 2 years ago
🎉🎉🎉 Announcement on ice.js 3.0
, Visit 📚 Docs for details.
react 18
and react-router v6
dataLoader
, script prefetch
and etcice.js 2.x
in mode webpackPublished by luhc228 about 2 years ago
BugFix:
Published by luhc228 about 2 years ago
Published by ClarkXia about 2 years ago
createModel
#5443getInitialProps
and getStaticPath
do not execute in mode SSR #5398 #5325toString()
function #5399fullhash
replace of hash
in webpack mode #5407forceLocal
of extract-css-assets plugin #5378plugin-auth
#5328Published by luhc228 over 2 years ago
Published by ClarkXia over 2 years ago
Feat: support reslove mjs and mts files #5300
Fix: compatible with folder which has parentheses and spaces #5299
Fix: resolve process/browser with fully specified path for esm package #5293
Fix: generate default html when SSG #5296
Chore: upgrade dependencies version includes ([email protected] / [email protected] / [email protected] / etc.) https://github.com/ice-lab/builder-deps/pull/25
Published by ClarkXia over 2 years ago
Feat: support framworke alias in mode vite. Relates to #5245
Fix: miniapp app lifecycle is invalid. Relates to #5263
Fix: pre-analyze for js/jsx file. Relates to #5270
Fix: default config of conditionNames #5277
Chore: optimize compile log in mode vite. Relates to #5269
Published by maoxiaoke over 2 years ago
memory
router is enabled, you can pass initialIndex
and initialEntries
. Relates to https://github.com/alibaba/ice/pull/5247
Published by ClarkXia over 2 years ago
Published by ClarkXia over 2 years ago
ice.js will load additional environment variables from the following files in project root
.env # loaded in all cases
.env.local # loaded in all cases, recommended ignored by git
.env.[mode] # only loaded in specified mode
.env.[mode].local # only loaded in specified mode, recommended ignored by git
To prevent accidentally leaking env variables to the client, only variables prefixed with ICE_
are exposed to project code
Specify css chunk name in your build.json
config:
{
"cssChunkNames": "index-main.css"
}
css main chunk will be always named as index-main.css
when build in vite mode
speed up mock service by esbuild
vite
#5178vite
#5181Published by ClarkXia almost 3 years ago
Published by ClarkXia almost 3 years ago
Enable SSR feature in Vite mode by config "ssr": true
:
{
"vite": true,
+ "ssr": true
}
A new plugin for i18n is provided by ICE Team
, enable i18n by add plugin build-plugin-ice-i18n
{
"plugins": [
[
"build-plugin-ice-i18n", {
"locales": ["en-US", "zh-CN", "nl-NL"],
"defaultLocale": "zh-CN"
}
]
]
}
Built-in optimization for bundle size, size will reduce more than 20+KB(minified) .
npm start -- --force
or
- "start": "icejs start"
+ "start": "icejs start --force"
src/main
input when using vite-plugin-index-html #5104Published by ClarkXia almost 3 years ago
Published by ClarkXia almost 3 years ago