export const NextJsIcon = (props: React.SVGProps<SVGSVGElement>) => (
  <svg
    viewBox="0 0 256 256"
    preserveAspectRatio="xMidYMid"
    fill="currentColor"
    {...props}
  >
    <path d="M119.616813,0.0688905149 C119.066276,0.118932037 117.314565,0.294077364 115.738025,0.419181169 C79.3775171,3.69690087 45.3192571,23.3131775 23.7481916,53.4631946 C11.7364614,70.2271045 4.05395894,89.2428829 1.15112414,109.384595 C0.12512219,116.415429 0,118.492153 0,128.025062 C0,137.557972 0.12512219,139.634696 1.15112414,146.665529 C8.10791789,194.730411 42.3163245,235.11392 88.7116325,250.076335 C97.0197458,252.753556 105.778299,254.580072 115.738025,255.680985 C119.616813,256.106338 136.383187,256.106338 140.261975,255.680985 C157.453763,253.779407 172.017986,249.525878 186.382014,242.194795 C188.584164,241.068861 189.00958,240.768612 188.709286,240.518404 C188.509091,240.36828 179.124927,227.782837 167.86393,212.570214 L147.393939,184.922273 L121.743891,146.965779 C107.630108,126.098464 96.0187683,109.034305 95.9186706,109.034305 C95.8185728,109.009284 95.7184751,125.873277 95.6684262,146.465363 C95.5933529,182.52028 95.5683284,183.971484 95.1178886,184.82219 C94.4672532,186.048207 93.9667644,186.548623 92.915738,187.099079 C92.114956,187.499411 91.4142717,187.574474 87.6355816,187.574474 L83.3063539,187.574474 L82.1552297,186.848872 C81.4044966,186.373477 80.8539589,185.747958 80.4785924,185.022356 L79.9530792,183.896422 L80.0031281,133.729796 L80.0782014,83.5381493 L80.8539589,82.5623397 C81.25435,82.0369037 82.1051808,81.3613431 82.7057674,81.0360732 C83.7317693,80.535658 84.1321603,80.4856165 88.4613881,80.4856165 C93.5663734,80.4856165 94.4172043,80.6857826 95.7434995,82.1369867 C96.1188661,82.5373189 110.007429,103.454675 126.623656,128.650581 C143.239883,153.846488 165.962072,188.250034 177.122972,205.139048 L197.392766,235.839522 L198.418768,235.163961 C207.502639,229.259062 217.112023,220.852086 224.719453,212.09482 C240.910264,193.504394 251.345455,170.835585 254.848876,146.665529 C255.874878,139.634696 256,137.557972 256,128.025062 C256,118.492153 255.874878,116.415429 254.848876,109.384595 C247.892082,61.3197135 213.683675,20.9362052 167.288368,5.97379012 C159.105376,3.32158945 150.396872,1.49507389 140.637341,0.394160408 C138.234995,0.143952798 121.693842,-0.131275573 119.616813,0.0688905149 L119.616813,0.0688905149 Z M172.017986,77.4831252 C173.219159,78.0836234 174.195112,79.2345784 174.545455,80.435575 C174.74565,81.0861148 174.795699,94.9976579 174.74565,126.348671 L174.670577,171.336 L166.73783,159.17591 L158.780059,147.01582 L158.780059,114.313685 C158.780059,93.1711423 158.880156,81.2862808 159.030303,80.7108033 C159.430694,79.3096407 160.306549,78.2087272 161.507722,77.5581875 C162.533724,77.0327515 162.909091,76.98271 166.837928,76.98271 C170.541544,76.98271 171.19218,77.0327515 172.017986,77.4831252 Z" />
  </svg>
)

export const GatsbyIcon = (props: React.SVGProps<SVGSVGElement>) => (
  <svg viewBox="0 0 32 32" fill="currentColor" {...props}>
    <path d="M16 0C7.2 0 0 7.2 0 16s7.2 16 16 16 16-7.2 16-16S24.8 0 16 0Zm0 3.428c4.228 0 7.887 2.057 10.172 5.144l-1.715 1.487C22.515 7.429 19.428 5.715 16 5.715c-4.457 0-8.228 2.857-9.715 6.857l13.143 13.143c3.315-1.143 5.83-4 6.63-7.43h-5.486V16h8c0 5.943-4.23 10.97-9.83 12.227L3.774 13.259C5.03 7.657 10.057 3.427 16 3.427v.001Zm-12.572 12.8 12.459 12.344c-3.2-.115-6.402-1.257-8.802-3.657-2.4-2.4-3.657-5.602-3.657-8.687Z" />
  </svg>
)

