Rewdboy.Umbraco.EditLink 2.2.3

dotnet add package Rewdboy.Umbraco.EditLink --version 2.2.3
                    
NuGet\Install-Package Rewdboy.Umbraco.EditLink -Version 2.2.3
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Rewdboy.Umbraco.EditLink" Version="2.2.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Rewdboy.Umbraco.EditLink" Version="2.2.3" />
                    
Directory.Packages.props
<PackageReference Include="Rewdboy.Umbraco.EditLink" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Rewdboy.Umbraco.EditLink --version 2.2.3
                    
#r "nuget: Rewdboy.Umbraco.EditLink, 2.2.3"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Rewdboy.Umbraco.EditLink@2.2.3
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Rewdboy.Umbraco.EditLink&version=2.2.3
                    
Install as a Cake Addin
#tool nuget:?package=Rewdboy.Umbraco.EditLink&version=2.2.3
                    
Install as a Cake Tool

Umbraco Quick Edit Button

A lightweight, non-intrusive package for Umbraco 16+ that adds a floating Edit Page button on the frontend.

When a user is signed in to the Umbraco backoffice, the button links directly to the current document in edit mode.

Edit link button on the front-end

Available on NuGet and the Umbraco Marketplace.

Latest changes

  • 2.2.3: Dynamic paths are now used for both the backoffice edit URL and default CSS URL (works with custom backoffice path and virtual directories / PathBase).
  • 2.2.2: Improved accessibility (aria-label, screen-reader text, :focus-visible) and async TagHelper auth flow.

See full release notes in CHANGELOG.md.

Features

  • Visible only to authenticated backoffice users
  • No client-side JavaScript
  • Opens the current page directly in Umbraco edit mode
  • Configurable button corner and offset
  • Optional automatic CSS injection

Requirements

Umbraco .NET Package target
16.x 9 net9.0
17.x 10 net10.0
18.x 10 net10.0

This package does not support Umbraco 14/15.

Installation

Install via NuGet:

dotnet add package Rewdboy.Umbraco.EditLink

Register the TagHelper in ~/Views/_ViewImports.cshtml:

@addTagHelper *, Rewdboy.Umbraco.EditLink

Usage

Place the TagHelper in your layout (for example _Layout.cshtml):

<umbraco-edit-button model="Model" />

The model input supports:

  • IPublishedContent
  • ContentModel
  • custom models exposing a readable Content property of type IPublishedContent

Attributes

  • corner: top-right (default), top-left, bottom-right, bottom-left (also supports tr, tl, br, bl)
  • offset: optional pixel offset from the selected corner (negative values are clamped to 0)
  • inject-css: true by default, set to false to disable automatic stylesheet injection
  • css-url: optional custom stylesheet URL
  • title: button title / aria-label text (default: Edit page)

Examples:

<umbraco-edit-button model="Model" corner="tl" offset="24" />

<umbraco-edit-button model="Model" inject-css="false" />

<umbraco-edit-button model="Model" css-url="/css/my-editbutton.css" />

How it works / Security

The package uses OpenIddict server events to keep a small, dedicated cookie (REWDBOY_EDITLINK) in sync:

  1. On token generation, the package signs in a minimal principal on its own cookie scheme.
  2. On token revocation, it signs out that cookie.
  3. The TagHelper calls AuthenticateAsync on that scheme before rendering.
  4. The button is never rendered in preview mode.

The edit URL still points to Umbraco backoffice and therefore requires normal Umbraco authorization.

Custom styling

Default stylesheet path (when inject-css="true" and css-url is not set):

/_content/Rewdboy.Umbraco.EditLink/css/editbutton.css

This URL is generated as an absolute URL via Umbraco hosting APIs, so it works with custom app PathBase.

Available CSS classes:

  • .rewdboy-editlink-container
  • .edit-page-btn
  • .rewdboy-corner-top-right
  • .rewdboy-corner-top-left
  • .rewdboy-corner-bottom-right
  • .rewdboy-corner-bottom-left
  • .rewdboy-visually-hidden

Troubleshooting

  • Button not visible: verify @addTagHelper *, Rewdboy.Umbraco.EditLink exists in _ViewImports.cshtml.
  • Logged in but no button: sign out and sign back in to backoffice so the edit-link cookie is refreshed.
  • Preview mode: the button is intentionally hidden.
  • Custom backoffice path / virtual directory: supported in 2.2.3+.

License

MIT

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.2.3 45 10/2/2026
2.2.2 106 9/15/2026
2.2.1 96 9/13/2026
2.2.0 101 9/8/2026
2.1.2 337 1/30/2026
2.1.1 134 1/29/2026
2.1.0 128 1/13/2026
2.0.0 135 1/11/2026
1.1.2 134 1/11/2026
1.1.1 128 1/7/2026
1.1.0 132 1/7/2026
1.0.3 131 1/7/2026