Skip to content

Instantly share code, notes, and snippets.

import React from 'react'
// dead code - useless imports
import ComponentA from 'common/components/ComponentA'
import ComponentB from 'common/components/ComponentB'
import ComponentC from 'common/components/ComponentC'
import SomeWrapper from 'common/components/SomeWrapper'
// dead code - unused constant declaration
const MAPPER = {
TYPE_A: ComponentA,
@sachin-hg
sachin-hg / MyComponent.js
Created November 22, 2022 10:58
Dead Code Example
import React from 'react'
// dead code - useless imports
import ComponentA from 'common/components/ComponentA'
import ComponentB from 'common/components/ComponentB'
import ComponentC from 'common/components/ComponentC'
import SomeWrapper from 'common/components/SomeWrapper'
// dead code - unused constant declaration
const MAPPER = {
TYPE_A: ComponentA,
@sachin-hg
sachin-hg / MyComponent_Dead_Code_removed.js
Created November 22, 2022 11:00
Dead Code Removed by terser
import React from 'react'
// dead code - useless imports
import ComponentA from 'common/components/ComponentA'
import ComponentB from 'common/components/ComponentB'
import ComponentC from 'common/components/ComponentC'
import SomeWrapper from 'common/components/SomeWrapper'
export const SomeComponent = ({ type }) => {
return null
}
@sachin-hg
sachin-hg / MyComponent_final_code.js
Created November 22, 2022 11:05
Dead Code & Tree shaken code
export const SomeComponent = ({ type }) => {
return null
}
@sachin-hg
sachin-hg / remove_dead_code_webpack_loader.js
Created November 22, 2022 11:07
Webpack Loader to remove the dead code
const { minify } = require('terser')
module.exports = function modifyModuleSourceLoader (source, map, meta) {
const callback = this.async()
const { terserOptions } = this.getOptions()
minify(source, terserOptions)
.then(data => {
const { code } = data || {}
callback(null, code, map, meta)
})
@sachin-hg
sachin-hg / terser_options.json
Last active January 10, 2023 11:41
terser options to just remove the dead code
{
"toplevel": true,
"ecma": 8,
"compress": {
"pure_funcs": [
"console.log",
"console.warn"
],
"toplevel": true,
"hoist_props": false
@sachin-hg
sachin-hg / terser_options_with_global_defs.json
Last active January 10, 2023 11:41
terser options with global_defs for dead code elimination
{
"toplevel": true,
"ecma": 8,
"compress": {
"global_defs": {
"__MOBILE__": true
},
"pure_funcs": [
"console.log",
@sachin-hg
sachin-hg / dead_code_example2.js
Created November 22, 2022 11:18
Simple Dead Code Example
import Mobile from './mobile'
import Desktop from './desktop'
export default () => __MOBILE__ ? <Mobile /> : <Desktop />
@sachin-hg
sachin-hg / dead_code_mobile.js
Created November 22, 2022 11:19
Dead Code Eliminated Example for mobile build
import Mobile from './mobile'
export default () => <Mobile />
@sachin-hg
sachin-hg / dead_code_desktop.js
Created November 22, 2022 11:21
Dead Code Eliminated Example for Desktop build
import Desktop from './desktop'
export default () => <Desktop />