Releases: lvcascouto/axis
Releases · lvcascouto/axis
Release list
v3.0.0 — Modular HTML, 6-Layer Architecture & Yarn Workflow
[3.0.0] — 2026-09-28
AXIS V3 is a structural refactor focused on making the foundation more systematic, scalable and easier to adapt across real projects.
Added
- Sass architecture: Added the new
pages/layer, expanding the architecture from five to six layers:abstracts → base → layout → components → sections → pages. - Page isolation: Added
_home.scss,_error.scssand thepages/_index.scssexporter for route-specific styles. - HTML partials: Added
src/html/header.htmlandsrc/html/footer.htmlfor reusable markup fragments. - HTML injection: Added
vite-plugin-html-injectand<load src="...">support. - Multi-page readiness: Extended
vite.config.jswith Rollup entry-point configuration viarollupOptions.input. - Container tokens: Added the dedicated
abstracts/tokens/_container.scsspartial and separated container sizing from spacing. - PX → REM utility: Added the
rem()Sass function for converting unitless pixel values torem. - Animation layer: Added
base/_keyframes.scsswith reusablefade-in,slide-upandspinkeyframes. - Semantic token areas: Added dedicated semantic-token sections to applicable primitive token partials.
- Expanded motion scale: Added
600,800and1000duration tokens. - Expanded opacity scale: Added additional intermediate opacity tokens to provide a continuous range from
0to100. - Expanded radius scale: Added
none,2xland3xlradius tokens, including larger surface radii of 24px and 32px. - Expanded breakpoint map: Added
3xs,xxl,3xland4xlwhile extending the full responsive range. - Expanded container map: Added
xxland3xlcontainer sizes. - Yarn workflow: Added
yarn.lockand standardized project setup/build commands around Yarn.
Changed
- Sass architecture: Reorganized sections so
sections/contains only global/reusable blocks such as header and footer; page-specific rules now live underpages/. - Comment conventions: Standardized Sass and JavaScript comments around the
// ==block style. - Documentation structure: Removed secondary
README.mdfiles from implementation subdirectories and centralized project documentation at the repository root. - Token strategy: Unified the spacing scale around 2px/4px micro increments and 8px macro anchors.
- Typography scale: Replaced the previous Major Third-based typography scale with a dedicated stepped scale and renamed font-weight tokens to semantic names such as
regular,medium,semi-bold,boldandextra-bold. - Typography semantics: Moved base and heading semantic typography tokens into
abstracts/tokens/_typography.scss;base/_typography.scssnow consumes those tokens to set element styles. - Line-height and tracking: Added dedicated line-height and letter-spacing token scales.
- Units: Converted AXIS Sass values to
remwherever practical, including former pixel-based primitive values and component measurements. - Responsive mixins: Rewrote
respond()andrespond-up()to use CSS comparison syntax (width < valueandwidth >= value) instead of explicitmax-width/min-widthexpressions. - Semantic consumption: Adjusted components and project sections to consume semantic roles where appropriate instead of repeatedly mapping the same primitives in individual files.
- Base styles: Refined reset, global defaults and utility helpers for consistency with the V3 token system.
- Components: Updated Button, Card and Badge token usage and values to align with the revised scales and local semantic variables.
- JavaScript documentation: Cleaned
script.jsandglobal.jscomments and clarified the responsibilities ofbase/,components/andvendor/areas directly in code. - Package manager: Replaced the NPM-oriented workflow from V2 with Yarn-based dependency management in the project documentation and lockfile.
- Vite configuration: Reworked configuration comments in English and added HTML injection, multi-entry support and production asset output rules.
Removed
package-lock.json: Replaced by the trackedyarn.lockworkflow.- Subdirectory README files: Removed redundant README documentation from
src/,src/sass/andsrc/js/implementation folders. - Page-specific styles from
sections/: Route-specific rules are no longer expected in global sections. - Major Third font-size tokens: Removed the previous modular-ratio values from the primitive typography scale.
- Container sizes from spacing: Container constraints are now maintained in their own token partial.
- Old responsive query construction: The explicit
max-width/min-widthimplementation has been replaced by CSS range syntax.
v2.0.0 — The Vite & Modular Evolution
[2.0.0] — 2026-05-14
Added
- Build System: Full Vite integration for lightning-fast development (HMR) and automated production bundling.
- JavaScript Architecture: Modular architecture based on ES Modules (organized into
base/,components/, andvendor/directories). - Dependency Management: Implementation of
package.jsonfor professional package management via NPM. - Master Entry Point:
script.jsnow acts as the project orchestrator, importing both JavaScript modules and the Sass architecture. - Project Tooling: Added essential CLI commands:
npm run dev,npm run build, andnpm run preview.
Changed
- Sass Workflow: Migrated from
Live Sass Compilerextension to Vite's native compiler (in-memory processing). - Favicon Strategy: Moved
favicon.icoto the project root for improved compatibility with crawlers and legacy browsers. - Asset Resolution: Updated
index.htmlto use absolute paths, ensuring reliable asset loading across different environments. - Project Documentation: Refactored all README files to reflect the new automated workflow.
Removed
- Legacy Configuration: Deleted
.vscode/settings.json(removed dependency on third-party VS Code extensions). - Static CSS: Removed the
src/css/directory (styles are now processed dynamically in development). - Manual Minification: Removed the
dist/script.min.jsplaceholder (now handled automatically by the build pipeline).
v1.0.0 — Initial Release
Changelog
All notable changes to AXIS will be documented in this file.
The format follows Keep a Changelog and this project adheres to Semantic Versioning.
[1.0.0] — 2026/03/10
Initial release.
Added
Architecture
- Five-layer Sass architecture following ITCSS principles: Abstracts → Base → Layout → Components → Sections
- Single entry point
main.scsswith full@use/@forwardmodule system — no@import .vscode/settings.jsonpre-configured for Live Sass Compiler with dual output: expanded (src/css/) and compressed (dist/)
Design Tokens — 9 token files in abstracts/tokens/
_colors.scss— grayscale scale (white → black) + 4 functional colors (green, yellow, red, blue)_spacing.scss— 8pt macro grid, micro UI scale, and semantic tokens$gutterand$section-pad_typography.scss— Major Third (1.25) scale + UI sizes, weights, line-heights and letter-spacings_breakpoints.scss— 6 desktop-first breakpoints: xxl, xl, lg, md, sm, xs_motion.scss— 5 durations + 4 easing curves (standard, in, out, back)_elevation.scss— 5 shadow levels (none → lg)_layers.scss— semantic z-index map: back, base, header, dropdown, overlay, modal, tooltip_radius.scss— 6 radius values: xs, sm, md, lg, xl, full_opacity.scss— 6 levels: 0, 20, 40, 60, 80, 100
Functions — abstracts/functions/
bp()— safe breakpoint map access with@erroron invalid keysz()— semantic z-index access with@erroron invalid keyscolor-dark()/color-light()— color scaling viacolor.scale()
Mixins — abstracts/mixins/
container()— centered wrapper withpadding-inlineandmargin-inlineflex()— shorthand flex container with optional direction, justify, align and gapgrid()— fixed-column grid with configurable gapgrid-auto()— responsive auto-fit grid usingminmax(min(100%, $min), 1fr)respond()— desktop-firstmax-widthmedia queryrespond-up()—min-widthmedia query for progressive enhancementabsolute-center— position absolute + translate(-50%, -50%)focus-ring()— accessible outline with configurable color and offsetvisually-hidden— accessible SR-only patterntruncate()— single-line and multi-line text truncation via-webkit-line-clamp
Base layer
_reset.scss— box-sizing, margin/padding reset, accessiblefocus-visible,text-size-adjust,scroll-behavior_typography.scss— system-ui font stack, Major Third heading scale (h1 3.815rem → h6 1.25rem)_global.scss— responsive media, font inheritance for form elements,prefers-reduced-motion_utilities.scss—.sr-only, display, responsive visibility (.hide-{bp}-down/.hide-{bp}-up), position, text alignment,.truncate,.truncate-2,.no-select
Layout layer
_container.scss—.container(default 1200px) +.container-{sm|md|lg|xl|xxl}_flex.scss—.flexwithflex-col,flex-wrap,justify-{start|center|between|end},items-{stretch|center|start|end}_grid.scss—.grid-{1-12},.col-span-{1-12},.grid-auto, responsive variants.grid-{n}-{bp}and.col-span-{n}-{bp}
Components
_button.scss— base.button, sizes (sm/md/lg/xl), shapes (square/circle), variants (pill/ghost), disabled state_card.scss—.card,.is-interactivewith hover/focus/active transitions,.card__contentwithis-start,is-center,is-end_badge.scss— inline pill badge usingcurrentColor
Sections
_header.scssand_footer.scss— empty partials, ready for project-specific styles
Project structure
index.html— full meta setup: charset, viewport, SEO, Open Graph, Twitter Card, PWA manifest, faviconsassets/favicon/manifest.json— PWA manifest template with iconsdist/script.min.js— placeholder for manually minified JavaScript- READMEs in every directory with guidelines, tips and best practices
Upcoming Versions
Possible future improvements include:
- new base components
- documentation improvements
- example projects built with AXIS
For upcoming changes, see open issues and pull requests.
Full Changelog: https://github.com/lucas16716/axis/commits/v1.0.0