907 lines
85 KiB
HTML
907 lines
85 KiB
HTML
<!DOCTYPE html><html lang="en-US" class="js lenis"><head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5"><title>Why I Fully Ditched Default Exports in TypeScript</title>
|
||
<style>img:is([sizes="auto" i], [sizes^="auto," i]) { contain-intrinsic-size: 3000px 1500px }</style>
|
||
<meta name="dc.title" content="Why I Fully Ditched Default Exports in TypeScript">
|
||
<meta name="dc.description" content="Discover why switching from default to named exports enhances clarity, refactoring, and IDE support in TypeScript development.">
|
||
<meta name="dc.relation" content="https://mintel.me/why-i-abandoned-default-exports-completely/">
|
||
<meta name="dc.source" content="https://mintel.me/">
|
||
<meta name="dc.language" content="en_US">
|
||
<meta name="description" content="Discover why switching from default to named exports enhances clarity, refactoring, and IDE support in TypeScript development.">
|
||
<meta name="robots" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">
|
||
<link rel="canonical" href="https://mintel.me/why-i-abandoned-default-exports-completely/">
|
||
<meta property="og:url" content="https://mintel.me/why-i-abandoned-default-exports-completely/">
|
||
<meta property="og:site_name" content="Marc Mintel">
|
||
<meta property="og:locale" content="en_US">
|
||
<meta property="og:type" content="article">
|
||
<meta property="og:title" content="Why I Fully Ditched Default Exports in TypeScript">
|
||
<meta property="og:description" content="Discover why switching from default to named exports enhances clarity, refactoring, and IDE support in TypeScript development.">
|
||
<meta property="og:image" content="../wp-content/uploads/2025/01/carbon-1.webp">
|
||
<meta property="og:image:secure_url" content="https://mintel.me/wp-content/uploads/2025/01/carbon-1.webp">
|
||
<meta property="og:image:width" content="1920">
|
||
<meta property="og:image:height" content="1727">
|
||
<meta property="fb:pages" content="">
|
||
<meta property="fb:admins" content="">
|
||
<meta property="fb:app_id" content="">
|
||
<meta name="twitter:card" content="summary">
|
||
<meta name="twitter:title" content="Why I Fully Ditched Default Exports in TypeScript">
|
||
<meta name="twitter:description" content="Discover why switching from default to named exports enhances clarity, refactoring, and IDE support in TypeScript development.">
|
||
<meta name="twitter:image" content="https://mintel.me/wp-content/uploads/2025/01/carbon-1-1024x921.webp">
|
||
<link rel="dns-prefetch" href="//fonts.googleapis.com">
|
||
<link rel="alternate" type="application/rss+xml" title="Marc Mintel » Feed" href="https://mintel.me/feed/">
|
||
<link rel="alternate" type="application/rss+xml" title="Marc Mintel » Comments Feed" href="https://mintel.me/comments/feed/">
|
||
<link rel="preload" href="https://mintel.me/wp-content/themes/salient/css/fonts/icomoon.woff?v=1.6" as="font" type="font/woff" crossorigin="anonymous"><link rel="stylesheet" id="device_wrapper-simplebar-css" href="../wp-content/plugins/device-wrapper/src/css/simplebar.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="device_wrapper-style-css-css" href="../wp-content/plugins/device-wrapper/dist/blocks.style.build.css" type="text/css" media="all">
|
||
<style id="wpseopress-local-business-style-inline-css" type="text/css">
|
||
span.wp-block-wpseopress-local-business-field{margin-right:8px}
|
||
|
||
</style>
|
||
<style id="filebird-block-filebird-gallery-style-inline-css" type="text/css">
|
||
ul.filebird-block-filebird-gallery{margin:auto!important;padding:0!important;width:100%}ul.filebird-block-filebird-gallery.layout-grid{display:grid;grid-gap:20px;align-items:stretch;grid-template-columns:repeat(var(--columns),1fr);justify-items:stretch}ul.filebird-block-filebird-gallery.layout-grid li img{border:1px solid #ccc;box-shadow:2px 2px 6px 0 rgba(0,0,0,.3);height:100%;max-width:100%;-o-object-fit:cover;object-fit:cover;width:100%}ul.filebird-block-filebird-gallery.layout-masonry{-moz-column-count:var(--columns);-moz-column-gap:var(--space);column-gap:var(--space);-moz-column-width:var(--min-width);columns:var(--min-width) var(--columns);display:block;overflow:auto}ul.filebird-block-filebird-gallery.layout-masonry li{margin-bottom:var(--space)}ul.filebird-block-filebird-gallery li{list-style:none}ul.filebird-block-filebird-gallery li figure{height:100%;margin:0;padding:0;position:relative;width:100%}ul.filebird-block-filebird-gallery li figure figcaption{background:linear-gradient(0deg,rgba(0,0,0,.7),rgba(0,0,0,.3) 70%,transparent);bottom:0;box-sizing:border-box;color:#fff;font-size:.8em;margin:0;max-height:100%;overflow:auto;padding:3em .77em .7em;position:absolute;text-align:center;width:100%;z-index:2}ul.filebird-block-filebird-gallery li figure figcaption a{color:inherit}
|
||
|
||
</style>
|
||
<style id="global-styles-inline-css" type="text/css">
|
||
:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:root { --wp--style--global--content-size: 1300px;--wp--style--global--wide-size: 1300px; }:where(body) { margin: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;line-height: inherit;padding: calc(0.667em + 2px) calc(1.333em + 2px);text-decoration: none;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
|
||
:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}
|
||
:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}
|
||
:root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;}
|
||
</style>
|
||
<link rel="stylesheet" id="salient-social-css" href="../wp-content/plugins/salient-social/css/style.css" type="text/css" media="all">
|
||
<style id="salient-social-inline-css" type="text/css">
|
||
|
||
.sharing-default-minimal .nectar-love.loved,
|
||
body .nectar-social[data-color-override="override"].fixed > a:before,
|
||
body .nectar-social[data-color-override="override"].fixed .nectar-social-inner a,
|
||
.sharing-default-minimal .nectar-social[data-color-override="override"] .nectar-social-inner a:hover,
|
||
.nectar-social.vertical[data-color-override="override"] .nectar-social-inner a:hover {
|
||
background-color: #111111;
|
||
}
|
||
.nectar-social.hover .nectar-love.loved,
|
||
.nectar-social.hover > .nectar-love-button a:hover,
|
||
.nectar-social[data-color-override="override"].hover > div a:hover,
|
||
#single-below-header .nectar-social[data-color-override="override"].hover > div a:hover,
|
||
.nectar-social[data-color-override="override"].hover .share-btn:hover,
|
||
.sharing-default-minimal .nectar-social[data-color-override="override"] .nectar-social-inner a {
|
||
border-color: #111111;
|
||
}
|
||
#single-below-header .nectar-social.hover .nectar-love.loved i,
|
||
#single-below-header .nectar-social.hover[data-color-override="override"] a:hover,
|
||
#single-below-header .nectar-social.hover[data-color-override="override"] a:hover i,
|
||
#single-below-header .nectar-social.hover .nectar-love-button a:hover i,
|
||
.nectar-love:hover i,
|
||
.hover .nectar-love:hover .total_loves,
|
||
.nectar-love.loved i,
|
||
.nectar-social.hover .nectar-love.loved .total_loves,
|
||
.nectar-social.hover .share-btn:hover,
|
||
.nectar-social[data-color-override="override"].hover .nectar-social-inner a:hover,
|
||
.nectar-social[data-color-override="override"].hover > div:hover span,
|
||
.sharing-default-minimal .nectar-social[data-color-override="override"] .nectar-social-inner a:not(:hover) i,
|
||
.sharing-default-minimal .nectar-social[data-color-override="override"] .nectar-social-inner a:not(:hover) {
|
||
color: #111111;
|
||
}
|
||
</style>
|
||
<link rel="stylesheet" id="vlp-public-css" href="../wp-content/plugins/visual-link-preview/dist/public.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="salient-grid-system-css" href="../wp-content/themes/salient/css/build/grid-system.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="main-styles-css" href="../wp-content/themes/salient/css/build/style.css" type="text/css" media="all">
|
||
<style id="main-styles-inline-css" type="text/css">
|
||
body[data-ajax-transitions="true"] #ajax-loading-screen[data-effect="standard"],body[data-ajax-transitions="true"] #ajax-loading-screen[data-effect="standard"] .loading-icon{transition:opacity 0.4s ease;}body[data-ajax-transitions="true"] #ajax-loading-screen[data-effect="standard"].loaded,body[data-ajax-transitions="true"] #ajax-loading-screen[data-effect="standard"].loaded .loading-icon{opacity:0;}@media only screen and (max-width:999px){#ajax-content-wrap .top-level .nectar-post-grid[data-animation*="fade"] .nectar-post-grid-item,#ajax-content-wrap .top-level .nectar-post-grid[data-animation="zoom-out-reveal"] .nectar-post-grid-item *:not(.content):not(.bg-overlay),#ajax-content-wrap .top-level .nectar-post-grid[data-animation="zoom-out-reveal"] .nectar-post-grid-item *:before{transform:none;opacity:1;clip-path:none;}#ajax-content-wrap .top-level .nectar-post-grid[data-animation="zoom-out-reveal"] .nectar-post-grid-item .nectar-el-parallax-scroll .nectar-post-grid-item-bg-wrap-inner{transform:scale(1.275);}}.wpb_row.vc_row.top-level .nectar-video-bg{opacity:1;height:100%;width:100%;object-fit:cover;object-position:center center;}body.using-mobile-browser .wpb_row.vc_row.top-level .nectar-video-wrap{left:0;}body.using-mobile-browser .wpb_row.vc_row.top-level.full-width-section .nectar-video-wrap:not(.column-video){left:50%;}body.using-mobile-browser #nectar_fullscreen_rows[data-mobile-disable="off"] .wpb_row.vc_row.top-level.full-width-section .nectar-video-wrap:not(.column-video){left:0;}.wpb_row.vc_row.top-level .nectar-video-wrap{opacity:1;width:100%;}body .wpb_row.parallax_section.top-level > .nectar-video-wrap video:not(.translate){opacity:1;}.top-level .portfolio-items[data-loading=lazy-load] .col .inner-wrap.animated .top-level-image{opacity:1;}.wpb_row.vc_row.top-level .column-image-bg-wrap[data-n-parallax-bg="true"] .column-image-bg,.wpb_row.vc_row.top-level + .wpb_row .column-image-bg-wrap[data-n-parallax-bg="true"] .column-image-bg,#portfolio-extra > .wpb_row.vc_row.parallax_section:first-child .row-bg{transform:none!important;height:100%!important;opacity:1;}#portfolio-extra > .wpb_row.vc_row.parallax_section .row-bg{background-attachment:scroll;}.scroll-down-wrap.hidden{transform:none;opacity:1;}#ajax-loading-screen[data-disable-mobile="0"]{display:none!important;}body[data-slide-out-widget-area-style="slide-out-from-right"].material .slide_out_area_close.hide_until_rendered{opacity:0;}
|
||
</style>
|
||
<link rel="stylesheet" id="nectar-header-layout-centered-menu-css" href="../wp-content/themes/salient/css/build/header/header-layout-centered-menu.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="nectar-header-perma-transparent-css" href="../wp-content/themes/salient/css/build/header/header-perma-transparent.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="nectar-single-styles-css" href="../wp-content/themes/salient/css/build/single.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="nectar-element-highlighted-text-css" href="../wp-content/themes/salient/css/build/elements/element-highlighted-text.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="nectar-element-post-grid-css" href="../wp-content/themes/salient/css/build/elements/element-post-grid.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="nectar-element-recent-posts-css" href="../wp-content/themes/salient/css/build/elements/element-recent-posts.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="nectar_default_font_open_sans-css" href="../_external/fonts.googleapis.com/css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="responsive-css" href="../wp-content/themes/salient/css/build/responsive.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="skin-material-css" href="../wp-content/themes/salient/css/build/skin-material.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="salient-wp-menu-dynamic-css" href="../wp-content/uploads/salient/menu-dynamic.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="nectar-widget-posts-css" href="../wp-content/themes/salient/css/build/elements/widget-nectar-posts.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="js_composer_front-css" href="../wp-content/plugins/js_composer_salient/assets/css/js_composer.min.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="dynamic-css-css" href="../wp-content/themes/salient/css/salient-dynamic-styles.css" type="text/css" media="all">
|
||
<style id="dynamic-css-inline-css" type="text/css">
|
||
.single.single-post .container-wrap{padding-top:0;}.main-content .featured-media-under-header{padding:min(6vw,90px) 0;}.featured-media-under-header__featured-media:not([data-has-img="false"]){margin-top:min(6vw,90px);}.featured-media-under-header__featured-media:not([data-format="video"]):not([data-format="audio"]):not([data-has-img="false"]){overflow:hidden;position:relative;padding-bottom:50%;}.featured-media-under-header__meta-wrap{display:flex;flex-wrap:wrap;align-items:center;}.featured-media-under-header__meta-wrap .meta-author{display:inline-flex;align-items:center;}.featured-media-under-header__meta-wrap .meta-author img{margin-right:8px;width:28px;border-radius:100px;}.featured-media-under-header__featured-media .post-featured-img{display:block;line-height:0;top:auto;bottom:0;}.featured-media-under-header__featured-media[data-n-parallax-bg="true"] .post-featured-img{height:calc(100% + 75px);}.featured-media-under-header__featured-media .post-featured-img img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:top;}@media only screen and (max-width:690px){.featured-media-under-header__featured-media[data-n-parallax-bg="true"] .post-featured-img{height:calc(100% + 45px);}.featured-media-under-header__meta-wrap{font-size:14px;}}.featured-media-under-header__featured-media[data-align="center"] .post-featured-img img{object-position:center;}.featured-media-under-header__featured-media[data-align="bottom"] .post-featured-img img{object-position:bottom;}.featured-media-under-header h1{margin:max(min(0.35em,35px),20px) 0 max(min(0.25em,25px),15px) 0;}.featured-media-under-header__cat-wrap .meta-category a{line-height:1;padding:7px 15px;margin-right:15px;}.featured-media-under-header__cat-wrap .meta-category a:not(:hover){background-color:rgba(0,0,0,0.05);}.featured-media-under-header__cat-wrap .meta-category a:hover{color:#fff;}.featured-media-under-header__meta-wrap a,.featured-media-under-header__cat-wrap a{color:inherit;}.featured-media-under-header__meta-wrap > span:not(:first-child):not(.rich-snippet-hidden):before{content:"·";padding:0 .5em;}.featured-media-under-header__excerpt{margin:0 0 20px 0;}@media only screen and (min-width:691px){[data-animate="fade_in"] .featured-media-under-header__cat-wrap,[data-animate="fade_in"].featured-media-under-header .entry-title,[data-animate="fade_in"] .featured-media-under-header__meta-wrap,[data-animate="fade_in"] .featured-media-under-header__featured-media,[data-animate="fade_in"] .featured-media-under-header__excerpt,[data-animate="fade_in"].featured-media-under-header + .row .content-inner{opacity:0;transform:translateY(50px);animation:nectar_featured_media_load 1s cubic-bezier(0.25,1,0.5,1) forwards;}[data-animate="fade_in"] .featured-media-under-header__cat-wrap{animation-delay:0.1s;}[data-animate="fade_in"].featured-media-under-header .entry-title{animation-delay:0.2s;}[data-animate="fade_in"] .featured-media-under-header__excerpt{animation-delay:0.3s;}[data-animate="fade_in"] .featured-media-under-header__meta-wrap{animation-delay:0.3s;}[data-animate="fade_in"] .featured-media-under-header__featured-media{animation-delay:0.4s;}[data-animate="fade_in"].featured-media-under-header + .row .content-inner{animation-delay:0.5s;}}@keyframes nectar_featured_media_load{0%{transform:translateY(50px);opacity:0;}100%{transform:translateY(0px);opacity:1;}}.featured-media-under-header__content{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:1000px;margin:0 auto;}@media only screen and (min-width:691px){.featured-media-under-header__excerpt{max-width:75%;}}.featured-media-under-header__meta-wrap .meta-author img{margin-right:15px;width:50px;}@media only screen and (max-width:690px){width:40px;}.featured-media-under-header__meta-wrap .meta-author > span{text-align:left;line-height:1.5;}.featured-media-under-header__meta-wrap .meta-author > span span:not(.rich-snippet-hidden){display:block;}.featured-media-under-header__meta-wrap .meta-date,.featured-media-under-header__meta-wrap .meta-reading-time{font-size:.85em;}#header-space{background-color:#0a0a0a}@media only screen and (min-width:1000px){body #ajax-content-wrap.no-scroll{min-height:calc(100vh - 90px);height:calc(100vh - 90px)!important;}}@media only screen and (min-width:1000px){#page-header-wrap.fullscreen-header,#page-header-wrap.fullscreen-header #page-header-bg,html:not(.nectar-box-roll-loaded) .nectar-box-roll > #page-header-bg.fullscreen-header,.nectar_fullscreen_zoom_recent_projects,#nectar_fullscreen_rows:not(.afterLoaded) > div{height:calc(100vh - 89px);}.wpb_row.vc_row-o-full-height.top-level,.wpb_row.vc_row-o-full-height.top-level > .col.span_12{min-height:calc(100vh - 89px);}html:not(.nectar-box-roll-loaded) .nectar-box-roll > #page-header-bg.fullscreen-header{top:90px;}.nectar-slider-wrap[data-fullscreen="true"]:not(.loaded),.nectar-slider-wrap[data-fullscreen="true"]:not(.loaded) .swiper-container{height:calc(100vh - 88px)!important;}.admin-bar .nectar-slider-wrap[data-fullscreen="true"]:not(.loaded),.admin-bar .nectar-slider-wrap[data-fullscreen="true"]:not(.loaded) .swiper-container{height:calc(100vh - 88px - 32px)!important;}}.admin-bar[class*="page-template-template-no-header"] .wpb_row.vc_row-o-full-height.top-level,.admin-bar[class*="page-template-template-no-header"] .wpb_row.vc_row-o-full-height.top-level > .col.span_12{min-height:calc(100vh - 32px);}body[class*="page-template-template-no-header"] .wpb_row.vc_row-o-full-height.top-level,body[class*="page-template-template-no-header"] .wpb_row.vc_row-o-full-height.top-level > .col.span_12{min-height:100vh;}@media only screen and (max-width:999px){.using-mobile-browser #nectar_fullscreen_rows:not(.afterLoaded):not([data-mobile-disable="on"]) > div{height:calc(100vh - 116px);}.using-mobile-browser .wpb_row.vc_row-o-full-height.top-level,.using-mobile-browser .wpb_row.vc_row-o-full-height.top-level > .col.span_12,[data-permanent-transparent="1"].using-mobile-browser .wpb_row.vc_row-o-full-height.top-level,[data-permanent-transparent="1"].using-mobile-browser .wpb_row.vc_row-o-full-height.top-level > .col.span_12{min-height:calc(100vh - 116px);}html:not(.nectar-box-roll-loaded) .nectar-box-roll > #page-header-bg.fullscreen-header,.nectar_fullscreen_zoom_recent_projects,.nectar-slider-wrap[data-fullscreen="true"]:not(.loaded),.nectar-slider-wrap[data-fullscreen="true"]:not(.loaded) .swiper-container,#nectar_fullscreen_rows:not(.afterLoaded):not([data-mobile-disable="on"]) > div{height:calc(100vh - 63px);}.wpb_row.vc_row-o-full-height.top-level,.wpb_row.vc_row-o-full-height.top-level > .col.span_12{min-height:calc(100vh - 63px);}body[data-transparent-header="false"] #ajax-content-wrap.no-scroll{min-height:calc(100vh - 63px);height:calc(100vh - 63px);}}#ajax-content-wrap .vc_row.top_margin_5pct{margin-top:5%;}#ajax-content-wrap .vc_row.bottom_margin_5pct{margin-bottom:5%;}.screen-reader-text,.nectar-skip-to-content:not(:focus){border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;}.row .col img:not([srcset]){width:auto;}.row .col img.img-with-animation.nectar-lazy:not([srcset]){width:100%;}
|
||
</style>
|
||
<link rel="stylesheet" id="salient-child-style-css" href="../wp-content/themes/salient-child/style.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="redux-google-fonts-salient_redux-css" href="../_external/fonts.googleapis.com/css" type="text/css" media="all">
|
||
<script type="text/javascript" id="asenha-public-js-extra">
|
||
/* <![CDATA[ */
|
||
var phpVars = {"externalPermalinksEnabled":"1"};
|
||
/* ]]> */
|
||
</script>
|
||
<script type="text/javascript" src="../wp-content/plugins/admin-site-enhancements-pro/assets/js/external-permalinks.js" id="asenha-public-js"></script>
|
||
<script type="text/javascript" id="breeze-prefetch-js-extra">
|
||
/* <![CDATA[ */
|
||
var breeze_prefetch = {"local_url":"https:\/\/mintel.me","ignore_remote_prefetch":"1","ignore_list":["wp-admin","wp-login.php"]};
|
||
/* ]]> */
|
||
</script>
|
||
<script type="text/javascript" src="../wp-content/plugins/breeze/assets/js/js-front-end/breeze-prefetch-links.min.js" id="breeze-prefetch-js"></script>
|
||
<script></script><link rel="https://api.w.org/" href="https://mintel.me/wp-json/"><link rel="alternate" title="JSON" type="application/json" href="https://mintel.me/wp-json/wp/v2/posts/896"><meta name="generator" content="WordPress 6.7.4">
|
||
<link rel="shortlink" href="https://mintel.me/?p=896">
|
||
<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://mintel.me/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fmintel.me%2Fwhy-i-abandoned-default-exports-completely%2F">
|
||
<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://mintel.me/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fmintel.me%2Fwhy-i-abandoned-default-exports-completely%2F&format=xml">
|
||
<noscript>
|
||
<style>
|
||
/**
|
||
* Reinstate scrolling for non-JS clients
|
||
*/
|
||
.simplebar-content-wrapper {
|
||
scrollbar-width: auto;
|
||
-ms-overflow-style: auto;
|
||
}
|
||
|
||
.simplebar-content-wrapper::-webkit-scrollbar,
|
||
.simplebar-hide-scrollbar::-webkit-scrollbar {
|
||
display: initial;
|
||
width: initial;
|
||
height: initial;
|
||
}
|
||
</style>
|
||
</noscript>
|
||
<script type="javascript/text">
|
||
(function(){
|
||
window.device_wrapper.can_use_premium_code = ;
|
||
})();
|
||
</script>
|
||
<script type="text/javascript"> var root = document.getElementsByTagName( "html" )[0]; root.setAttribute( "class", "js" ); </script>
|
||
<style>
|
||
.client-logo {
|
||
width: auto !important;
|
||
height: 50px !important;
|
||
}
|
||
</style>
|
||
<meta name="generator" content="Powered by WPBakery Page Builder - drag and drop page builder for WordPress.">
|
||
<link rel="icon" href="../wp-content/uploads/2024/11/cropped-Favicon-2-100x100.png" sizes="32x32">
|
||
<link rel="icon" href="../wp-content/uploads/2024/11/cropped-Favicon-2-300x300.png" sizes="192x192">
|
||
<link rel="apple-touch-icon" href="../wp-content/uploads/2024/11/cropped-Favicon-2-300x300.png">
|
||
<meta name="msapplication-TileImage" content="https://mintel.me/wp-content/uploads/2024/11/cropped-Favicon-2-300x300.png">
|
||
<noscript><style> .wpb_animate_when_almost_visible { opacity: 1; }</style></noscript></head><body class="post-template-default single single-post postid-896 single-format-standard material wpb-js-composer js-comp-ver-7.8.1 vc_responsive" data-footer-reveal="false" data-footer-reveal-shadow="none" data-header-format="centered-menu" data-body-border="off" data-boxed-style="" data-header-breakpoint="1000" data-dropdown-style="minimal" data-cae="easeOutCubic" data-cad="1300" data-megamenu-width="contained" data-aie="none" data-ls="fancybox" data-apte="standard" data-hhun="1" data-fancy-form-rcs="default" data-form-style="default" data-form-submit="regular" data-is="minimal" data-button-style="rounded_shadow" data-user-account-button="false" data-flex-cols="true" data-col-gap="default" data-header-inherit-rc="false" data-header-search="false" data-animated-anchors="true" data-ajax-transitions="false" data-full-width-header="false" data-slide-out-widget-area="true" data-slide-out-widget-area-style="slide-out-from-right-hover" data-user-set-ocm="off" data-loading-animation="none" data-bg-header="false" data-responsive="1" data-ext-responsive="true" data-ext-padding="40" data-header-resize="0" data-header-color="custom" data-cart="false" data-remove-m-parallax="" data-remove-m-video-bgs="" data-m-animate="1" data-force-header-trans-color="light" data-smooth-scrolling="0" data-permanent-transparent="false" style="--scroll-bar-w: 0px">
|
||
|
||
<script type="text/javascript">
|
||
(function(window, document) {
|
||
|
||
if(navigator.userAgent.match(/(Android|iPod|iPhone|iPad|BlackBerry|IEMobile|Opera Mini)/)) {
|
||
document.body.className += " using-mobile-browser mobile ";
|
||
}
|
||
if(navigator.userAgent.match(/Mac/) && navigator.maxTouchPoints && navigator.maxTouchPoints > 2) {
|
||
document.body.className += " using-ios-device ";
|
||
}
|
||
|
||
if( !("ontouchstart" in window) ) {
|
||
|
||
var body = document.querySelector("body");
|
||
var winW = window.innerWidth;
|
||
var bodyW = body.clientWidth;
|
||
|
||
if (winW > bodyW + 4) {
|
||
body.setAttribute("style", "--scroll-bar-w: " + (winW - bodyW - 4) + "px");
|
||
} else {
|
||
body.setAttribute("style", "--scroll-bar-w: 0px");
|
||
}
|
||
}
|
||
|
||
})(window, document);
|
||
</script><a href="#ajax-content-wrap" class="nectar-skip-to-content">Skip to main content</a><div class="ocm-effect-wrap"><div class="ocm-effect-wrap-inner">
|
||
<div id="header-space" data-header-mobile-fixed="1" style="height: 64px;"></div>
|
||
|
||
<div id="header-outer" data-has-menu="true" data-has-buttons="no" data-header-button_style="hover_scale" data-using-pr-menu="true" data-mobile-fixed="1" data-ptnm="false" data-lhe="text_reveal" data-user-set-bg="#000000" data-format="centered-menu" data-permanent-transparent="false" data-megamenu-rt="0" data-remove-fixed="0" data-header-resize="0" data-cart="false" data-transparency-option="" data-box-shadow="large" data-shrink-num="6" data-using-secondary="0" data-using-logo="1" data-logo-height="50" data-m-logo-height="40" data-padding="20" data-full-width="false" data-condense="false">
|
||
|
||
<div id="search-outer" class="nectar">
|
||
<div id="search">
|
||
<div class="container">
|
||
<div id="search-box">
|
||
<div class="inner-wrap">
|
||
<div class="col span_12">
|
||
<form role="search" action="https://mintel.me/" method="GET">
|
||
<input type="text" name="s" id="s" value="" aria-label="Search" placeholder="Type what you're looking for">
|
||
|
||
<span>Hit enter to search or ESC to close</span>
|
||
<input type="hidden" name="post_type" value="post"> </form>
|
||
</div><!--/span_12-->
|
||
</div><!--/inner-wrap-->
|
||
</div><!--/search-box-->
|
||
<div id="close"><a href="#"><span class="screen-reader-text">Close Search</span>
|
||
<span class="close-wrap"> <span class="close-line close-line1"></span> <span class="close-line close-line2"></span> </span> </a></div>
|
||
</div><!--/container-->
|
||
</div><!--/search-->
|
||
</div><!--/search-outer-->
|
||
|
||
<header id="top">
|
||
<div class="container">
|
||
<div class="row">
|
||
<div class="col span_3">
|
||
<ul class="left-aligned-ocm" data-user-set="off"><li class="slide-out-widget-area-toggle" data-icon-animation="simple-transform" data-custom-color="false"><div> <a href="#slide-out-widget-area" aria-label="Navigation Menu" aria-expanded="false" role="button" class="closed"> <span class="screen-reader-text">Menu</span><span aria-hidden="true"> <i class="lines-button x2" data-variant="even_lines"> <i class="lines"></i> </i> </span> </a> </div></li></ul> <a id="logo" href="../index.html" data-supplied-ml-starting-dark="false" data-supplied-ml-starting="false" data-supplied-ml="false">
|
||
<img class="stnd skip-lazy dark-version ls-is-cached br-loaded" src="../wp-content/uploads/2024/11/Logo-2-white.png" width="5102" height="1169" alt="Marc Mintel"> </a>
|
||
</div><!--/span_3-->
|
||
|
||
<div class="col span_9 col_last">
|
||
<div class="nectar-mobile-only mobile-header"><div class="inner"></div></div>
|
||
<div class="slide-out-widget-area-toggle mobile-icon slide-out-from-right-hover" data-custom-color="false" data-icon-animation="simple-transform">
|
||
<div> <a href="#slide-out-widget-area" role="button" aria-label="Navigation Menu" aria-expanded="false" class="closed">
|
||
<span class="screen-reader-text">Menu</span><span aria-hidden="true"> <i class="lines-button x2" data-variant="even_lines"> <i class="lines"></i> </i> </span> </a></div>
|
||
</div>
|
||
|
||
<nav aria-label="Main Menu">
|
||
<ul class="sf-menu">
|
||
<li id="menu-item-428" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-home nectar-regular-menu-item menu-item-428"><a href="../index.html"><span class="menu-title-text"><span class="nectar-text-reveal-button"><span class="nectar-text-reveal-button__text" data-text="Home">Home</span></span></span></a></li>
|
||
<li id="menu-item-809" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-809"><a href="../blog/index.html"><span class="menu-title-text"><span class="nectar-text-reveal-button"><span class="nectar-text-reveal-button__text" data-text="Blog">Blog</span></span></span></a></li>
|
||
<li id="menu-item-561" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-561"><a href="../work/index.html"><span class="menu-title-text"><span class="nectar-text-reveal-button"><span class="nectar-text-reveal-button__text" data-text="Work">Work</span></span></span></a></li>
|
||
<li id="menu-item-498" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-498"><a href="../services/index.html"><span class="menu-title-text"><span class="nectar-text-reveal-button"><span class="nectar-text-reveal-button__text" data-text="Services">Services</span></span></span></a></li>
|
||
<li id="menu-item-552" class="menu-item menu-item-type-post_type menu-item-object-page nectar-regular-menu-item menu-item-552"><a href="../bio/index.html"><span class="menu-title-text"><span class="nectar-text-reveal-button"><span class="nectar-text-reveal-button__text" data-text="Bio">Bio</span></span></span></a></li>
|
||
</ul>
|
||
<ul class="buttons sf-menu" data-user-set-ocm="off">
|
||
|
||
<li id="menu-item-427" class="menu-item menu-item-type-custom menu-item-object-custom nectar-regular-menu-item menu-item-btn-style-button_extra-color-1 menu-item-hover-text-reveal menu-item-427"><a href="mailto:marc@mintel.me"><span class="menu-title-text"><span class="nectar-text-reveal-button"><span class="nectar-text-reveal-button__text" data-text="Contact Me">Contact Me</span></span></span></a></li>
|
||
|
||
</ul>
|
||
|
||
</nav>
|
||
|
||
<div class="logo-spacing" data-using-image="true"><img class="hidden-logo br-lazy" src="../wp-content/uploads/2024/11/Logo-2-white.png" alt="Marc Mintel" width="5102" height="1169"></div>
|
||
</div><!--/span_9-->
|
||
|
||
|
||
</div><!--/row-->
|
||
</div><!--/container-->
|
||
</header>
|
||
</div>
|
||
<div id="ajax-content-wrap">
|
||
|
||
|
||
<div class="container-wrap no-sidebar" data-midnight="dark" data-remove-post-date="0" data-remove-post-author="0" data-remove-post-comment-number="0">
|
||
<div class="container main-content" style="--nectar-sticky-top-distance: 114px;">
|
||
|
||
|
||
<div class="row featured-media-under-header" data-animate="fade_in">
|
||
<div class="featured-media-under-header__content">
|
||
<div class="featured-media-under-header__cat-wrap">
|
||
|
||
<span class="meta-category nectar-inherit-label">
|
||
|
||
<a class="nectar-inherit-border-radius nectar-bg-hover-accent-color development" href="../development/index.html">Development</a></span> </div>
|
||
|
||
<h1 class="entry-title">Why I abandoned default exports completely</h1>
|
||
<div class="featured-media-under-header__meta-wrap nectar-link-underline-effect">
|
||
<span class="meta-author vcard author"><img class="avatar avatar-40 photo ls-is-cached br-loaded" src="https://secure.gravatar.com/avatar/9995bf9c77ffc601663c67e2aa30cfd0?s=40&d=mm&r=g" alt="Marc" data-brsrcset="https://secure.gravatar.com/avatar/9995bf9c77ffc601663c67e2aa30cfd0?s=80&d=mm&r=g 2x" height="40" width="40" decoding="async" srcset="https://secure.gravatar.com/avatar/9995bf9c77ffc601663c67e2aa30cfd0?s=80&d=mm&r=g 2x"><span><span class="fn nectar-inherit-label"><a href="../author/5fc2b097d603989b/index.html" title="Posts by Marc" rel="author">Marc</a></span> <span class="meta-date date updated">January 13, 2025</span></span></span> </div>
|
||
|
||
</div>
|
||
<div class="featured-media-under-header__featured-media" data-has-img="true" data-align="center" data-format="default">
|
||
<span class="post-featured-img page-header-bg-image"><img class="attachment-full size-full wp-post-image ls-is-cached br-loaded" src="../wp-content/uploads/2025/01/carbon-1.webp" width="1920" height="1727" alt="" decoding="async" data-brsrcset="https://mintel.me/wp-content/uploads/2025/01/carbon-1.webp 1920w, https://mintel.me/wp-content/uploads/2025/01/carbon-1-300x270.webp 300w, https://mintel.me/wp-content/uploads/2025/01/carbon-1-1024x921.webp 1024w, https://mintel.me/wp-content/uploads/2025/01/carbon-1-768x691.webp 768w, https://mintel.me/wp-content/uploads/2025/01/carbon-1-1536x1382.webp 1536w" data-brsizes="(max-width: 1920px) 100vw, 1920px" sizes="(max-width: 1920px) 100vw, 1920px" srcset="../wp-content/uploads/2025/01/carbon-1.webp 1920w, ../wp-content/uploads/2025/01/carbon-1-300x270.webp 300w, ../wp-content/uploads/2025/01/carbon-1-1024x921.webp 1024w, ../wp-content/uploads/2025/01/carbon-1-768x691.webp 768w, ../wp-content/uploads/2025/01/carbon-1-1536x1382.webp 1536w"></span> </div>
|
||
</div>
|
||
<div class="row">
|
||
|
||
|
||
<div class="post-area col span_12 col_last" role="main">
|
||
|
||
|
||
<article id="post-896" class="post-896 post type-post status-publish format-standard has-post-thumbnail category-development">
|
||
|
||
<div class="inner-wrap">
|
||
|
||
<div class="post-content" data-hide-featured-media="0">
|
||
|
||
<div class="content-inner">
|
||
<div id="fws_697df006dff7c" data-column-margin="default" data-midnight="dark" class="wpb_row vc_row-fluid vc_row top_margin_5pct bottom_margin_5pct" style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-animation-delay="" data-bg-overlay="false"><div class="inner-wrap row-bg-layer"><div class="row-bg viewport-desktop" style=""></div></div></div><div class="row_col_wrap_12 col span_12 dark left">
|
||
<div class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding inherit_tablet inherit_phone " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0">
|
||
<div class="vc_column-inner">
|
||
<div class="wpb_wrapper">
|
||
|
||
<div class="wpb_text_column wpb_content_element ">
|
||
<div class="wpb_wrapper">
|
||
<h1 data-pm-slice="1 1 []">Why I abandoned default exports completely</h1>
|
||
<p>If you’re a TypeScript developer, you’ve probably used default exports at some point. They seem convenient, right? But after a few years of working with both default and named exports, I’ve made a decision: I’m done with default exports. Permanently.</p>
|
||
<p>Here’s why.</p>
|
||
<h2>Default exports are ambiguous</h2>
|
||
<p>The biggest problem with default exports is that they lack clarity. When you see:</p>
|
||
<pre><code>import something from './module';</code></pre>
|
||
<p>What is <code>something</code>? Is it a function? A class? An object? A constant? You have no idea unless you open that file. Compare that to:</p>
|
||
<pre><code>import { usefulFunction } from './module';</code></pre>
|
||
<p>Now it’s clear what you’re importing.</p>
|
||
<p>Default exports hide the intent of your code. When someone else (or future you) looks at the import statement, they’ll have to guess what’s being imported unless they know the module by heart.</p>
|
||
<h2>Refactoring headaches</h2>
|
||
<p>Imagine this scenario: You have a file with a default export function.</p>
|
||
<pre><code>export default function processOrder(order) {
|
||
// do something
|
||
}</code></pre>
|
||
<p>Later, you decide to add another utility function to the file:</p>
|
||
<pre><code>function validateOrder(order) {
|
||
// validation logic
|
||
}
|
||
|
||
export default function processOrder(order) {
|
||
// do something
|
||
}</code></pre>
|
||
<p>Oops. Now you need to rename the default export to a named one because you can’t have two default exports. So you do:</p>
|
||
<pre><code>export { processOrder, validateOrder };</code></pre>
|
||
<p>Now, you have to update every file that imports <code>processOrder</code>. And if you’re dealing with a large codebase, this can be a nightmare.</p>
|
||
<p>Had you used named exports from the start, this wouldn’t be a problem. Refactoring would be as simple as adding another named export.</p>
|
||
<h2>Inconsistent imports</h2>
|
||
<p>Default exports can lead to inconsistent import statements. For example:</p>
|
||
<pre><code>import processOrder from './order-utils';
|
||
import { validateOrder } from './order-utils';</code></pre>
|
||
<p>Why is one a default import and the other a named import from the same file? It’s confusing.</p>
|
||
<p>Using named exports makes everything consistent:</p>
|
||
<pre><code>import { processOrder, validateOrder } from './order-utils';</code></pre>
|
||
<p>Much cleaner.</p>
|
||
<h2>Better IDE support</h2>
|
||
<p>Most modern IDEs offer auto-completion for named exports. When you type:</p>
|
||
<pre><code>import { ... } from './module';</code></pre>
|
||
<p>the IDE will suggest all available exports from that module. With default exports, you don’t get this benefit. You have to remember the exact name of the default export, which is annoying.</p>
|
||
<h2>Easier to identify unused code</h2>
|
||
<p>With named exports, tools like ESLint can easily identify unused imports and exports. With default exports, it’s trickier. The tooling has to assume that the default export might be used in a dynamic way.</p>
|
||
<p>Named exports make it clear which functions, classes, or constants are actually in use.</p>
|
||
<h2>Better collaboration</h2>
|
||
<p>If you’re working in a team, consistency matters. Using named exports forces everyone to be explicit about what they’re importing and exporting. This leads to fewer misunderstandings and cleaner code reviews.</p>
|
||
<h2>How to migrate from default to named exports</h2>
|
||
<p>If you’ve been using default exports heavily and want to switch, here’s a simple migration strategy:</p>
|
||
<ol start="1" data-spread="false">
|
||
<li><strong>Identify default exports:</strong> Look for all instances of <code>export default</code> in your codebase.</li>
|
||
<li><strong>Rename them to named exports:</strong> Change them to <code>export const</code> or <code>export function</code> as needed.</li>
|
||
<li><strong>Update import statements:</strong> Replace default imports with named imports across your project.</li>
|
||
<li><strong>Run tests:</strong> Make sure everything still works as expected.</li>
|
||
</ol>
|
||
<h2>Final thoughts</h2>
|
||
<p>Default exports aren’t inherently evil, but they introduce more problems than they solve. In TypeScript, where clarity and type safety are key, named exports win every time.</p>
|
||
<p>So yeah, I’ve abandoned default exports completely. It’s one of those changes that’s made my TypeScript projects cleaner, more maintainable, and less frustrating to work with. And I’m not going back.</p>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div></div>
|
||
</div>
|
||
</div><!--/post-content-->
|
||
|
||
</div><!--/inner-wrap-->
|
||
|
||
</article>
|
||
</div><!--/post-area-->
|
||
|
||
|
||
</div><!--/row-->
|
||
|
||
<div class="row">
|
||
|
||
<div data-n-parallax-bg="true" data-parallax-speed="subtle" data-post-header-style="image_under" class="blog_next_prev_buttons vc_row-fluid standard_section" data-style="parallax_next_only" data-midnight="light"> <div class="parallax-layer-wrap"><div class="parallax-layer"><div class="post-bg-img" style="background-image: url(https://mintel.me/wp-content/uploads/2025/01/CleanShot-2025-01-08-at-14.29.07@2x.webp);"></div></div></div>
|
||
<div class="col span_12 dark left">
|
||
<div class="inner">
|
||
<span><i class="next-prev-title nectar-blog-single-section-title nectar-inherit-h4">Next Post</i></span><a href="../i-was-wrong-about-test-driven-development-with-ai-and-cline-just-slapped-me-with-the-truth/index.html" rel="prev"><h3>I was wrong about test driven development with AI (and Cline just slapped me with the truth)</h3></a> </div>
|
||
</div>
|
||
<span class="bg-overlay"></span>
|
||
<span class="full-link"><a href="../i-was-wrong-about-test-driven-development-with-ai-and-cline-just-slapped-me-with-the-truth/index.html" rel="prev">I was wrong about test driven development with AI (and Cline just slapped me with the truth)</a></span>
|
||
|
||
|
||
</div>
|
||
|
||
<div class="row vc_row-fluid full-width-section related-post-wrap" data-using-post-pagination="true" data-midnight="dark"> <div class="row-bg-wrap"><div class="row-bg"></div></div> <h3 class="related-title nectar-blog-single-section-title nectar-inherit-h4 ">You May Also Like</h3><div class="row span_12 blog-recent related-posts columns-3" data-style="material" data-color-scheme="light">
|
||
<div class="col span_4">
|
||
<div class="inner-wrap post-967 post type-post status-publish format-standard has-post-thumbnail category-development">
|
||
|
||
<a href="../why-valueobjects-make-your-app-rock-solid/index.html" class="img-link"><span class="post-featured-img"><img class="nectar-lazy skip-lazy br-lazy" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA2MDAgNDAzJz48L3N2Zz4=" data-breeze="https://mintel.me/wp-content/uploads/2025/01/carbon-7-600x403.webp" height="403" width="600" alt="" data-nectar-img-src="https://mintel.me/wp-content/uploads/2025/01/carbon-7-600x403.webp" http%3a%2f%2fwww.w3.org%2f2000%2fsvg'%20viewbox%3d'0%200%20600%20403'%2f%3e"=""></span></a>
|
||
<span class="meta-category"><a class="development" href="../development/index.html">Development</a></span>
|
||
<a class="entire-meta-link" href="../why-valueobjects-make-your-app-rock-solid/index.html"><span class="screen-reader-text">Why ValueObjects make your app rock solid (and how they’re the hidden gem of DDD)</span></a>
|
||
|
||
<div class="article-content-wrap">
|
||
<div class="post-header">
|
||
<span class="meta">
|
||
</span>
|
||
<h3 class="title">Why ValueObjects make your app rock solid (and how they’re the hidden gem of DDD)</h3>
|
||
</div><!--/post-header-->
|
||
|
||
<div class="grav-wrap"><img class="avatar avatar-70 photo br-lazy" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA3MCA3MCc+PC9zdmc+" data-breeze="https://secure.gravatar.com/avatar/9995bf9c77ffc601663c67e2aa30cfd0?s=70&d=mm&r=g" alt="Marc" data-brsrcset="https://secure.gravatar.com/avatar/9995bf9c77ffc601663c67e2aa30cfd0?s=140&d=mm&r=g 2x" height="70" width="70" decoding="async"><div class="text"> <a href="../author/5fc2b097d603989b/index.html">Marc</a><span>January 22, 2025</span></div></div> </div>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<div class="col span_4">
|
||
<div class="inner-wrap post-817 post type-post status-publish format-standard has-post-thumbnail category-development">
|
||
|
||
<a href="../my-learnings-moving-on-with-ai-driven-development/index.html" class="img-link"><span class="post-featured-img"><img class="nectar-lazy skip-lazy br-lazy" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA2MDAgNDAzJz48L3N2Zz4=" data-breeze="https://mintel.me/wp-content/uploads/2025/01/CleanShot-2025-01-06-at-22.11.28@2x-600x403.webp" height="403" width="600" alt="" data-nectar-img-src="https://mintel.me/wp-content/uploads/2025/01/CleanShot-2025-01-06-at-22.11.28@2x-600x403.webp" http%3a%2f%2fwww.w3.org%2f2000%2fsvg'%20viewbox%3d'0%200%20600%20403'%2f%3e"=""></span></a>
|
||
<span class="meta-category"><a class="development" href="../development/index.html">Development</a></span>
|
||
<a class="entire-meta-link" href="../my-learnings-moving-on-with-ai-driven-development/index.html"><span class="screen-reader-text">My learnings moving on with AI-driven development</span></a>
|
||
|
||
<div class="article-content-wrap">
|
||
<div class="post-header">
|
||
<span class="meta">
|
||
</span>
|
||
<h3 class="title">My learnings moving on with AI-driven development</h3>
|
||
</div><!--/post-header-->
|
||
|
||
<div class="grav-wrap"><img class="avatar avatar-70 photo br-lazy" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA3MCA3MCc+PC9zdmc+" data-breeze="https://secure.gravatar.com/avatar/9995bf9c77ffc601663c67e2aa30cfd0?s=70&d=mm&r=g" alt="Marc" data-brsrcset="https://secure.gravatar.com/avatar/9995bf9c77ffc601663c67e2aa30cfd0?s=140&d=mm&r=g 2x" height="70" width="70" decoding="async"><div class="text"> <a href="../author/5fc2b097d603989b/index.html">Marc</a><span>December 6, 2024</span></div></div> </div>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<div class="col span_4">
|
||
<div class="inner-wrap post-846 post type-post status-publish format-standard has-post-thumbnail category-development">
|
||
|
||
<a href="../i-was-wrong-about-test-driven-development-with-ai-and-cline-just-slapped-me-with-the-truth/index.html" class="img-link"><span class="post-featured-img"><img class="nectar-lazy skip-lazy br-lazy" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA2MDAgNDAzJz48L3N2Zz4=" data-breeze="https://mintel.me/wp-content/uploads/2025/01/CleanShot-2025-01-08-at-14.29.07@2x-600x403.webp" height="403" width="600" alt="" data-nectar-img-src="https://mintel.me/wp-content/uploads/2025/01/CleanShot-2025-01-08-at-14.29.07@2x-600x403.webp" http%3a%2f%2fwww.w3.org%2f2000%2fsvg'%20viewbox%3d'0%200%20600%20403'%2f%3e"=""></span></a>
|
||
<span class="meta-category"><a class="development" href="../development/index.html">Development</a></span>
|
||
<a class="entire-meta-link" href="../i-was-wrong-about-test-driven-development-with-ai-and-cline-just-slapped-me-with-the-truth/index.html"><span class="screen-reader-text">I was wrong about test driven development with AI (and Cline just slapped me with the truth)</span></a>
|
||
|
||
<div class="article-content-wrap">
|
||
<div class="post-header">
|
||
<span class="meta">
|
||
</span>
|
||
<h3 class="title">I was wrong about test driven development with AI (and Cline just slapped me with the truth)</h3>
|
||
</div><!--/post-header-->
|
||
|
||
<div class="grav-wrap"><img class="avatar avatar-70 photo br-lazy" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA3MCA3MCc+PC9zdmc+" data-breeze="https://secure.gravatar.com/avatar/9995bf9c77ffc601663c67e2aa30cfd0?s=70&d=mm&r=g" alt="Marc" data-brsrcset="https://secure.gravatar.com/avatar/9995bf9c77ffc601663c67e2aa30cfd0?s=140&d=mm&r=g 2x" height="70" width="70" decoding="async"><div class="text"> <a href="../author/5fc2b097d603989b/index.html">Marc</a><span>January 8, 2025</span></div></div> </div>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
</div></div>
|
||
<div class="comments-section" data-author-bio="false">
|
||
</div>
|
||
|
||
</div><!--/row-->
|
||
|
||
</div><!--/container main-content-->
|
||
</div><!--/container-wrap-->
|
||
|
||
<div class="nectar-social fixed" data-position="" data-rm-love="0" data-color-override="override"><a href="#"><i class="icon-default-style steadysets-icon-share"></i></a><div class="nectar-social-inner"><a class="facebook-share nectar-sharing" href="#" title="Share this"> <i class="fa fa-facebook"></i> <span class="social-text">Share</span> </a><a class="twitter-share nectar-sharing" href="#" title="Share this"> <i class="fa icon-salient-x-twitter"></i> <span class="social-text">Share</span> </a><a class="linkedin-share nectar-sharing" href="#" title="Share this"> <i class="fa fa-linkedin"></i> <span class="social-text">Share</span> </a><a class="pinterest-share nectar-sharing" href="#" title="Pin this"> <i class="fa fa-pinterest"></i> <span class="social-text">Pin</span> </a></div></div><style>
|
||
.nectar-shape-divider-wrap {
|
||
position: absolute;
|
||
top: auto;
|
||
bottom: 0;
|
||
left: 0;
|
||
right: 0;
|
||
width: 100%;
|
||
height: 150px;
|
||
z-index: 3;
|
||
transform: translateZ(0);
|
||
}
|
||
.post-area.span_9 .nectar-shape-divider-wrap {
|
||
overflow: hidden;
|
||
}
|
||
.nectar-shape-divider-wrap[data-front="true"] {
|
||
z-index: 50;
|
||
}
|
||
.nectar-shape-divider-wrap[data-style="waves_opacity"] svg path:first-child {
|
||
opacity: 0.6;
|
||
}
|
||
|
||
.nectar-shape-divider-wrap[data-style="curve_opacity"] svg path:nth-child(1),
|
||
.nectar-shape-divider-wrap[data-style="waves_opacity_alt"] svg path:nth-child(1) {
|
||
opacity: 0.15;
|
||
}
|
||
.nectar-shape-divider-wrap[data-style="curve_opacity"] svg path:nth-child(2),
|
||
.nectar-shape-divider-wrap[data-style="waves_opacity_alt"] svg path:nth-child(2) {
|
||
opacity: 0.3;
|
||
}
|
||
.nectar-shape-divider {
|
||
width: 100%;
|
||
left: 0;
|
||
bottom: -1px;
|
||
height: 100%;
|
||
position: absolute;
|
||
}
|
||
.nectar-shape-divider-wrap.no-color .nectar-shape-divider {
|
||
fill: #fff;
|
||
}
|
||
@media only screen and (max-width: 999px) {
|
||
.nectar-shape-divider-wrap:not([data-using-percent-val="true"]) .nectar-shape-divider {
|
||
height: 75%;
|
||
}
|
||
.nectar-shape-divider-wrap[data-style="clouds"]:not([data-using-percent-val="true"]) .nectar-shape-divider {
|
||
height: 55%;
|
||
}
|
||
}
|
||
@media only screen and (max-width: 690px) {
|
||
.nectar-shape-divider-wrap:not([data-using-percent-val="true"]) .nectar-shape-divider {
|
||
height: 33%;
|
||
}
|
||
.nectar-shape-divider-wrap[data-style="clouds"]:not([data-using-percent-val="true"]) .nectar-shape-divider {
|
||
height: 33%;
|
||
}
|
||
}
|
||
|
||
#ajax-content-wrap .nectar-shape-divider-wrap[data-height="1"] .nectar-shape-divider,
|
||
#ajax-content-wrap .nectar-shape-divider-wrap[data-height="1px"] .nectar-shape-divider {
|
||
height: 1px;
|
||
}.nectar-shape-divider-wrap[data-position="top"] {
|
||
top: -1px;
|
||
bottom: auto;
|
||
}
|
||
.nectar-shape-divider-wrap[data-position="top"] {
|
||
transform: rotate(180deg)
|
||
}#ajax-content-wrap .vc_row.inner_row.right_padding_20pct .row_col_wrap_12_inner,
|
||
.nectar-global-section .vc_row.inner_row.right_padding_20pct .row_col_wrap_12_inner {
|
||
padding-right: 20%;
|
||
} .wpb_column.border_style_solid > .vc_column-inner,
|
||
.wpb_column.border_style_solid > .n-sticky > .vc_column-inner {
|
||
border-style: solid;
|
||
}@media only screen and (min-width: 1000px) {
|
||
.nectar-highlighted-text.font_size_3vw h1,
|
||
.nectar-highlighted-text.font_size_3vw h2,
|
||
.nectar-highlighted-text.font_size_3vw h3,
|
||
.nectar-highlighted-text.font_size_3vw h4,
|
||
.nectar-highlighted-text.font_size_3vw h5,
|
||
.nectar-highlighted-text.font_size_3vw h6,
|
||
.nectar-highlighted-text.font_size_3vw p {
|
||
font-size: 3vw;
|
||
line-height: 1.1em;
|
||
}}
|
||
.nectar-highlighted-text[data-style="regular_underline"].font_size_3vw em:before,
|
||
.nectar-highlighted-text[data-style="half_text"].font_size_3vw em:before {
|
||
bottom: 0.07em;
|
||
}@keyframes nectarStrokeAnimation {
|
||
0% {
|
||
stroke-dashoffset: 1;
|
||
opacity: 0;
|
||
}
|
||
1% {
|
||
opacity: 1;
|
||
}
|
||
100% {
|
||
stroke-dashoffset: 0;
|
||
}
|
||
}.nectar-highlighted-text .nectar-scribble {
|
||
position: absolute;
|
||
left: 0;
|
||
top: 0;
|
||
z-index: -1;
|
||
}
|
||
.nectar-highlighted-text .nectar-scribble path {
|
||
stroke-dasharray: 1;
|
||
stroke-dashoffset: 1;
|
||
opacity: 0;
|
||
}
|
||
.nectar-highlighted-text em.animated .nectar-scribble path {
|
||
stroke-linecap: round;
|
||
opacity: 1;
|
||
animation: nectarStrokeAnimation 1.3s cubic-bezier(0.65,0,0.35,1) forwards;
|
||
}
|
||
.nectar-highlighted-text[data-style="scribble"] em {
|
||
background-image: none!important;
|
||
}body .nectar-scribble.circle {
|
||
width: 130%;
|
||
height: 140%;
|
||
top: -20%;
|
||
left: -15%;
|
||
}@media only screen and (max-width: 999px) {
|
||
.nectar-cta.display_tablet_inherit {
|
||
display: inherit;
|
||
}
|
||
}@media only screen and (max-width: 999px) { .vc_row.bottom_padding_tablet_20pct {
|
||
padding-bottom: 20%!important;
|
||
} }@media only screen and (max-width: 999px) { .vc_row.top_padding_tablet_10pct {
|
||
padding-top: 10%!important;
|
||
} }@media only screen and (max-width: 999px) { .vc_row.bottom_padding_tablet_10pct {
|
||
padding-bottom: 10%!important;
|
||
} }@media only screen and (max-width: 999px) { .vc_row.top_padding_tablet_20pct {
|
||
padding-top: 20%!important;
|
||
} }@media only screen and (max-width: 690px) {
|
||
.nectar-cta.display_phone_inherit {
|
||
display: inherit;
|
||
}
|
||
}</style><div class="nectar-global-section nectar_hook_global_section_footer"><div class="container normal-container row">
|
||
<div id="fws_697df006e869c" data-column-margin="default" data-midnight="light" data-top-percent="10%" data-bottom-percent="5%" class="wpb_row vc_row-fluid vc_row full-width-section top_padding_tablet_20pct bottom_padding_tablet_10pct" style="padding-top: calc(100vw * 0.10); padding-bottom: calc(100vw * 0.05); "><div class="row-bg-wrap" data-bg-animation="none" data-bg-animation-delay="" data-bg-overlay="false"><div class="inner-wrap row-bg-layer"><div class="row-bg viewport-desktop using-bg-color" style="background-color: #000000; "></div></div></div><div class="row_col_wrap_12 col span_12 light left">
|
||
<div class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding inherit_tablet inherit_phone " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0">
|
||
<div class="vc_column-inner">
|
||
<div class="wpb_wrapper">
|
||
<div id="fws_697df006eff9d" data-midnight="" data-column-margin="default" class="wpb_row vc_row-fluid vc_row inner_row right_padding_20pct" style=""><div class="row-bg-wrap"> <div class="row-bg"></div> </div><div class="row_col_wrap_12_inner col span_12 left">
|
||
<div class="vc_col-sm-12 wpb_column column_container vc_column_container col child_column no-extra-padding inherit_tablet inherit_phone " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0">
|
||
<div class="vc_column-inner">
|
||
<div class="wpb_wrapper">
|
||
<div class="nectar-highlighted-text font_size_3vw " data-style="scribble" data-exp="default" data-using-custom-color="false" data-animation-delay="false" data-color="" data-color-gradient="" style=""><h2>Don’t wait any longer, <em>transform<svg class="nectar-scribble circle" role="presentation" viewBox="0 0 800 350" preserveAspectRatio="none"><path style="animation-duration: 1.8s;" transform="matrix(0.9791300296783447,0,0,0.9791300296783447,400,179)" stroke-linejoin="miter" fill-opacity="0" pathLength="1" stroke-miterlimit="4" stroke="#2365ff" stroke-opacity="1" stroke-width="8" d=" M253,-161 C253,-161 -284.78900146484375,-201.4600067138672 -376,-21 C-469,163 67.62300109863281,174.2100067138672 256,121 C564,34 250.82899475097656,-141.6929931640625 19.10700035095215,-116.93599700927734"></path></svg></em> your product visuals now.</h2>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div></div>
|
||
<div id="fws_697df006f1d5a" data-column-margin="default" data-midnight="light" data-top-percent="5%" data-bottom-percent="10%" class="wpb_row vc_row-fluid vc_row full-width-section top_padding_tablet_10pct bottom_padding_tablet_20pct" style="padding-top: calc(100vw * 0.05); padding-bottom: calc(100vw * 0.10); "><div class="row-bg-wrap" data-bg-animation="none" data-bg-animation-delay="" data-bg-overlay="false"><div class="inner-wrap row-bg-layer"><div class="row-bg viewport-desktop using-bg-color" style="background-color: #000000; "></div></div></div><div class="nectar-shape-divider-wrap " style=" height:1px;" data-height="1" data-front="" data-style="straight_section" data-position="top"><svg class="nectar-shape-divider" aria-hidden="true" fill="#5b5b5b" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 10" preserveAspectRatio="none"> <polygon points="104 10, 104 0, 0 0, 0 10"></polygon> </svg></div><div class="row_col_wrap_12 col span_12 light left">
|
||
<div class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding inherit_tablet inherit_phone border_style_solid " data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="" data-delay="0">
|
||
<div class="vc_column-inner">
|
||
<div class="wpb_wrapper">
|
||
<div id="fws_697df006f2d10" data-midnight="" data-column-margin="default" class="wpb_row vc_row-fluid vc_row inner_row vc_row-o-equal-height vc_row-flex vc_row-o-content-top" style=""><div class="row-bg-wrap"> <div class="row-bg"></div> </div><div class="row_col_wrap_12_inner col span_12 left">
|
||
<div class="vc_col-sm-6 vc_col-md-6 wpb_column column_container vc_column_container col child_column has-animation no-extra-padding inherit_tablet inherit_phone " data-t-w-inherits="small_desktop" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-animation="fade-in-from-bottom" data-delay="0">
|
||
<div class="vc_column-inner">
|
||
<div class="wpb_wrapper">
|
||
|
||
<div class="wpb_text_column wpb_content_element ">
|
||
<div class="wpb_wrapper">
|
||
<h5>Get in touch</h5>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
|
||
<div class="nectar-cta alignment_tablet_default alignment_phone_default display_tablet_inherit display_phone_inherit " data-color="default" data-using-bg="false" data-display="block" data-style="underline" data-alignment="left" data-text-color="std"><h4> <span class="link_wrap"><a class="link_text" role="button" href="mailto:marc@mintel.me">marc@mintel.me</a></span></h4></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div></div>
|
||
</div></div>
|
||
<div id="footer-outer" data-midnight="light" data-cols="4" data-custom-color="false" data-disable-copyright="true" data-matching-section-color="true" data-copyright-line="false" data-using-bg-img="false" data-bg-img-overlay="0.8" data-full-width="false" data-using-widget-area="false" data-link-hover="default">
|
||
|
||
|
||
</div><!--/footer-outer-->
|
||
|
||
|
||
<div id="slide-out-widget-area-bg" class="slide-out-from-right-hover dark">
|
||
</div>
|
||
|
||
<div id="slide-out-widget-area" class="slide-out-from-right-hover" data-dropdown-func="separate-dropdown-parent-link" data-back-txt="Back">
|
||
|
||
<div class="inner-wrap">
|
||
<div class="inner" data-prepend-menu-mobile="false">
|
||
|
||
<a class="slide_out_area_close" href="#"><span class="screen-reader-text">Close Menu</span>
|
||
<span class="close-wrap"> <span class="close-line close-line1"></span> <span class="close-line close-line2"></span> </span> </a>
|
||
|
||
|
||
<div class="off-canvas-menu-container" role="navigation">
|
||
<ul class="menu">
|
||
<li id="menu-item-483" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-home menu-item-483"><a href="../index.html">Home</a></li>
|
||
<li id="menu-item-497" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-497"><a href="../services/index.html">Services</a></li>
|
||
|
||
</ul>
|
||
|
||
|
||
</div>
|
||
|
||
|
||
</div>
|
||
|
||
<div class="bottom-meta-wrap"><ul class="off-canvas-social-links"><li><a target="_blank" rel="noopener noreferrer" href="https://www.linkedin.com/in/marc-mintel-03b193134/"><span class="screen-reader-text">linkedin</span><i class="fa fa-linkedin"></i></a></li><li><a target="_blank" rel="noopener noreferrer" href="https://github.com/mmintel"><span class="screen-reader-text">github</span><i class="fa fa-github-alt"></i></a></li><li><a target="_blank" rel="noopener noreferrer" href="https://instagram.com/marcmintel"><span class="screen-reader-text">instagram</span><i class="fa fa-instagram"></i></a></li><li><a target="_blank" rel="noopener noreferrer" href="https://wa.me/491707777093?text=Hey%20there%2C%20got%20your%20number%20from%20your%20website.%20I%20just%20wanted%20to%20ask%20if..."><span class="screen-reader-text">whatsapp</span><i class="fa fa-whatsapp"></i></a></li><li><a target="_blank" rel="noopener noreferrer" href="mailto:marc@mintel.me"><span class="screen-reader-text">email</span><i class="fa fa-envelope"></i></a></li></ul></div><!--/bottom-meta-wrap--></div> <!--/inner-wrap-->
|
||
</div>
|
||
|
||
</div> <!--/ajax-content-wrap-->
|
||
|
||
</div></div><!--/ocm-effect-wrap--> <script>
|
||
(function () {
|
||
const isMatchingClass = (linkRule, href, classes) => {
|
||
return classes.includes(linkRule.value)
|
||
}
|
||
const isMatchingDomain = (linkRule, href, classes) => {
|
||
if(!URL.canParse(href)) {
|
||
return false
|
||
}
|
||
|
||
const url = new URL(href)
|
||
|
||
return linkRule.value === url.host
|
||
}
|
||
const isMatchingExtension = (linkRule, href, classes) => {
|
||
if(!URL.canParse(href)) {
|
||
return false
|
||
}
|
||
|
||
const url = new URL(href)
|
||
|
||
return url.pathname.endsWith('.' + linkRule.value)
|
||
}
|
||
const isMatchingSubdirectory = (linkRule, href, classes) => {
|
||
if(!URL.canParse(href)) {
|
||
return false
|
||
}
|
||
|
||
const url = new URL(href)
|
||
|
||
return url.pathname.startsWith('/' + linkRule.value + '/')
|
||
}
|
||
const isMatchingProtocol = (linkRule, href, classes) => {
|
||
if(!URL.canParse(href)) {
|
||
return false
|
||
}
|
||
|
||
const url = new URL(href)
|
||
|
||
return url.protocol === linkRule.value + ':'
|
||
}
|
||
const isMatch = (linkRule, href, classes) => {
|
||
switch (linkRule.type) {
|
||
case 'class':
|
||
return isMatchingClass(linkRule, href, classes)
|
||
case 'domain':
|
||
return isMatchingDomain(linkRule, href, classes)
|
||
case 'extension':
|
||
return isMatchingExtension(linkRule, href, classes)
|
||
case 'subdirectory':
|
||
return isMatchingSubdirectory(linkRule, href, classes)
|
||
case 'protocol':
|
||
return isMatchingProtocol(linkRule, href, classes)
|
||
default:
|
||
return false;
|
||
}
|
||
}
|
||
const track = (element) => {
|
||
const href = element.href ?? null
|
||
const classes = Array.from(element.classList)
|
||
const parentsToMatch = [
|
||
'li.menu-item', // Non-block menu item
|
||
'li.wp-block-navigation-item', // Block menu item
|
||
'div.wp-block-button', // Block button group
|
||
]
|
||
|
||
// When a WordPress menu or button allows a user customizable class, the class is
|
||
// placed on a parent element instead of the button/a. If the parent matches one
|
||
// of these elements, then it's classes should also be considered.
|
||
if(parentsToMatch.some((toMatch) => element.parentElement.matches(toMatch))) {
|
||
classes.push(...Array.from(element.parentElement.classList))
|
||
}
|
||
|
||
const linkRules = [{"type":"extension","value":"pdf"},{"type":"extension","value":"zip"},{"type":"protocol","value":"mailto"},{"type":"protocol","value":"tel"}]
|
||
if(linkRules.length === 0) {
|
||
return
|
||
}
|
||
|
||
const hasMatch = linkRules.some((linkRule) => {
|
||
return isMatch(linkRule, href, classes)
|
||
})
|
||
|
||
if(!hasMatch) {
|
||
return
|
||
} else {
|
||
|
||
}
|
||
|
||
const url = "https://mintel.me/wp-content/uploads/iawp-click-endpoint.php";
|
||
const body = {
|
||
href: href,
|
||
classes: classes.join(' '),
|
||
...{"payload":{"resource":"singular","singular_id":896,"page":1},"signature":"8d5f293a780223329cdc5b0625c27aca"} };
|
||
|
||
if (navigator.sendBeacon) {
|
||
let blob = new Blob([JSON.stringify(body)], {
|
||
type: "application/json"
|
||
});
|
||
navigator.sendBeacon(url, blob);
|
||
} else {
|
||
const xhr = new XMLHttpRequest();
|
||
xhr.open("POST", url, true);
|
||
xhr.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
|
||
xhr.send(JSON.stringify(body))
|
||
}
|
||
}
|
||
document.addEventListener('mousedown', function (event) {
|
||
if (navigator.webdriver || /bot|crawler|spider|crawling|semrushbot|chrome-lighthouse/i.test(navigator.userAgent)) {
|
||
return;
|
||
}
|
||
|
||
const element = event.target.closest('a')
|
||
|
||
if(!element) {
|
||
return
|
||
}
|
||
|
||
const isPro = true
|
||
if(!isPro) {
|
||
return
|
||
}
|
||
|
||
// Don't track left clicks with this event. The click event is used for that.
|
||
if(event.button === 0) {
|
||
return
|
||
}
|
||
|
||
track(element)
|
||
})
|
||
document.addEventListener('click', function (event) {
|
||
if (navigator.webdriver || /bot|crawler|spider|crawling|semrushbot|chrome-lighthouse/i.test(navigator.userAgent)) {
|
||
return;
|
||
}
|
||
|
||
const element = event.target.closest('a, button')
|
||
|
||
if(!element) {
|
||
return
|
||
}
|
||
|
||
const isPro = true
|
||
if(!isPro) {
|
||
return
|
||
}
|
||
|
||
track(element)
|
||
})
|
||
document.addEventListener("DOMContentLoaded", function (e) {
|
||
if (document.hasOwnProperty("visibilityState") && document.visibilityState === "prerender") {
|
||
return;
|
||
}
|
||
|
||
if (navigator.webdriver || /bot|crawler|spider|crawling|semrushbot|chrome-lighthouse/i.test(navigator.userAgent)) {
|
||
return;
|
||
}
|
||
|
||
let referrer_url = null;
|
||
|
||
if (typeof document.referrer === 'string' && document.referrer.length > 0) {
|
||
referrer_url = document.referrer;
|
||
}
|
||
|
||
const params = location.search.slice(1).split('&').reduce((acc, s) => {
|
||
const [k, v] = s.split('=');
|
||
return Object.assign(acc, {[k]: v});
|
||
}, {});
|
||
|
||
const url = "https://mintel.me/wp-json/iawp/search";
|
||
const body = {
|
||
referrer_url,
|
||
utm_source: params.utm_source,
|
||
utm_medium: params.utm_medium,
|
||
utm_campaign: params.utm_campaign,
|
||
utm_term: params.utm_term,
|
||
utm_content: params.utm_content,
|
||
gclid: params.gclid,
|
||
...{"payload":{"resource":"singular","singular_id":896,"page":1},"signature":"8d5f293a780223329cdc5b0625c27aca"} };
|
||
|
||
if (navigator.sendBeacon) {
|
||
let blob = new Blob([JSON.stringify(body)], {
|
||
type: "application/json"
|
||
});
|
||
navigator.sendBeacon(url, blob);
|
||
} else {
|
||
const xhr = new XMLHttpRequest();
|
||
xhr.open("POST", url, true);
|
||
xhr.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
|
||
xhr.send(JSON.stringify(body))
|
||
}
|
||
});
|
||
})();
|
||
</script>
|
||
<script type="text/html" id="wpb-modifications"> window.wpbCustomElement = 1; </script><link data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" data-noptimize="" rel="stylesheet" id="main-styles-non-critical-css" href="../wp-content/themes/salient/css/build/style-non-critical.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="font-awesome-css" href="../wp-content/themes/salient/css/font-awesome.min.css" type="text/css" media="all">
|
||
<link data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" data-noptimize="" rel="stylesheet" id="fancyBox-css" href="../wp-content/themes/salient/css/build/plugins/jquery.fancybox.css" type="text/css" media="all">
|
||
<link rel="stylesheet" id="nectar-smooth-scroll-css" href="../wp-content/themes/salient/css/build/plugins/lenis.css" type="text/css" media="all">
|
||
<link data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" data-noptimize="" rel="stylesheet" id="nectar-ocm-core-css" href="../wp-content/themes/salient/css/build/off-canvas/core.css" type="text/css" media="all">
|
||
<link data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" data-noptimize="" rel="stylesheet" id="nectar-ocm-slide-out-right-hover-css" href="../wp-content/themes/salient/css/build/off-canvas/slide-out-right-hover.css" type="text/css" media="all">
|
||
<script type="text/javascript" src="../wp-content/plugins/device-wrapper/src/js/simplebar.min.js" id="device_wrapper-simplebar-js"></script>
|
||
<script type="text/javascript" src="../wp-content/plugins/device-wrapper/src/js/dragscroll.js" id="device_wrapper-dragscroll-js"></script>
|
||
<script type="text/javascript" src="../wp-includes/js/jquery/jquery.min.js" id="jquery-core-js"></script>
|
||
<script type="text/javascript" src="../wp-includes/js/jquery/jquery-migrate.min.js" id="jquery-migrate-js"></script>
|
||
<script type="text/javascript" src="../wp-content/plugins/device-wrapper/dist/front.build.js" id="device_wrapper-front-js-js"></script>
|
||
<script type="text/javascript" id="salient-social-js-extra">
|
||
/* <![CDATA[ */
|
||
var nectarLove = {"ajaxurl":"https:\/\/mintel.me\/wp-admin\/admin-ajax.php","postID":"896","rooturl":"https:\/\/mintel.me","loveNonce":"e2848542c4"};
|
||
/* ]]> */
|
||
</script>
|
||
<script type="text/javascript" src="../wp-content/plugins/salient-social/js/salient-social.js" id="salient-social-js"></script>
|
||
<script data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" type="salientlazyscript" data-salient-lazy-type="text/javascript" src="../wp-content/themes/salient/js/build/third-party/jquery.easing.min.js" id="jquery-easing-js"></script>
|
||
<script data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" type="salientlazyscript" data-salient-lazy-type="text/javascript" src="../wp-content/themes/salient/js/build/third-party/jquery.mousewheel.min.js" id="jquery-mousewheel-js"></script>
|
||
<script type="text/javascript" src="../wp-content/themes/salient/js/build/priority.js" id="nectar_priority-js"></script>
|
||
<script type="text/javascript" src="../wp-content/themes/salient/js/build/third-party/transit.min.js" id="nectar-transit-js"></script>
|
||
<script data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" type="salientlazyscript" data-salient-lazy-type="text/javascript" src="../wp-content/themes/salient/js/build/third-party/waypoints.js" id="nectar-waypoints-js"></script>
|
||
<script type="text/javascript" src="../wp-content/plugins/salient-portfolio/js/third-party/imagesLoaded.min.js" id="imagesLoaded-js"></script>
|
||
<script data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" type="salientlazyscript" data-salient-lazy-type="text/javascript" src="../wp-content/themes/salient/js/build/third-party/hoverintent.min.js" id="hoverintent-js"></script>
|
||
<script type="text/javascript" src="../wp-content/themes/salient/js/build/third-party/jquery.fancybox.js" id="fancyBox-js"></script>
|
||
<script type="text/javascript" src="../wp-content/themes/salient/js/build/third-party/anime.min.js" id="anime-js"></script>
|
||
<script data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" type="salientlazyscript" data-salient-lazy-type="text/javascript" src="../wp-content/themes/salient/js/build/third-party/superfish.js" id="superfish-js"></script>
|
||
<script type="text/javascript" id="nectar-frontend-js-extra">
|
||
/* <![CDATA[ */
|
||
var nectarLove = {"ajaxurl":"https:\/\/mintel.me\/wp-admin\/admin-ajax.php","postID":"896","rooturl":"https:\/\/mintel.me","disqusComments":"false","loveNonce":"e2848542c4","mapApiKey":""};
|
||
var nectarOptions = {"delay_js":"1","smooth_scroll":"true","smooth_scroll_strength":"50","quick_search":"false","react_compat":"disabled","header_entrance":"false","body_border_func":"default","body_border_mobile":"0","dropdown_hover_intent":"default","simplify_ocm_mobile":"0","mobile_header_format":"centered-menu","ocm_btn_position":"left","left_header_dropdown_func":"default","ajax_add_to_cart":"0","ocm_remove_ext_menu_items":"remove_images","woo_product_filter_toggle":"0","woo_sidebar_toggles":"true","woo_sticky_sidebar":"0","woo_minimal_product_hover":"default","woo_minimal_product_effect":"default","woo_related_upsell_carousel":"false","woo_product_variable_select":"default","woo_using_cart_addons":"false","view_transitions_effect":"gradient-wipe"};
|
||
var nectar_front_i18n = {"menu":"Menu","next":"Next","previous":"Previous","close":"Close"};
|
||
/* ]]> */
|
||
</script>
|
||
<script data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" type="salientlazyscript" data-salient-lazy-type="text/javascript" src="../wp-content/themes/salient/js/build/init.js" id="nectar-frontend-js"></script>
|
||
<script type="text/javascript" src="../wp-content/themes/salient/js/build/nectar-smooth-scroll.js" id="nectar-smooth-scroll-js"></script>
|
||
<script data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" type="salientlazyscript" data-salient-lazy-type="text/javascript" src="../wp-content/plugins/salient-core/js/third-party/touchswipe.min.js" id="touchswipe-js"></script>
|
||
<script type="text/javascript" src="../wp-content/plugins/breeze/assets/js/js-front-end/breeze-lazy-load.min.js" id="breeze-lazy-js"></script>
|
||
<script type="text/javascript" id="breeze-lazy-js-after">
|
||
/* <![CDATA[ */
|
||
document.querySelectorAll('img[data-breeze]').forEach(img=>{if(img.getBoundingClientRect().top<=window.innerHeight){img.src=img.getAttribute('data-breeze');img.removeAttribute('data-breeze')}});
|
||
/* ]]> */
|
||
</script>
|
||
<script data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" type="salientlazyscript" data-salient-lazy-type="text/javascript" src="../wp-content/plugins/js_composer_salient/assets/js/dist/js_composer_front.min.js" id="wpb_composer_front_js-js"></script>
|
||
<script data-pagespeed-no-defer="" data-nowprocket="" data-wpacu-skip="" data-no-optimize="" type="text/javascript" src="../wp-content/themes/salient/js/build/nectar-delay-javascript.js" id="salient-delay-js-js"></script>
|
||
<script></script>
|
||
|
||
|
||
</body></html><!-- Cache served by breeze CACHE - Last modified: Sat, 31 Jan 2026 12:05:27 GMT --> |