Releases: BeaconCMS/beacon
Releases · BeaconCMS/beacon
v0.5.1
Enhancements
- [Install] Cleaner design for the home page
Fixes
- [Install] Fix responsive aspects of the default home page
- [Deps] Replace
:oembedwith:req_embedto avoid compilation issues - [Components] Update dynamic_tag to use attr
:tag_nameon recent LiveView - Fix MDEx options in the Markdown template compiler
Chores
- Use fully-qualified module names in runtime layout
- [Tests] Don't depend on DB on Igniter/Tasks tests
v0.5.0
Enhancements
- [Router] Add option
:sessioninbeacon_site - [Media Library] Add customizable asset delete callbacks - @ddink
- [Visual Editor] Include assigns defined by
on_mountin the page context - [Tasks] Move
beacon_siteto the end of the router (mount it after other routes) - [Tasks] Rename default Phoenix route when adding a site at root "/" to avoid conflicts
Fixes
- [Migrations] Hardcode
inserted_atandupdated_at- @sltong - [Media Library] Don't crash on invalid search query
- [Proxy Endpoint] Check when host/port doesn't match
Chores
- [CI] Organize workflows and run Igniter tasks separately
Docs
- Clean up and fix typos
v0.4.2
Fixes
- Fix the select router prompt on
gen.sitewhen multiple routers are found
Docs
- Add
@doc typefor:event_handlers - Add
Beacon.Web.ErrorHTMLandBeacon.Web.Layoutsto web docs - Hide
Beacon.Web.RobotsTxtandBeacon.Web.SitemapXMLfrom docs (private modules)
v0.4.1
Enhancements
- Added new lifecycle stage
:after_unpublish_pageto execute hooks after a page is unpublished - Added
MediaLibrary.url_for_asset/2to return URL of an asset given the site and the file name gen.siteadded option--endpointto overwrite the generated site endpoint module name
Fixes
gen.sitedoesn't fail on pre-existing endpoint modulegen.sitedoesn't remove existing beacon runtime configgen.proxy_endpointadd missing:render_errorsconfig for ProxyEndpoint- Do not call compile-time endpoint functions during boot
- Pin esbuild version up to 0.8.x on OTP v24 and below (esbuild 0.0 requires OTP v25)
- Do not crash
url_for/1,url_for/2, orurls_for/1when provider is invalid - Fix rendering mermaid blocks on docs
v0.4.0
0.4.0 (2025-02-12)
Enhancements
- Added support for user-defined JS Hooks
- Added
Beacon.ProxyEndpointfor serving multiple domains within a single app mix beacon.gen.sitenow creates a new Endpoint per site- Added
--hostoption formix beacon.gen.siteto serve your site at an alternative domain - Beacon will now automatically generate a
robots.txtfor each domain served by your app - Beacon will now automatically generate a
sitemap_index.txtfor each domain, andsitemap.txtfor each site
Fixes
- Fixed a bug where MediaLibrary could check for file contents on the wrong node in multi-node deployments
- Fixed a missing function error when using Beacon with LiveView 1.0.0
- Visual Editor no longer crashes when attempting to edit a new page before saving
- Asset requests now properly follow
accept-encodingheaders - Prevent app Endpoints from accepting requests before Beacon is ready to serve them
Beacon.Confignow falls back to the default value when aniloption is provided- Live Data
query_paramsnow defauls to%{}
Docs
- Setup Tailwind v3
- Updated Deploy to Fly.io guides to properly install tailwind and esbuild
- Updated Install guides to use
igniter.installinstead of manually adding deps - Recipe on how to use external JS libraries in JS hooks
Chores
- Relax
:oembedto~> 0.4 - Make
:igniteroptional
Breaking Changes
- Require
esbuildbinary in releases - Require minimum
:igniterv0.5 beacon.install- removed command aliases-sand-pbeacon.gen.site- removed command aliases-sand-pbeacon.gen.tailwind_config- removed command alias-s
v0.3.3
v0.3.2
v0.3.1
v0.3.0
0.3.0 (2024-12-05)
Enhancements
- Support Phoenix LiveView 1.0
- Add
Beacon.Plugin the:beaconpipeline - Generate sites in the main host app alias to allow mixing routes
- Introduce global process lock for Loader Workers, preventing multiple workers from
attempting to compile the same module simultaneously - Page Warming - Beacon will now eagerly load a small number of pages (default 10) at boot time for SEO
Beacon.Configoption:page_warmingcan change the number of pages to warm, specify which pages, or disable warming per site- Only start reachable sites on boot to save resources
- Warn when a site defined in the router is not reachable
- Add
Beacon.Plugfor consistent rendering when using Page Variants mix beacon.installnow addsBeacon.Plugto host app Router
Fixes
- Rename arg from
nametotag_namein dynamic_tag component - Remove self dependency on ErrorPage module
- Allow
:adminsource for BeaconAssigns in unpublished Pages
Chores
- Isolate dynamic function calls
Documentation
- Add Deployment Topologies guide