Skip to content

Instantly share code, notes, and snippets.

@Swiftwork
Created June 5, 2026 13:11
Show Gist options
  • Select an option

  • Save Swiftwork/468bb63385a93b4cc67b3b6750693d8d to your computer and use it in GitHub Desktop.

Select an option

Save Swiftwork/468bb63385a93b4cc67b3b6750693d8d to your computer and use it in GitHub Desktop.
Icon migration preview PR #4874
<\!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Icon migration: MUI → Remix: app shell / home / editor / misc</title>
<link href="https://fonts.googleapis.com/icon?family=Material+Icons|Material+Icons+Outlined|Material+Icons+Round" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/remixicon@4.9.0/fonts/remixicon.min.css" rel="stylesheet">
<style>
:root{--bg:#f5f5f7;--s:#fff;--b:#e5e5ea;--t:#1d1d1f;--m:#6e6e73}
[data-dark]{--bg:#111113;--s:#1c1c1e;--b:#2c2c2e;--t:#f2f2f7;--m:#98989f}
*{box-sizing:border-box;margin:0;padding:0}
body{font:13px/1.4 -apple-system,sans-serif;background:var(--bg);color:var(--t);padding:24px}
header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:16px}
h1{font-size:15px;font-weight:600}
p{font-size:11px;color:var(--m);margin-top:2px}
button{font:11px -apple-system,sans-serif;background:var(--s);color:var(--t);border:1px solid var(--b);border-radius:5px;padding:3px 10px;cursor:pointer}
table{width:100%;border-collapse:collapse;background:var(--s);border-radius:8px;overflow:hidden;border:1px solid var(--b)}
th{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--m);padding:8px 12px;text-align:left;border-bottom:1px solid var(--b);background:var(--bg)}
td{padding:7px 12px;border-bottom:1px solid var(--b);vertical-align:middle}
tr:last-child td{border-bottom:none}
.c{display:flex;align-items:center;gap:8px}
.c i,.c span.mi{font-size:18px;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--t)}
code{font:11px 'SF Mono',monospace;color:var(--t)}
</style>
</head>
<body>
<header>
<div>
<h1>Icon migration: MUI → Remix: app shell / home / editor / misc</h1>
<p>bohdanl/mui-bui-icons-g-app-shell · 28 icons · @remixicon/react@4.9.0</p>
</div>
<button id="t">☾ Dark</button>
</header>
<table>
<thead><tr>
<th>Before — @material-ui/icons</th>
<th>After — @remixicon/react</th>
</tr></thead>
<tbody>
<tr><td><div class="c"><span class="mi material-icons">add</span><code>Add</code></div></td><td><div class="c"><i class="ri-add-line"></i><code>RiAddLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">add_circle</span><code>AddCircle</code></div></td><td><div class="c"><i class="ri-add-circle-fill"></i><code>RiAddCircleFill</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">add_circle_outline</span><code>AddCircleOutline</code></div></td><td><div class="c"><i class="ri-add-circle-line"></i><code>RiAddCircleLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">arrow_downward</span><code>ArrowDownward</code></div></td><td><div class="c"><i class="ri-arrow-down-line"></i><code>RiArrowDownLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">arrow_forward</span><code>ArrowForward</code></div></td><td><div class="c"><i class="ri-arrow-right-line"></i><code>RiArrowRightLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">arrow_upward</span><code>ArrowUpward</code></div></td><td><div class="c"><i class="ri-arrow-up-line"></i><code>RiArrowUpLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">cancel</span><code>Cancel</code></div></td><td><div class="c"><i class="ri-close-circle-fill"></i><code>RiCloseCircleFill</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">check</span><code>Check</code></div></td><td><div class="c"><i class="ri-check-line"></i><code>RiCheckLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">check_circle</span><code>CheckCircle</code></div></td><td><div class="c"><i class="ri-checkbox-circle-fill"></i><code>RiCheckboxCircleFill</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">chevron_right</span><code>ChevronRight</code></div></td><td><div class="c"><i class="ri-arrow-right-s-line"></i><code>RiArrowRightSLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">lens</span><code>CircleIcon</code></div></td><td><div class="c"><i class="ri-checkbox-blank-circle-fill"></i><code>RiCheckboxBlankCircleFill</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">close</span><code>Close</code></div></td><td><div class="c"><i class="ri-close-line"></i><code>RiCloseLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">delete</span><code>Delete</code></div></td><td><div class="c"><i class="ri-delete-bin-line"></i><code>RiDeleteBinLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">description</span><code>Description</code></div></td><td><div class="c"><i class="ri-file-text-line"></i><code>RiFileTextLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">edit</span><code>Edit</code></div></td><td><div class="c"><i class="ri-edit-line"></i><code>RiEditLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">error</span><code>Error</code></div></td><td><div class="c"><i class="ri-error-warning-line"></i><code>RiErrorWarningLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">expand_less</span><code>ExpandLess</code></div></td><td><div class="c"><i class="ri-arrow-up-s-line"></i><code>RiArrowUpSLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">expand_more</span><code>ExpandMore</code></div></td><td><div class="c"><i class="ri-arrow-down-s-line"></i><code>RiArrowDownSLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">menu</span><code>Menu</code></div></td><td><div class="c"><i class="ri-menu-line"></i><code>RiMenuLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">more_horiz</span><code>MoreHoriz</code></div></td><td><div class="c"><i class="ri-more-line"></i><code>RiMoreLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">open_in_new</span><code>OpenInNew</code></div></td><td><div class="c"><i class="ri-external-link-line"></i><code>RiExternalLinkLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">person</span><code>Person</code></div></td><td><div class="c"><i class="ri-user-fill"></i><code>RiUserFill</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">search</span><code>Search</code></div></td><td><div class="c"><i class="ri-search-line"></i><code>RiSearchLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">send</span><code>Send</code></div></td><td><div class="c"><i class="ri-send-plane-fill"></i><code>RiSendPlaneFill</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">settings</span><code>Settings</code></div></td><td><div class="c"><i class="ri-settings3-line"></i><code>RiSettings3Line</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">stop</span><code>Stop</code></div></td><td><div class="c"><i class="ri-stop-line"></i><code>RiStopLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">unarchive</span><code>Unarchive</code></div></td><td><div class="c"><i class="ri-inbox-unarchive-line"></i><code>RiInboxUnarchiveLine</code></div></td></tr>
<tr><td><div class="c"><span class="mi material-icons">warning</span><code>Warning</code></div></td><td><div class="c"><i class="ri-alert-fill"></i><code>RiAlertFill</code></div></td></tr>
</tbody>
</table>
<script>
const b=document.getElementById('t'),h=document.documentElement;
const d=()=>h.hasAttribute('data-dark');
const set=v=>{v?h.setAttribute('data-dark',''):h.removeAttribute('data-dark');b.textContent=v?'☀ Light':'☾ Dark';};
set(localStorage.getItem('th')==='1'||(localStorage.getItem('th')===null&&matchMedia('(prefers-color-scheme:dark)').matches));
b.onclick=()=>{const n=\!d();localStorage.setItem('th',n?'1':'0');set(n);};
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment