This document combines all release notes in chronological order, providing a comprehensive view of Grimoire CSS's evolution.
Grimoire CSS enhances its magical arsenal with the v1.4.0 Aetheric Flow release, bringing refined argument handling, enhanced visual feedback through new spinners, and improved CLI flow. This update focuses on the quality-of-life improvements that make spell-casting (development) more intuitive and visually engaging.
- Enhanced Argument Handling: Improved flexibility with
Vec<String>
for better NodeJS integration - Expanded Visual Feedback: New spinners for better progress visualization
- Refined CLI Experience: Streamlined start_as_cli flow for more intuitive operation
- Unified Documentation: New combined RELEASES.md for complete release history
- Replaced
&[String]
withVec<String>
for more flexible argument processing - Enhanced compatibility with NodeJS wrapper implementation
- Improved argument collection and processing through
env::args()
- Added new spinner variations for different operation states
- Enhanced progress visualization during lengthy operations
- Improved user experience with more engaging loading indicators
- Streamlined
start_as_cli
workflow for better usability - Enhanced command processing and execution flow
- Improved overall CLI interaction experience
- API Refinements
- Updated argument type signatures for better integration
- Optimized argument handling in core functions
- Release History Enhancement
- Introduced RELEASES.md to provide a comprehensive view of all releases
- Combined all release notes in chronological order for better project history tracking
- Enhanced accessibility of historical changes and updates
Grimoire CSS breaks free from filesystem constraints with the v1.3.0 Liminal release, introducing in-memory processing capabilities and significant performance enhancements. This transformative update enables seamless integration with serverless environments and web frameworks while delivering an improved developer experience.
- In-Memory Processing: Process CSS entirely in memory for runtime and serverless environments.
- Enhanced Configuration: Flexible configuration management with improved browserslist support.
- Performance Boost: Significant optimizations across CSS generation and file operations.
- Refined CLI Experience: More intuitive and informative command-line interface.
-
In-Memory Mode
- Introduced
ConfigInMemory
for configuring in-memory operations. - Implemented
CssBuilderInMemory
for memory-based CSS processing. - Added
build_in_memory
function for flexible I/O operations. - Enhanced support for alternative storage solutions.
- Introduced
-
Configuration Improvements
- Restructured configuration with distinct
ConfigFs
andConfigInMemory
structures. - Enhanced browserslist handling with
.browserslistrc
support. - Improved configuration file organization and clarity.
- Restructured configuration with distinct
-
Performance Optimizations
- Replaced global static
MESSAGE_BUFFER
with thread-localRefCell
. - Improved CSS generation efficiency.
- Optimized file system operations for better performance.
- Replaced global static
-
CLI Experience
- Enhanced build progress UI with clearer feedback.
- Improved error reporting and debugging experience.
- Added comprehensive logging for better visibility.
- Updated
README
with in-memory processing examples - Enhanced configuration documentation
- Added serverless deployment guidelines
- Introduced
CssBuilderBase
for shared functionality - Modernized codebase structure
- Improved code maintainability
Grimoire CSS introduces a transformative set of features with the v1.2.0 Emberveil release, enhancing adaptive styling, dynamic color manipulation, and build efficiency. This update solidifies Grimoire's position as the CSS engine for developers who seek both power and flexibility.
- Fluid Sizing with mfs: Seamless, adaptive styles without media queries.
- Built-in Color Functions: Dynamic color manipulation adhering to CSS standards.
- Project Locking: Streamlined builds with automatic cleanup of outdated files.
- Extended CLI Support: Enhanced metrics and logging in library and CLI modes.
-
Fluid Size Functionality (#14)
- Introduced the
mfs
(Make Fluid Size) function for adaptive styling, eliminating reliance on media queries for fluid designs. - Improved
handle_grimoire_functions
to support future scalable enhancements.
- Introduced the
-
Built-in Color Functions (#15)
- Added dynamic color transformations such as lighten, darken, mix, and more.
- Developed a standalone color core module compliant with CSS Color Module Level 4.
- Enabled parsing and manipulation of CSS-standard color notations (e.g., rgb, hsl, hex).
-
Project Locking for Build Optimization (#16)
- Introduced an optional
grimoire.lock.json
file for tracking and cleaning up obsolete builds. - Enabled via
lock: true
ingrimoire.config.json
, defaulting to false for backward compatibility.
- Introduced an optional
-
Improved Logging and Metrics (#43)
- Added
start_as_cli
function to provide library-level access to CLI features like logging and execution timing. - Ensured consistency between CLI and library outputs for seamless integration.
- Added
- Updated README with new features
- New LICENSE
Grimoire CSS takes a major leap forward with the v1.1.0 Arcana release, bringing double the performance, hundreds of new animations, and significant ecosystem expansions. This update introduces Grimoire CSS JS (gcssjs), a dedicated JavaScript wrapper for seamless integration with the JavaScript ecosystem, alongside plugins for popular bundlers like Vite, Webpack, and Rollup. All related work for gcssjs and its plugins is now managed in a separate repository with its own GitHub Projects board for better organization and visibility.
- 2x Performance Boost thanks to optimized processing.
- 632 New Animations added to the core collection.
- Introduction of Grimoire CSS JS and plugins for modern JavaScript build tools.
- Comprehensive updates to documentation for easier onboarding.
-
Enhanced Components Initialization ((#8)[#8])
- Optimized initialization to improve performance by ensuring components initialize only once.
- Restructured component architecture for greater flexibility.
- Introduced a two-way dictionary to support both full and shorthand syntax options.
-
Improved Error Messaging and User Feedback ((#10)[#10])
- Enhanced error messages and feedback mechanisms for a better user experience.
-
Parallel Execution Improvements ((#11)[#11])
- Refactored CSSBuilder and Parser to process files sequentially, eliminating unnecessary parallelism (removed rayon dependency).
- Performance has doubled in scenarios involving large-scale projects, thanks to recent optimizations.
- Grimoire CSS JS (gcssjs) (#4):
- Introduced a JavaScript wrapper for Grimoire CSS, enabling seamless integration into the JavaScript ecosystem.
- Plugins for Bundlers:
- Separate Repository:
- All work related to Grimoire CSS JS and its plugins is now maintained in a dedicated repository with its own GitHub Projects board.
- Parser Regex Fix (#28)
- Improved regex patterns to support all types of quotes.
- Updated README with:
- Recent features.
- Installation instructions.
- Usage examples.
- Basic configuration guidelines.
- Improved logo.
The debut release of Grimoire CSS, introducing a powerful CSS system engine designed for flexibility and performance.