Skip to content
View doubleedesign's full-sized avatar

Sponsoring

@arminbro
@eslint
@gulpjs
@Igorkowalski94
@vitejs
@ThePHPF
@nuxt

Organizations

@Double-E-Design

Block or report doubleedesign

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.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

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

Report abuse
doubleedesign/README.md

πŸ‘‹ I'm Leesa with a Double-E

🌐 I have a strong background in web development, primarily front-end but enjoy dabbling in full-stack.

πŸ’» I currently work as a front-end software engineer at Atlassian, working with JavaScript/TypeScript, React, GraphQL, etc.

πŸ•™ I spent the first chunk of my career in agency environments, designing and building custom CMS themes (mainly WordPress - PHP, HTML, CSS/SCSS, vanilla JS, jQuery) and occasionally plugins, which I still do sporadically on a freelance basis.

πŸ‘©β€πŸ’»I also code a lot of miscellaneous stuff for fun, some of which you can check out here if you are so inclined.


Published for public consumption

(...outside of GitHub)

Personal Projects

For funsies, learning, and/or personal use. These are all pretty scrappy, early WIPs.

WordPress

Forks

Stuff I'm contributing to and/or have extended to meet my needs.


Projects I sponsor on GitHub and Open Collective

@gulpjs @arminbro @eslint @Igorkowalski94 @vitejs @ThePHPF

Pinned Loading

  1. Customised Xdebug output styling Customised Xdebug output styling
    1
    /** 
    2
     * Customise some of the HTML output of xdebug + add highlightjs + hackily customise that 
    3
     * Requires: 
    4
     * - HighlightJS: https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js
    5
     * - HighlightJS PHP: https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/languages/php.min.js
  2. Typing styled-components props: Vali... Typing styled-components props: Valid string values according to what's available in theme
    1
    import styled from 'styled-components';
    2
    import { ThemeColor } from '../../types';
    3
    
                  
    4
    interface ButtonProps {
    5
    	color: ThemeColor 
  3. CSS previous sibling selector example CSS previous sibling selector example
    1
    // I have sections (called blocks here) that should have top and bottom padding, 
    2
    // unless two of the same kind with the same background colour are together - 
    3
    // in which case I want them to be right up next to each other - no padding between them.
    4
    // In the HTML it looks something like this:
    5
    // <section class="block my-special-block has-primary-background-color">
  4. useResize React hook. Dynamically ge... useResize React hook. Dynamically get height and width of an element when its size changes and store the values in state. Demo: https://codesandbox.io/s/useresize-demo-de04o8?file=/src/hooks/useResize.ts
    1
    import { MutableRefObject, useMemo, useEffect, useState } from 'react';
    2
    
                  
    3
    interface Dimensions {
    4
    	width: number;
    5
    	height: number;
  5. useLocalStorage React hook. Keep a s... useLocalStorage React hook. Keep a state value in sync with one cached in the browser using local storage.
    1
    import { useState, useEffect, Dispatch, SetStateAction } from 'react';
    2
    
                  
    3
    export function useLocalStorage<T>(key: string, defaultValue: T): { value: T; setValue: Dispatch<SetStateAction<T>> } {
    4
    	const [value, setValue] = useState(() => {
    5
    		return localStorage?.getItem(key) ? JSON.parse(localStorage.getItem(key)) : defaultValue;
  6. Automatically downgrade a WooCommerc... Automatically downgrade a WooCommerce subscription (to a free, no-expiry variation) instead of expiring it
    1
    <?php
    2
    /**
    3
     * Add base tier option to Advanced tab of subscription product
    4
     */
    5
    function doublee_subscription_product_advanced_settings() {