Releases: newcore-network/opencore-cli
Releases · newcore-network/opencore-cli
v1.3.1
v1.3.0
OpenCore CLI v1.3.0
Summary
- Views now use a single shared Vite configuration by default, with a minimal
vanillafallback for simple HTML/JS/TS UIs. - The CLI now exposes a public
createOpenCoreViteConfighelper through@open-core/cli/viteso project-level Vite configs stay small and consistent. - PostCSS is auto-resolved from the OpenCore project root when present, which keeps Tailwind and older Chromium targets like RageMP CEF working without extra wiring.
- Legacy framework-specific CLI view builders were removed. React, Vue, Svelte, and Astro should now be configured in Vite, not in the CLI.
- Build path normalization and explicit-resource resolution were fixed so duplicated resource builds and stale overrides no longer happen when paths are written with or without
./.
Recommended Setup
- Keep a shared root Vite config next to
opencore.config.ts. - Use
@open-core/cli/viteto keep that config small. - Use
views.framework: 'vite'for React, Vue, Svelte, Astro, Tailwind, PostCSS, Sass, or any advanced UI setup. - Use
views.framework: 'vanilla'only for simple HTML/CSS/JS/TS views. - Add PostCSS only when your project needs it, such as older embedded browsers like RageMP CEF.
Breaking Change
- Existing configs using
views.framework: 'react','vue','svelte', or'astro'must be updated toviews.framework: 'vite'. - If those legacy framework values are still used, the CLI now fails with a clear migration error.
v1.2.2
OpenCore CLI v1.2.2
Added
- Added
postcss-preset-envsupport in the embedded Tailwind/PostCSS pipeline. When the package is detected in the project, CSS polyfills are applied automatically at stage 1, targeting Chrome 97 for RageMP and Chrome 103 for all other runtimes. Thecolor-mixfeature is explicitly enabled.
v1.2.1
OpenCore CLI v1.2.0
Added
- Added template manifest support with
oc.manifest.json, including runtime compatibility (fivem,redm,ragemp), game profiles (common,gta5,rdr3), template dependencies, and the schema file atschemas/oc-manifest.schema.json. - Added
opencore create manifestto generate starteroc.manifest.jsonfiles forcore/,resources/<name>/, andstandalones/<name>/with inferred compatibility defaults. - Added
opencore adapter checkto validate external adapter packages against the framework contract baseline, with--strictand--jsonoutput modes. - Added configurable
opencore devrestart strategies throughdev.restart.modewith support forauto,process,txadmin, andnone. - Added structured dev settings for
dev.bridge,dev.txAdmin, anddev.processso local executables and txAdmin restarts can be managed from config. - Added JSX/TSX support to views builds, plus
postcss-nestingsupport in the embedded Tailwind/PostCSS pipeline.
Changed
opencore clone --listnow shows manifest compatibility details when a template providesoc.manifest.json.opencore clone <template>now validates template/runtime compatibility against the current project'sopencore.config.ts, with--forceavailable to bypass the check.- Cloning into RageMP now removes copied
fxmanifest.luafiles automatically so CFX-specific manifests are not left inside RageMP resources. - Templates without a manifest remain supported and are treated as compatibility
unknownfor backward compatibility. - Views builds now support Vite-based projects with explicit framework opt-in while keeping non-Vite projects on the embedded build path.
- New starter projects and config documentation now reflect adapter-aware runtime defaults, nested dev settings, release channels, and RageMP-oriented examples.
Improved
- RageMP support is more complete across scaffolding and builds, including better server/client output defaults and runtime-specific build targets.
- Resource builds can now copy server-side binary folders more reliably, including platform-specific
bin/<platform>layouts. - npm/binary installation handling is safer: existing local binaries are reused when possible, and executable permissions are enforced on Unix systems.
- The publish/update flow now supports release channels, including
stableandbeta, in both the CLI updater and npm publishing workflow.
Fixed
- Fixed adapter module config parsing by stripping comments before parsing source content.
- Fixed generated views output to inject a missing
<link>tag when esbuild emits a CSS file that is not already referenced in HTML. - Fixed Vite views builds failing when no explicit framework was configured.
- Fixed several packaging and repository defaults, including starter
.gitignorecleanup and release workflow metadata updates.
Notes
- This release covers all changes currently present on
developrelative tomaster. - The manifest file is optional, but recommended for official and shared templates because clone-time compatibility checks now use it when available.
v1.2.0
OpenCore CLI v1.2.0
Added
- Added template manifest support with
oc.manifest.json, including runtime compatibility (fivem,redm,ragemp), game profiles (common,gta5,rdr3), template dependencies, and the schema file atschemas/oc-manifest.schema.json. - Added
opencore create manifestto generate starteroc.manifest.jsonfiles forcore/,resources/<name>/, andstandalones/<name>/with inferred compatibility defaults. - Added
opencore adapter checkto validate external adapter packages against the framework contract baseline, with--strictand--jsonoutput modes. - Added configurable
opencore devrestart strategies throughdev.restart.modewith support forauto,process,txadmin, andnone. - Added structured dev settings for
dev.bridge,dev.txAdmin, anddev.processso local executables and txAdmin restarts can be managed from config. - Added JSX/TSX support to views builds, plus
postcss-nestingsupport in the embedded Tailwind/PostCSS pipeline.
Changed
opencore clone --listnow shows manifest compatibility details when a template providesoc.manifest.json.opencore clone <template>now validates template/runtime compatibility against the current project'sopencore.config.ts, with--forceavailable to bypass the check.- Cloning into RageMP now removes copied
fxmanifest.luafiles automatically so CFX-specific manifests are not left inside RageMP resources. - Templates without a manifest remain supported and are treated as compatibility
unknownfor backward compatibility. - Views builds now support Vite-based projects with explicit framework opt-in while keeping non-Vite projects on the embedded build path.
- New starter projects and config documentation now reflect adapter-aware runtime defaults, nested dev settings, release channels, and RageMP-oriented examples.
Improved
- RageMP support is more complete across scaffolding and builds, including better server/client output defaults and runtime-specific build targets.
- Resource builds can now copy server-side binary folders more reliably, including platform-specific
bin/<platform>layouts. - npm/binary installation handling is safer: existing local binaries are reused when possible, and executable permissions are enforced on Unix systems.
- The publish/update flow now supports release channels, including
stableandbeta, in both the CLI updater and npm publishing workflow.
Fixed
- Fixed adapter module config parsing by stripping comments before parsing source content.
- Fixed generated views output to inject a missing
<link>tag when esbuild emits a CSS file that is not already referenced in HTML. - Fixed Vite views builds failing when no explicit framework was configured.
- Fixed several packaging and repository defaults, including starter
.gitignorecleanup and release workflow metadata updates.
Notes
- This release covers all changes currently present on
developrelative tomaster. - The manifest file is optional, but recommended for official and shared templates because clone-time compatibility checks now use it when available.
v1.1.0
OpenCore CLI v1.1.0
Added
- Add central adapter and runtime inspection to config loading, doctor output, and build defaults for FiveM and RageMP environments.
- Add runtime-aware scaffolding for
create resourceandcreate standalone, including manifest generation rules, runtime-specific TypeScript targets, and correct type packages. - Add RedM manifest defaults in generated
fxmanifest.luafiles withgame 'rdr3'and the requiredrdr3_warningdirective. - Add automated coverage for adapter detection, simplified feature scaffolding, and runtime-specific template generation.
Changed
- Standardize new project generation on a single default layout with
core/src/server.ts,core/src/client.ts, andcore/src/features/. - Remove architecture selection and all legacy architecture-specific generators and templates from
initandcreate featureflows. - Update documentation to reflect adapter-driven runtime behavior and the simplified default project structure.
Improved
- Improve embedded adapter injection and runtime bootstrap handling during builds.
- Skip redundant binary downloads when
opencore-cliis already available during installation.
v1.0.1
v1.0.0
OpenCore CLI v1.0.0
Highlights
- Automatic controller autoloading: automatic controller discovery and autoload import generation.
- More robust CI/non-TTY builds: new simple output mode for workflows (for example GitHub Actions).
- Improved source/controller validation: less ambiguity with generic decorators and framework imports.
- Configurable package manager support: npm, yarn, or pnpm across init/build.
- Template and DX upgrades: Node 22 + ES2022 target for generated templates.
New Features
- Controller autoload generation
- Added build-time autoload generation with automatic controller discovery.
- Generates files in
.opencore/src/.opencoredepending on project context. - Skips autoload generation for view-only builds to avoid unnecessary work.
- Autoload split server/client
- Autoload generation is now split by side (server/client) instead of a single combined file.
- Improved dynamic import resolution plugin for autoload imports.
- Package manager selection
- Added a unified flow to resolve and use
npm,yarn, orpnpmconsistently for install/run commands. - Integrated package manager selection with scaffolding and build commands.
- Added a unified flow to resolve and use
- Clone command enhancements
- Added
--branchflag toopencore cloneto list/clone templates from a specific branch.
- Added
- No-TTY / workflow mode
- Added non-interactive environment detection and simple output mode.
- Added explicit
build --output auto|tui|plainsupport. - Improved CI behavior by avoiding TUI/spinner output in logs.
Changes
- Templates/runtime target
- Updated templates to Node.js 22 (
fxmanifest). - Updated TypeScript target to
ES2022and module mode topreservefor new projects.
- Updated templates to Node.js 22 (
- Build validation
- Added validation to prevent invalid mixed server/client build configurations.
- Strengthened controller detection to prevent ambiguous decorator usage.
- Starter/project defaults
- Simplified starter project default configuration.
- Updated
.gitignoredefaults to exclude generated.opencorefiles.
Breaking Changes
- New projects now default to Node 22 and TypeScript ES2022 in templates.
- Autoload flow changed (server/client split), which may affect internal customizations relying on the previous combined layout.
- Decorator/controller validation is stricter and may flag previously tolerated ambiguous cases.
Notes
- This release establishes the
v1.0CLI foundation: reliable autoloading, safer builds, and better CI compatibility. - Recommended for CI:
opencore build --output=plainOPENCORE_DISABLE_UPDATE_CHECK=1for cleaner logs.
v0.5.2
OpenCore CLI v0.5.2
Highlights
- Platform-Specific Binary Support: Introduced
serverBinaryPlatformandserverBinariesconfiguration for automated, platform-aware management of server-side binaries (Windows, Linux, Darwin). - Astro Framework Support: Added support for Astro in views with static-only output mode, including custom build commands and automatic framework detection.
- Tailwind support (v3, v4): added support for tailwind, Tailwind is automatically detected and managed. (Testing)
Changes
- Server Binaries Management:
- Added
serverBinaryPlatformoption to support platform-specific binary selection frombin/<platform>folders. - Added
serverBinariesconfiguration to explicitly list paths for copying server-side binaries. - Implemented automatic detection and copying of the
bin/directory if present and not otherwise specified.
- Added
- Astro Integration:
- Added 'astro' to framework options in
ViewsConfig. - Added
buildCommandandoutputDirfields toViewsConfigfor advanced static framework customization.
- Added 'astro' to framework options in
- Static Asset Control:
- Added
forceIncludeoption toViewsConfigto explicitly include static files by filename pattern, even if they aren't imported in JS/CSS.
- Added
Fixes
- Improved platform normalization and auto-detection logic for binary resolution.
- Enhanced reliability of static asset inclusion during the build process.
v0.5.1
OpenCore CLI v0.5.1
Highlights
- Correct LogLevel Propagation: Ensured
LogLeveland OpenCore-specific defines (__OPENCORE_LOG_LEVEL__,__OPENCORE_TARGET__) are correctly applied to all resource build tasks, including UI/Views.
Changes
- Build Defines: Added
__OPENCORE_LOG_LEVEL__and__OPENCORE_TARGET__defines to all resource and standalone builds to preventReferenceError.
Fixes
- Fixed
ReferenceError: __OPENCORE_LOG_LEVEL__ is not definedin satellite resources. - Repository url fixed for
opencore clone --list