Skip to content

Instantly share code, notes, and snippets.

@igreg
Created February 9, 2021 16:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save igreg/23c1c5c5b81dd6cf96eccae8ab2994d0 to your computer and use it in GitHub Desktop.
Save igreg/23c1c5c5b81dd6cf96eccae8ab2994d0 to your computer and use it in GitHub Desktop.
// ==UserScript==
// @name Custom Toolbar Injector
// @version 1
// @description Add a useful toolbar to AWS nav header
// @author Gregory Becker
// @match https://console.aws.amazon.com/*
// @match https://*.console.aws.amazon.com/*
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
let custom_toolbar = document.createElement('ul');
custom_toolbar.id = "nav-shortcutBar";
custom_toolbar.innerHTML = '<li data-service-id="iam" data-service-href="https://console.aws.amazon.com/iam/home?region=eu-west-1" class="service-link service-link-iam nav-elt nav-shortcut" title="false"><a href="https://console.aws.amazon.com/iam/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-iam" style="background-position: -448px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-iam" style="background-position: -448px 0px">&nbsp;</span></span><span class="service-label">IAM</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="cfo" data-service-href="https://eu-west-1.console.aws.amazon.com/cloudformation/home?region=eu-west-1" class="service-link service-link-cfo nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/cloudformation/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-cfo" style="background-position: -512px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-cfo" style="background-position: -512px 0px">&nbsp;</span></span><span class="service-label">CloudFormation</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="cw" data-service-href="https://eu-west-1.console.aws.amazon.com/cloudwatch/home?region=eu-west-1" class="service-link service-link-cw nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/cloudwatch/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-cw" style="background-position: -480px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-cw" style="background-position: -480px 0px">&nbsp;</span></span><span class="service-label">CloudWatch</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="vpc" data-service-href="https://eu-west-1.console.aws.amazon.com/vpc/home?region=eu-west-1" class="service-link service-link-vpc nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/vpc/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-vpc" style="background-position: -224px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-vpc" style="background-position: -224px 0px">&nbsp;</span></span><span class="service-label">VPC</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="ec2" data-service-href="https://eu-west-1.console.aws.amazon.com/ec2/v2/home?region=eu-west-1" class="service-link service-link-ec2 nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/ec2/v2/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-ec2" style="background-position: -0px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-ec2" style="background-position: -0px 0px">&nbsp;</span></span><span class="service-label">EC2</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="ecs" data-service-href="https://eu-west-1.console.aws.amazon.com/ecs/home?region=eu-west-1" class="service-link service-link-ecs nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/ecs/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-ecs" style="background-position: -1248px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-ecs" style="background-position: -1248px 0px">&nbsp;</span></span><span class="service-label">Elastic Container Service</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="cloudmap" data-service-href="https://eu-west-1.console.aws.amazon.com/cloudmap/home?region=eu-west-1" class="service-link service-link-cloudmap nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/cloudmap/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-cloudmap" style="background-position: -4160px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-cloudmap" style="background-position: -4160px 0px">&nbsp;</span></span><span class="service-label">AWS Cloud Map</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="appmesh" data-service-href="https://eu-west-1.console.aws.amazon.com/appmesh/home?region=eu-west-1" class="service-link service-link-appmesh nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/appmesh/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-appmesh" style="background-position: -4480px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-appmesh" style="background-position: -4480px 0px">&nbsp;</span></span><span class="service-label">AWS App Mesh</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="systems-manager" data-service-href="https://eu-west-1.console.aws.amazon.com/systems-manager/home?region=eu-west-1" class="service-link service-link-systems-manager nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/systems-manager/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-systems-manager" style="background-position: -2848px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-systems-manager" style="background-position: -2848px 0px">&nbsp;</span></span><span class="service-label">Systems Manager</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="lam" data-service-href="https://eu-west-1.console.aws.amazon.com/lambda/home?region=eu-west-1" class="service-link service-link-lam nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/lambda/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-lam" style="background-position: -1152px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-lam" style="background-position: -1152px 0px">&nbsp;</span></span><span class="service-label">Lambda</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="r53" data-service-href="https://console.aws.amazon.com/route53/home?region=eu-west-1" class="service-link service-link-r53 nav-elt nav-shortcut" title="false"><a href="https://console.aws.amazon.com/route53/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-r53" style="background-position: -256px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-r53" style="background-position: -256px 0px">&nbsp;</span></span><span class="service-label">Route 53</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="cfr" data-service-href="https://console.aws.amazon.com/cloudfront/home?region=eu-west-1" class="service-link service-link-cfr nav-elt nav-shortcut" title="false"><a href="https://console.aws.amazon.com/cloudfront/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-cfr" style="background-position: -416px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-cfr" style="background-position: -416px 0px">&nbsp;</span></span><span class="service-label">CloudFront</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="ag" data-service-href="https://eu-west-1.console.aws.amazon.com/apigateway/home?region=eu-west-1" class="service-link service-link-ag nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/apigateway/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-ag" style="background-position: -1344px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-ag" style="background-position: -1344px 0px">&nbsp;</span></span><span class="service-label">API Gateway</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="s3" data-service-href="https://s3.console.aws.amazon.com/s3/home?region=eu-west-1" class="service-link service-link-s3 nav-elt nav-shortcut" title="false"><a href="https://s3.console.aws.amazon.com/s3/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-s3" style="background-position: -96px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-s3" style="background-position: -96px 0px">&nbsp;</span></span><span class="service-label">S3</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="rds" data-service-href="https://eu-west-1.console.aws.amazon.com/rds/home?region=eu-west-1" class="service-link service-link-rds nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/rds/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-rds" style="background-position: -192px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-rds" style="background-position: -192px 0px">&nbsp;</span></span><span class="service-label">RDS</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="ddb" data-service-href="https://eu-west-1.console.aws.amazon.com/dynamodb/home?region=eu-west-1" class="service-link service-link-ddb nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/dynamodb/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-ddb" style="background-position: -128px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-ddb" style="background-position: -128px 0px">&nbsp;</span></span><span class="service-label">DynamoDB</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="elc" data-service-href="https://eu-west-1.console.aws.amazon.com/elasticache/home?region=eu-west-1" class="service-link service-link-elc nav-elt nav-shortcut" title="false"><a href="https://eu-west-1.console.aws.amazon.com/elasticache/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-elc" style="background-position: -160px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-elc" style="background-position: -160px 0px">&nbsp;</span></span><span class="service-label">ElastiCache</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="cost-management" data-service-href="https://console.aws.amazon.com/cost-management/home?region=eu-west-1" class="service-link service-link-cost-management nav-elt nav-shortcut" title="false"><a href="https://console.aws.amazon.com/cost-management/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-cost-management" style="background-position: -3488px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-cost-management" style="background-position: -3488px 0px">&nbsp;</span></span><span class="service-label">AWS Cost Explorer</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="budgets" data-service-href="https://console.aws.amazon.com/billing/home#/budgets#/home?region=eu-west-1" class="service-link service-link-budgets nav-elt nav-shortcut" title="false"><a href="https://console.aws.amazon.com/billing/home#/budgets#/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-budgets" style="background-position: -3520px -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-budgets" style="background-position: -3520px 0px">&nbsp;</span></span><span class="service-label">AWS Budgets</span></a> <div class="nav-menu-separator">&nbsp;</div></li><li data-service-id="resource-groups" data-service-href="https://eu-west-1.console.aws.amazon.com/resource-groups/home?region=eu-west-1" class="service-link service-link-resource-groups nav-elt nav-shortcut unlisted-service" title="false"><a href="https://eu-west-1.console.aws.amazon.com/resource-groups/home?region=eu-west-1" target="_top"><span class="service-icon-wrapper"><span class="service-icon service-icon-navbar service-icon-size-med service-icon-svc-resource-groups" style="background-position: -NaNpx -24px">&nbsp;</span><span class="service-icon service-icon-menu service-icon-size-lg service-icon-svc-resource-groups" style="background-position: -NaNpx 0px">&nbsp;</span></span><span class="service-label">Resource Groups</span></a> <div class="nav-menu-separator">&nbsp;</div></li>';
let menu_links = document.getElementById('awsc-navigation-container').querySelectorAll("a[data-testid=awsc-skip-to-main-content]");
let menu_link = menu_links[0];
menu_link.parentNode.insertBefore(custom_toolbar, menu_link);
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment