Contentment for Umbraco
contentment /kษnหtษntm(ษ)nt/ - a state of happiness and satisfaction
What is it?
This is a collection of Umbraco components that I have developed for use on my own Umbraco implementation projects.
Some components may be innovative, others may be a reimagining of existing components, property-editors, features and other community packages.
Why should I use it?
I'm sharing my code with the world. It is your choice (and responsibility) whether you would like to use it. No pressure or marketing spin from me.
What's on offer?
Let's take a look inside...
Property Editors
- Bytes - a read-only label to display file sizes in relative bytes.
- Code Editor - a code snippet editor, (using the ACE library that is bundled with Umbraco).
- Content Blocks - a block editor, configurable using element types.
- Data List - an editor that combines a custom data source with a custom list editor.
- Editor Notes - Similar to Notes, with enhanced UI options.
- Icon Picker - an editor to select an icon (from the Umbraco icon library).
- List Items - an editor to manage items with a name, value, icon and description.
- Notes - a read-only label to display rich-text instructional messages for content editors.
- Number Input - a numeric editor, with sizing configurations.
- Render Macro - a read-only label dynamically generated from an Umbraco Macro.
- Social Links - an editor to manage links for social network platforms.
- Templated Label - a display label, ideal for showing data from 3rd-party systems.
- Textbox List - a multi-textstring editor, adds a textbox for each item in a custom data source.
- Text Input - a textstring editor, configurable with HTML5 options.
Telemetry
Information about the telemetry feature.
Releases
Downloads are available on the releases page.
Installation
Please note...
- v4.x supports Umbraco v8.17.0 (on .NET 4.7.2), Umbraco v10 (on .NET 6.0) and Umbraco v11/v12 (on .NET 7.0), it will support those versions and above.
- v3.x supports Umbraco v8.17.0 and Umbraco v9.0.0, it will work on latest Umbraco v8.x and v9.x releases.
- v2.x was developed against Umbraco v8.14.0, it will still work on latest Umbraco v8.x releases.
- v1.x was developed against Umbraco v8.6.1, it will still work on latest Umbraco v8.x releases.
With Contentment v3+ on Umbraco v9+ (.NET 5+), you can only install a package from the NuGet package repository. For Umbraco v8.x, the package can still be installed from either Our Umbraco or NuGet package repositories.
To understand more about which Umbraco CMS versions are actively supported by Umbraco HQ, please see Umbraco's Long-term Support (LTS) and End-of-Life (EOL) policy.
NuGet package repository
To install from NuGet, you can run the following command from the dotnet
CLI:
dotnet add package Umbraco.Community.Contentment
Please note, that the
Umbraco.Community.Contentment
NuGet package is a placeholder package for future releases, it contains a dependency on two other packages,Our.Umbraco.Community.Contentment
(containing the web assets), andOur.Umbraco.Community.Contentment.Core
(containing the assembly code libraries).
Our Umbraco package repository
If you are using Umbraco v8.x, and prefer to install Contentment from the backoffice, the package can be downloaded from the Our Umbraco package repository:
https://our.umbraco.com/packages/backoffice-extensions/contentment/
Demo website
A demo website is available for testing purposes. (Please note, you will need to clone the repository and run locally.)
Documentation
Documentation for each of the components - with screenshots, use-cases and code examples - can be found in the /docs
folder.
Please note, you may find other components within Contentment that have not yet been documented.
Let's call those "life's little surprises".
Known issues
- Data List
- When using the Umbraco Content data source with an XPath query, inside a Nested Content or Block List editors, it will not be able to identify the contextual containing node ID. e.g. your XPath query will not work. See #30 for details.
- When using the Umbraco Content data source with an XPath query that contains a
$
prefix parameter, the preview will not display the items. See #120 for details. - With Umbraco v10 (Contentment v4), SQL data source does not support querying SQLite, (yet!) See #258 for details.
Roadmap
If you would like to know what is coming up in future releases, then take a look at the roadmap.
Support
I've been doing open source for a long time. I have suffered my fair share of burnout and empathy fatigue.
I reserve the right to address bug reports or feature requests in my own time, or ignore them completely.
Any feedback is welcome and appreciated. Please keep in mind, I am not your personal support developer.
If you are really stuck, do remember that the Umbraco community is amongst the friendliest on our planet, learn to embrace it. Ask for help on the Our Umbraco support forum, or the Community Discord Server, I am sure someone can help you there.
Contributions, collaborations, rules of engagement
If you would like to contribute to this project, please start a discussion before spending time and energy on a pull request. Your time is precious too.
Please make sure that you read the CONTRIBUTING guidelines.
This project is governed by a Code of Conduct. Play nice or go home. โ๏ธโค๏ธ๐๏ธ
If you are unhappy with the project or documentation, please help to identify specific issues and work towards resolving them. Otherwise you are completely free to not use this software, complain on your favourite social network, or go scream into the void.
Unacceptable behaviour towards myself (or contributors) may result in being blocked from accessing this repository.
License
Copyright ยฉ Lee Kelleher.
All source code is licensed under the Mozilla Public License.
A note about licensing
Historically, I used the MIT license for my open-source projects, regretfully I no longer feel MIT reflects my spirit of encouraging open source collaboration. The main difference with the Mozilla Public License is that if you make any modifications to the source code, then you must make those changes publicly available.
More give, less take.
If you do not to intend to modify the source code, then you will still have the same freedoms as when using the MIT license.
For more information about the Mozilla Public License, please visit: https://www.mozilla.org/en-US/MPL/2.0/FAQ/
Acknowledgements
Developers
- Lee Kelleher - (GitHub, Mastodon, Twitter)
Current development effort: ~1,674+ hours (between 2019-03-13 to 2023-08-24)
To give you an idea of how much human developer time/effort has been put into making this package.
Special thanks
- Thank you to Umbrella for facilitating the time and resource to help me initiate this project.
Logo
The package logo uses the Happy (by Nick Bluth) icon from the Noun Project, licensed under CC BY 3.0 US.