Jac-Client Release Notes#
This document provides a summary of new features, improvements, and bug fixes in each version of Jac-Client. For details on changes that might require updates to your existing code, please refer to the Breaking Changes page.
jac-client 0.2.4 (Unreleased)#
jac-client 0.2.3 (Latest Release)#
-
Nested Folder Structure Preservation: Implemented folder structure preservation during compilation, similar to TypeScript transpilation. Files in nested directories now maintain their relative paths in the compiled output, enabling proper relative imports across multiple directory levels and preventing file name conflicts. This allows developers to organize code in nested folders just like in modern JavaScript/TypeScript projects.
-
File System Organization Documentation: Added comprehensive documentation for organizing Jac client projects, including guides for the
app.jacentry point requirement, backend/frontend code separation patterns, and nested folder import syntax. Documentation
jac-client 0.2.1#
-
CSS File Support: Added full support for CSS in separate files, enabling cleaner styling structure. Expanded styling options with documented approaches for flexible UI customization. Documentation
-
Static Asset Serving: Introduced static asset serving, allowing images, fonts, and other files to be hosted easily. Updated documentation with step-by-step guides for implementation. Documentation
-
Architecture Documentation: Added comprehensive architecture documentation explaining jac-client's internal design and structure. View Architecture
-
.cl File Support: Added support for
.clfiles to separate client code from Jac code. Files with the.cl.jacextension can now be used to define client-side logic, improving organization and maintainability of Jac projects.
jac-client 0.2.0#
- Constructor Calls Supported: Constructor calls properly supported by automatically generating
newkeyword.
jac-client 0.1.0#
- Client Bundler Plugin Support: Extended the existing
pluggy-based plugin architecture to support custom client bundling implementations. Two static methods were added toJacMachineInterfaceto enable client bundler plugins: get_client_bundle_builder(): Returns the client bundle builder instance, allowing plugins to provide custom bundler implementations-
build_client_bundle(): Builds client bundles for modules, can be overridden by plugins to use custom bundling strategies -
ViteBundlerPlugin (jac-client): Official Vite-based bundler plugin providing production-ready JavaScript bundling with HMR, tree shaking, code splitting, TypeScript support, and asset optimization. Implements the
build_client_bundle()hook to replace default bundling with Vite's optimized build system. Installjac-clientlibrary from the source and use it for automatic Vite-powered client bundle generation. -
Import System Fix: Fixed relative imports in client bundles, added support for third-party npm modules, and implemented validation for pure JavaScript file imports.
-
PYPI Package Release: First stable release (v0.1.0) now available on PyPI. Install via
pip install jac-clientto get started with Vite-powered client bundling for your Jac projects.