export const RedwoodJsIcon = (props: React.SVGProps<SVGSVGElement>) => (
  <svg viewBox="0 0 32 32" fill="none" {...props}>
    <path
      fill="currentColor"
      d="m9.317 4.627 6.214 4.241c.14.094.304.144.472.148a.845.845 0 0 0 .472-.148l6.218-4.256a.85.85 0 0 0-.118-1.449L16.36.087a.853.853 0 0 0-.746 0L9.42 3.163a.848.848 0 0 0-.104 1.464Zm8.796 5.572a.86.86 0 0 0 .368.704l4.982 3.404a.837.837 0 0 0 1.034-.067l4.179-3.737a.849.849 0 0 0-.037-1.297l-3.99-3.191a.847.847 0 0 0-1.001-.039L18.483 9.51a.859.859 0 0 0-.37.689ZM5.725 14.831a.853.853 0 0 1 .148 1.092.834.834 0 0 1-.29.272L2.61 17.978a.84.84 0 0 1-.957-.066.853.853 0 0 1-.28-.924l1.1-3.461a.84.84 0 0 1 1.364-.375l1.89 1.679Zm16.134.361-5.378-3.68a.845.845 0 0 0-.944 0l-5.377 3.68a.861.861 0 0 0-.368.647.885.885 0 0 0 .283.695l5.373 4.806a.847.847 0 0 0 1.123 0l5.373-4.806a.861.861 0 0 0-.085-1.342Zm-14.344-.95L3.34 10.504a.864.864 0 0 1-.284-.67.835.835 0 0 1 .316-.642l3.99-3.209a.855.855 0 0 1 1.005-.039l5.16 3.534a.852.852 0 0 1 0 1.426l-4.976 3.404a.844.844 0 0 1-1.037-.066Zm21.43 5.368-4.25-2.544a.837.837 0 0 0-.991.094l-5.193 4.636a.858.858 0 0 0-.097 1.172c.09.113.208.2.342.255l7.205 2.92a.846.846 0 0 0 1.087-.443l2.233-5.002a.854.854 0 0 0-.336-1.088Zm.59-6.082 1.1 3.462h-.01a.847.847 0 0 1-1.236.989l-2.978-1.783a.831.831 0 0 1-.407-.646.842.842 0 0 1 .279-.718l1.888-1.682a.841.841 0 0 1 1.364.378Zm-15.76 9.048a.849.849 0 0 0-.27-.78L8.312 17.16a.836.836 0 0 0-.992-.094L3.07 19.61a.864.864 0 0 0-.34 1.084l2.238 5.002a.843.843 0 0 0 1.085.443l7.2-2.92a.849.849 0 0 0 .522-.643Zm2.549 1.427 5.779 2.34a.85.85 0 0 1 .509.695.847.847 0 0 1-.359.794L16.47 31.85A.833.833 0 0 1 16 32a.853.853 0 0 1-.472-.152l-5.779-4.017a.847.847 0 0 1 .165-1.49l5.779-2.34c.203-.08.43-.08.632.002Z"
    />
  </svg>
)

export const RemixIcon = (props: React.SVGProps<SVGSVGElement>) => (
  <svg viewBox="0 0 32 32" fill="currentColor" {...props}>
    <path
      fillRule="evenodd"
      d="M27.267 24.297c.26 3.4.26 4.994.26 6.734h-7.744c0-.379.007-.726.013-1.077.021-1.093.043-2.233-.131-4.534-.23-3.37-1.659-4.118-4.285-4.118H3.2v-6.13h12.55c3.317 0 4.976-1.026 4.976-3.74 0-2.387-1.66-3.833-4.976-3.833H3.199V1.6h13.932c7.51 0 11.242 3.603 11.242 9.36 0 4.305-2.626 7.113-6.174 7.58 2.995.609 4.746 2.34 5.068 5.757Z"
      clipRule="evenodd"
    />
    <path d="M3.2 31.031v-4.57h8.188c1.368 0 1.665 1.03 1.665 1.645v2.925H3.199Z" />
  </svg>
)

export const ViteIcon = (props: React.SVGProps<SVGSVGElement>) => (
  <svg width="1em" height="1em" viewBox="0 0 410 404" fill="none" {...props}>
    <path
      d="M399.641 59.5246L215.643 388.545C211.844 395.338 202.084 395.378 198.228 388.618L10.5817 59.5563C6.38087 52.1896 12.6802 43.2665 21.0281 44.7586L205.223 77.6824C206.398 77.8924 207.601 77.8904 208.776 77.6763L389.119 44.8058C397.439 43.2894 403.768 52.1434 399.641 59.5246Z"
      fill="url(#paint0_linear)"
    />
    <path
      d="M292.965 1.5744L156.801 28.2552C154.563 28.6937 152.906 30.5903 152.771 32.8664L144.395 174.33C144.198 177.662 147.258 180.248 150.51 179.498L188.42 170.749C191.967 169.931 195.172 173.055 194.443 176.622L183.18 231.775C182.422 235.487 185.907 238.661 189.532 237.56L212.947 230.446C216.577 229.344 220.065 232.527 219.297 236.242L201.398 322.875C200.278 328.294 207.486 331.249 210.492 326.603L212.5 323.5L323.454 102.072C325.312 98.3645 322.108 94.137 318.036 94.9228L279.014 102.454C275.347 103.161 272.227 99.746 273.262 96.1583L298.731 7.86689C299.767 4.27314 296.636 0.855181 292.965 1.5744Z"
      fill="url(#paint1_linear)"
    />
    <defs>
      <linearGradient
        id="paint0_linear"
        x1="6.00017"
        y1="32.9999"
        x2="235"
        y2="344"
        gradientUnits="userSpaceOnUse"
      >
        <stop stopColor="#41D1FF"></stop>
        <stop offset="1" stopColor="#BD34FE"></stop>
      </linearGradient>
      <linearGradient
        id="paint1_linear"
        x1="194.651"
        y1="8.81818"
        x2="236.076"
        y2="292.989"
        gradientUnits="userSpaceOnUse"
      >
        <stop stopColor="#FFEA83"></stop>
        <stop offset="0.0833333" stopColor="#FFDD35"></stop>
        <stop offset="1" stopColor="#FFA800"></stop>
      </linearGradient>
    </defs>
  </svg>
)

export const StackblitzIcon = (props: React.SVGProps<SVGSVGElement>) => (
  <svg fill="#1389FD" viewBox="0 0 32 32" width="1em" height="1em" {...props}>
    <path d="M5.853 18.647h8.735L9.45 31l16.697-17.647h-8.735L22.55 1z" />
  </svg>
)
