// ==UserScript== // @name Pages to GitHub // @namespace https://greasyfork.org/en/scripts/534709-pages-to-github // @version 0.1.3 // @description Access the GitHub profile from *.github.io site // @author Super Lee (https://github.com/superpung) // @license MIT // @homepageURL https://github.com/superpung/pages2github // @supportURL https://github.com/superpung/pages2github // @match *://*.github.io/* // @icon https://pages.github.com/favicon.ico // @grant none // @downloadURL none // ==/UserScript== (function () { 'use strict'; const host = window.location.hostname; const match = host.match(/^([a-zA-Z0-9-]+)\.github\.io$/); if (!match || !match[1]) return; const username = match[1]; const githubUrl = `https://github.com/${username}`; const style = document.createElement('style'); style.textContent = ` .gh-float-button { position: fixed; top: 20px; right: 0; z-index: 9999; background-color: #24292e; padding: 10px; border-top-left-radius: 8px; border-bottom-left-radius: 8px; font-size: 14px; line-height: 1; font-family: sans-serif; display: flex; align-items: center; cursor: pointer; transition: all 0.3s ease; transform: translateX(calc(100% - 38px)); } .gh-float-button:hover { transform: translateX(0); } .gh-float-button svg { flex-shrink: 0; } .gh-username { opacity: 0; color: white; transition: opacity 0.3s ease; white-space: nowrap; } .gh-float-button:hover .gh-username { opacity: 1; } `; document.head.appendChild(style); const button = document.createElement('div'); button.className = 'gh-float-button'; button.innerHTML = ` @${username} `; button.onclick = () => { window.open(githubUrl, '_blank'); }; document.body.appendChild(button); })();