Migration
See how legacy systems create temporary fixes and how to reduce them safely.
Hacks
Hacks are sometimes necessary. The problem is not using one. The problem is pretending it is not a hack and letting it quietly become architecture with a desk and calendar invite.
Ask:
Is this temporary and urgent?
→ Hacks
Is this a real structural fix?
→ Component or layout
Is this only visual presentation?
→ Theme, not hacks A hack should be obvious, justified, and easier to remove later than it was to add today.
Production sometimes needs a fast correction before the real refactor is possible. The hacks layer gives those urgent fixes a visible quarantine zone instead of hiding them inside normal component files.
This protects the rest of the system from temporary decisions pretending to be design choices.
@layer hacks {
.legacy-slider {
inset-block-start: -1px;
}
} A good hack is isolated in the hacks layer, clearly named, and documented enough that nobody has to perform archaeology to remove it later.
.product-card {
margin-block-end: 12px !important;
}
.site-header {
z-index: 999999;
} These are not sustainable fixes. Hidden important declarations and panic z-index values create ongoing debugging overhead, not maintainable systems.