All Projects β†’ trendyminds β†’ visor

trendyminds / visor

Licence: MIT license
πŸ•Ά A simple admin overlay to get to the relevant areas of the Craft CMS control panel.

Programming Languages

HTML
75241 projects
PHP
23972 projects - #3 most used programming language
CSS
56736 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to visor

craft-entry-instructions
A simple fieldtype to add instructions.
Stars: ✭ 16 (-36%)
Mutual labels:  craft, craftcms, craftcms-plugin, craft3
craft-audit
Audit log for Craft 3
Stars: ✭ 18 (-28%)
Mutual labels:  craft, craftcms, craftcms-plugin, craft3
tablemaker
A user-definable table field type for Craft CMS
Stars: ✭ 39 (+56%)
Mutual labels:  craft, craftcms, craftcms-plugin, craft3
craft3-collections
Clean up those complex templates with Laravel Collections
Stars: ✭ 24 (-4%)
Mutual labels:  craft, craftcms, craftcms-plugin, craft3
molecule
βš›οΈ Grab Twig components, CSS and JS files outside the primary template folder
Stars: ✭ 20 (-20%)
Mutual labels:  craft, craftcms, craftcms-plugin, craft3
Craft Preparse Field
Field type that parses twig when an element is saved.
Stars: ✭ 103 (+312%)
Mutual labels:  craft, craftcms, craft3
Simplemap
A beautifully simple map field type for Craft CMS.
Stars: ✭ 136 (+444%)
Mutual labels:  craft, craftcms, craft3
Seo
SEO utilities including a unique field type, sitemap & redirect manager
Stars: ✭ 210 (+740%)
Mutual labels:  craft, craftcms, craft3
craft-entriessubset
Craft field type plugin that extends the core Entries field type to give extra settings
Stars: ✭ 27 (+8%)
Mutual labels:  craft, craftcms, craftcms-plugin
smartdown.craft-plugin
Bringing the unbridled joy of Markdown Extra and Smartypants to your Craft websites.
Stars: ✭ 26 (+4%)
Mutual labels:  craft, craftcms, craftcms-plugin
Inlin-Craft
Plugin for inlining files in templates.
Stars: ✭ 64 (+156%)
Mutual labels:  craftcms, craftcms-plugin, craft3
Craftcms Docker
Craft3/Craft2 CMS Docker base (Nginx, PHP-FPM 8, PostgreSQL/MariaDB, Redis)
Stars: ✭ 99 (+296%)
Mutual labels:  craft, craftcms, craft3
Buttonbox
A collection of utility field types for Craft
Stars: ✭ 94 (+276%)
Mutual labels:  craft, craftcms, craft3
Craft Async Queue
Async Queue Handler for Craft 3
Stars: ✭ 80 (+220%)
Mutual labels:  craft, craftcms, craft3
craft-bulkedit
Bulk edit any set of elements
Stars: ✭ 22 (-12%)
Mutual labels:  craft, craftcms, craft3
tags
A tag manager for Craft 3
Stars: ✭ 23 (-8%)
Mutual labels:  craftcms, craftcms-plugin, craft3
craft-json-snippets
Helps make CraftCMS models in .json
Stars: ✭ 17 (-32%)
Mutual labels:  craft, craftcms, craftcms-plugin
craft-plugin-mix
Helper plugin for Laravel Mix in Craft CMS templates
Stars: ✭ 50 (+100%)
Mutual labels:  craft, craftcms, craft3
craft-react
Client and Server-side React rendering for CraftCMS
Stars: ✭ 40 (+60%)
Mutual labels:  craftcms, craftcms-plugin, craft3
craft3-fallback-site
Failing requests in a multi-site install can fall back to other sites, to prevent 404 errors from missing or disabled entries.
Stars: ✭ 14 (-44%)
Mutual labels:  craftcms, craftcms-plugin, craft3

Visor logo Visor

Screenshot

What is Visor?

Visor is a simple admin overlay to get to the relevant areas of the Craft CMS control panel from the front-end of your site.

Demo

Visor Demo

Screengrab

Visor screengrab

Requirements

This plugin requires Craft CMS 3.1.20 or later.

Installation

To install the plugin, follow these instructions.

  1. Open your terminal and go to your Craft project:

     cd /path/to/project
    
  2. Then tell Composer to load the plugin:

     composer require trendyminds/visor
    
  3. In the Control Panel, go to Settings β†’ Plugins and click the β€œInstall” button for Visor.

Keyboard Shortcuts

You can activate Visor by clicking the gear icon or using the following keyboard shortcuts:

Key Description
` Toggles Visor open or close
ESC Closes Visor (if open)

Customizing Visor

Overriding styles

Visor has a class of Visor--override on the outer <section> element. To change any of the default styles, simply start your styles with .Visor.Visor--override. This will make your styles more specific without resorting to !important madness.

Overriding icons

Visor also uses inline SVGs for all graphics. This:

  • Reduces HTTP requests
  • Looks crisp at any pixel density
  • Allows you to re-style the icons using fill in your CSS

Overriding background

If you'd prefer to replace purple with a different color you can change this by targeting .Visor--override .Visor__modal.

Caveats

Since 3.0 Visor offers support for full-page static caching. In order to offer this a network request is made on every page request to check if the user should see the Visor controls. To ensure this does not impact performance numerous things are done:

  1. The JavaScript to make this check is inserted at the bottom of the page
  2. The JavaScript used to make the check is very small (< 2 KB)
  3. Early returns are used if the user is a guest and should not see anything from Visor

The checks to ensure we return early for guests is documented entirely in DefaultController.php. If you see opportunities to improve the performance of these checks (or any other part of Visor) pull requests are welcomed.

Browser compatibility

This has been tested on Chrome, Firefox and Safari, but drop in an Issue if you notice any strangeness.

Contributing

We welcome anyone and everyone who would like to improve Visor to fork it and send in pull requests. To start developing Visor:

  1. Ensure you have Node version 10.x running on your machine
  2. Clone the repo to your computer
  3. Run npm i
  4. Run npm start to compile the CSS and JS into the main src/resources/ directory

Visor Changelog

View the changelog

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].