Comments (9)
I will make a inferno starter project based on rollup and stuff we use in our company... but there is so much to do atm. So that has lower priority
from create-inferno-app.
If you want optimal output, you might want to consider rollup IIFE format + custom set of plugins (no preset) for babel. This way you get only once per application those helpers inlined. Also "typeof" babel plugin creates a lot of overhead. We simply removed it, but then you cannot use typeof for Symbols. I'm not sure if we can apply those patterns into this create-inferno-app, but you can definitely roll your own.
from create-inferno-app.
hmmm, if I use rollup and custom babel config, that would mean I would need to eject, right?
from create-inferno-app.
@sprlwrksAprilmintacpineda yeah, it might be easier to just do everything yourself.. :/
from create-inferno-app.
@Havunen maybe we could just do that with inferno-scripts?
from create-inferno-app.
This project is equivalent for create-react-app
and that would introduce rollup and its plugins as dependencies, I think its also easier to make new project.
from create-inferno-app.
If we aren't already, I think we can make use of the following babel plugins
.:
- https://babeljs.io/docs/en/babel-plugin-minify-dead-code-elimination
- https://babeljs.io/docs/en/babel-plugin-minify-constant-folding
- https://babeljs.io/docs/en/babel-plugin-transform-minify-booleans
The issue now is how to tell babel not to rewrite the helper functions and simply write them on the polyfill. Because it doesn't make sense that this:
var s = Object.assign || function (e) {
for (var t = 1; t < arguments.length; t++) {
var n = arguments[t];
for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r])
}
return e
},
is everywhere when I'm using the polyfill and it could have been added there like so:
if (Object.assign === undefined) {
Object.prototype.assign = function (e) {
for (var t = 1; t < arguments.length; t++) {
var n = arguments[t];
for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r])
}
return e;
};
}
Then simply transform all the rest operators to Object.assign
which have been polyfilled.
from create-inferno-app.
@Havunen how do you check if the app is working while developing it? I have a fork, I want to make changes and observe their effect, but I can't.
from create-inferno-app.
I have rebased all updates from the upstream, updated all the depencies to latest versions and converted the source code to ESM.
The next major version will require Node 20 or newer.
This issue is most likely fixed after all those changes to babel plugins. Closing.
from create-inferno-app.
Related Issues (20)
- can we specify a custom build path for "inferno-scripts build"?
- make process.env available in sass? HOT 1
- PUBLIC_URL defined on .env is not on process.env
- My function call transpiled to (void, 0) HOT 2
- Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory HOT 5
- What's this code that was injected in index.html on build? HOT 1
- Doesnt install inferno-create-element HOT 1
- How do I use Linaria or Astroturf with this webpack setup? HOT 1
- Pretty far behind the fork of create-react-app HOT 12
- Inferno compat question HOT 3
- Anyone deployed inferno on Google App Engine?
- inferno-dev-utils/formatWebpackMessages support for webpack 5.x
- Test with new versions of Node with CI/CD HOT 1
- Dependencies must be upgraded HOT 10
- create-inferno-app dependency issue HOT 2
- Only npm supported?
- npm start error on eject HOT 5
- "WATcia-template asddas undefined" & Warnings on installing HOT 4
- after npm run eject, npm run build doesn't work HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from create-inferno-app.