Skip to content

Releases: symfony/reprise

v0.3.0

Choose a tag to compare

@Kocal Kocal released this 16 Jul 10:23
Immutable release. Only release title and notes can be modified.
v0.3.0
d988b09

What's Changed

  • [Vite] Collect entry CSS from facade chunks by @Kocal in #35
  • [Vite] Prefer rolldownOptions over deprecated rollupOptions by @Kocal in #36
  • [Asset] Track returned files in a set by @Kocal in #40
  • [Core] Pass resolved options to copyManifest by @Kocal in #39
  • [Core] Add shared path/URL normalization helpers by @Kocal in #38
  • [Stimulus] Extract a normalizeIdentifier helper by @Kocal in #37
  • [CI] Disable double-build on publish by @Kocal in #41

Full Changelog: v0.2.0...v0.3.0

v0.2.0

Choose a tag to compare

@Kocal Kocal released this 14 Jul 20:58
Immutable release. Only release title and notes can be modified.
v0.2.0
5791e5e

What's Changed

  • [Docs] Reorganize the documentation layout by @Kocal in #26
  • [Rsbuild] Serve Rsbuild through unplugin's createRsbuildPlugin by @Kocal in #27
  • [Rsbuild][Docs] Read rspack off the compiler, condense comments by @Kocal in #28
  • [Rsbuild] Fix binary assets corrupted since #27 by @Kocal in #29
  • [Package] Expose per-entry types through the exports map by @Kocal in #34
  • [Options] Treat a protocol-relative publicPath as absolute by @Kocal in #33
  • [Stimulus] Report a clear error for a missing or malformed controllers.json by @Kocal in #31
  • [TypeScript] Type-check the sources and run tsc in CI by @Kocal in #32
  • [Docs] Refresh AGENTS.md to match the shipped feature set by @Kocal in #30

Full Changelog: v0.1.0...v0.2.0

🎉 Symfony Reprise 0.1.0

Choose a tag to compare

@Kocal Kocal released this 13 Jul 07:54
Immutable release. Only release title and notes can be modified.
v0.1.0
27809b7

Webpack Encore served Symfony well for years, but it's no longer the tool to reach for. It isn't going anywhere: it's still widely used, and it stays maintained with bug fixes and dependency upgrades. For a new project, though, the ground has shifted.

Webpack has been overtaken by a generation of faster bundlers (Vite, Rsbuild, esbuild, Rolldown) and the JavaScript ecosystem moved with them. On a modern stack (TypeScript, Vue, Tailwind, Vitest, linting), Webpack feels dated, and Symfony AssetMapper's no-build approach only stretches so far.
The Symfony team made the case in symfony/symfony#59707: rather than keep building on aging infrastructure, integrate the modern tools.

That's why Symfony Reprise exists: it brings Encore's Symfony integration to Vite and Rsbuild, without reinventing what those bundlers already do.

The bundler owns the build: TypeScript, Sass/Less/PostCSS, JSX/Vue/Svelte, code splitting, content hashing, source maps, minification, and HMR -- all native, all fast.

Reprise owns the Symfony glue: entrypoints.json and manifest.json, Twig tags that render them (reprise_entry_link_tags / reprise_entry_script_tags), asset versioning through asset(), the dev server and HMR client wired into Twig, file copy, Stimulus controllers, CDN support, and Subresource Integrity.

Installation

composer require symfony/reprise
npm install @symfony/reprise --save-dev

Point your bundler config at @symfony/reprise/vite or @symfony/reprise/rsbuild, add reprise_entry_link_tags('app') and reprise_entry_script_tags('app') to your template, and you're set.

Documentation

The documentation has the full walkthrough, with Vite and Rsbuild side by side.

This is an early, experimental first release, so expect a few rough edges. Send your issues and feedback our way. 🙌