Skip to content
View henriquemor's full-sized avatar

Block or report henriquemor

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
henriquemor/README.md

👋 Let's 🛠️ together.

  • 📫 Drop a line at henrique@moraes.dev
  • 💻 I'm driven by curiosity and the challenge of turning complex ideas into reality
  • 💬 Ask me about science, art, games and sci-fi
  • 🤓 Tinkering with AI and bookmarklets/userscripts to make the web work my way
🇧🇷🇺🇸🇮🇹

PHP Laravel Framework MySQL Database PostgreSQL Database Javascript
React Vue.js Javascript Framework HTML 5 CSS 3 Godot Engine Three.js


Support Tip Jar

Pinned Loading

  1. Antigravity-Web-Remote Antigravity-Web-Remote Public

    Forked from gherghett/Antigravity-Shit-Chat

    Real-time mobile interface to watch and interact with Antigravity chats with file explorer and git diffs.

    HTML

  2. draw-bookmarklet draw-bookmarklet Public

    Bookmarklet scratchpad that lets you draw over webpages, with touch and pen pressure support.

    JavaScript 11

  3. covid19-Brazil-timeseries covid19-Brazil-timeseries Public

    Data collection to analyze the dissemination of COVID-19 through Brazilian states. Contributions are welcome.

    44 12

  4. Bookmarklets Bookmarklets
    1
    // Highlights the selected text
    2
    javascript: function randomColor(brightness){  colors=['FF595E','FFCA3A','8AC926','509ece','af80ce','F4A261','ffe272'];  var cor = colors[Math.floor(Math.random()*colors.length)];  return cor;    }(()=>{const DEFAULT_BACKGROUND_COLOR='#'+randomColor();const e=t=>{switch(t.nodeType){case Node.TEXT_NODE:return[t];case Node.ELEMENT_NODE:case Node.DOCUMENT_NODE:case Node.DOCUMENT_FRAGMENT_NODE:return Array.prototype.map.call(t.childNodes,t=>e(t)).flat();default:return[]}},t=(e,n=0)=>{switch(e.nodeType){case Node.TEXT_NODE:{if(n<e.length)return e;let r=null;for(;!(r=e.nextSibling)&&(e=e.parentNode););return r?t(r):null}case Node.ELEMENT_NODE:case Node.DOCUMENT_NODE:case Node.DOCUMENT_FRAGMENT_NODE:{const r=e.childNodes,o=r.length;for(let e=n;e<o;e++){const n=t(r[e]);if(n)return n}let l=null;for(;!(l=e.nextSibling)&&(e=e.parentNode););return l?t(l):null}default:{let n=null;for(;!(n=e.nextSibling)&&(e=e.parentNode););return n?t(n):null}}},n=(e,t=e.length||e.childNodes.length)=>{switch(e.nodeType){case Node.TEXT_NODE:{if(t>0&&e.length>0)return e;let r=null;for(;!(r=e.previousSibling)&&(e=e.parentNode););return r?n(r):null}case Node.ELEMENT_NODE:case Node.DOCUMENT_NODE:case Node.DOCUMENT_FRAGMENT_NODE:{const r=e.childNodes;for(let e=t;e-- >0;){const t=n(r[e]);if(t)return t}let o=null;for(;!(o=e.previousSibling)&&(e=e.parentNode););return o?n(o):null}default:{let t=null;for(;!(t=e.previousSibling)&&(e=e.parentNode););return t?n(t):null}}},r=(e,t)=>{const n=document.createElement("mark");return n.style.backgroundColor=t,e.parentNode.replaceChild(n,e),n.appendChild(e),n},o=(o,l)=>{(e=>{const r=e.startContainer,o=e.startOffset;switch(r.nodeType){case Node.TEXT_NODE:o>0&&e.setStart(r.splitText(o),0);break;case Node.ELEMENT_NODE:e.setStart(t(r,o),0)}const l=e.endContainer,a=e.endOffset;switch(l.nodeType){case Node.TEXT_NODE:a<l.length&&l.splitText(a);break;case Node.ELEMENT_NODE:const t=n(l,a);e.setEnd(t,t.length)}})(o);const a=o.commonAncestorContainer;switch(a.nodeType){case Node.TEXT_NODE:r(a,l);break;case Node.ELEMENT_NODE:const t=e(a),n=t.lastIndexOf(o.endContainer);for(let e=t.indexOf(o.startContainer);e<=n;e++)r(t[e],l)}},l=(e=window)=>{try{const t=e.getSelection();return t&&t.rangeCount>0?[t,...Array.prototype.flatMap.call(e.frames,e=>l(e))]:Array.prototype.flatMap.call(e.frames,e=>l(e))}catch(e){return console.error(e),[]}};(e=>{for(const t of l()){const n=t.rangeCount;for(let r=0;r<n;r++)try{o(t.getRangeAt(r),e)}catch(e){console.error(e)}t.removeAllRanges()}})(DEFAULT_BACKGROUND_COLOR)})();
    3
    
                  
    4
    // prompt to add new css
    5
    javascript:(function(){var newcss=window.prompt("new css rule:", "!important}");var tag=document.createElement("style");tag.type="text/css";document.getElementsByTagName("head")[0].appendChild(tag);tag[(typeof document.body.style.WebkitAppearance=="string")?"innerText":"innerHTML"]=newcss})();
  5. PomoTaskiOS PomoTaskiOS Public

    Simple JS pomodoro with tasks timer tracker that works on iOS and iPadOS.

    HTML