diff --git a/pkg/arvo/mar/css.hoon b/pkg/arvo/mar/css.hoon
deleted file mode 100644
index c4810b2118..0000000000
--- a/pkg/arvo/mar/css.hoon
+++ /dev/null
@@ -1,21 +0,0 @@
-::
-::::  /hoon/css/mar
-  ::
-/?    310
-=,  eyre
-=,  mimes:html
-|_  mud=@t
-++  grow                                                ::  convert to
-  |%  ++  mime  [/text/css (as-octs mud)]               ::  convert to %mime
-      ++  elem  ;style                                  ::  convert to %hymn
-                  ;-  (trip mud)
-                ==
-      ++  hymn  ;html:(head:"{elem}" body)
-  --
-++  grab
-  |%                                                    ::  convert from
-  ++  mime  |=([p=mite q=octs] (@t q.q))
-  ++  noun  @t                                         ::  clam from %noun
-  --
-++  grad  %mime
---
diff --git a/pkg/arvo/mar/css.hoon b/pkg/arvo/mar/css.hoon
new file mode 120000
index 0000000000..dff5dfcd53
--- /dev/null
+++ b/pkg/arvo/mar/css.hoon
@@ -0,0 +1 @@
+../../base-dev/mar/css.hoon
\ No newline at end of file
diff --git a/pkg/base-dev/mar/css.hoon b/pkg/base-dev/mar/css.hoon
new file mode 100644
index 0000000000..c4810b2118
--- /dev/null
+++ b/pkg/base-dev/mar/css.hoon
@@ -0,0 +1,21 @@
+::
+::::  /hoon/css/mar
+  ::
+/?    310
+=,  eyre
+=,  mimes:html
+|_  mud=@t
+++  grow                                                ::  convert to
+  |%  ++  mime  [/text/css (as-octs mud)]               ::  convert to %mime
+      ++  elem  ;style                                  ::  convert to %hymn
+                  ;-  (trip mud)
+                ==
+      ++  hymn  ;html:(head:"{elem}" body)
+  --
+++  grab
+  |%                                                    ::  convert from
+  ++  mime  |=([p=mite q=octs] (@t q.q))
+  ++  noun  @t                                         ::  clam from %noun
+  --
+++  grad  %mime
+--
diff --git a/pkg/garden/mar/css.hoon b/pkg/garden/mar/css.hoon
new file mode 120000
index 0000000000..dff5dfcd53
--- /dev/null
+++ b/pkg/garden/mar/css.hoon
@@ -0,0 +1 @@
+../../base-dev/mar/css.hoon
\ No newline at end of file
diff --git a/pkg/grid/src/nav/Leap.tsx b/pkg/grid/src/nav/Leap.tsx
index ab2710a0ce..fa293720ca 100644
--- a/pkg/grid/src/nav/Leap.tsx
+++ b/pkg/grid/src/nav/Leap.tsx
@@ -72,7 +72,6 @@ export const Leap = React.forwardRef(
 
     useEffect(() => {
       const newMatch = getMatch(rawInput);
-
       if (newMatch && rawInput) {
         useLeapStore.setState({ selectedMatch: newMatch });
       }
@@ -112,7 +111,10 @@ export const Leap = React.forwardRef(
 
     const navigateByInput = useCallback(
       (input: string) => {
-        const normalizedValue = input.trim().replace(/(~?[\w^_-]{3,13})\//, '$1/apps/');
+        const normalizedValue = input
+          .trim()
+          .replace('%', '')
+          .replace(/(~?[\w^_-]{3,13})\//, '$1/apps/$1/');
         push(`/leap/${menu}/${normalizedValue}`);
       },
       [menu]
diff --git a/pkg/npm/api/package.json b/pkg/npm/api/package.json
index e5dc09718a..88caa2f899 100644
--- a/pkg/npm/api/package.json
+++ b/pkg/npm/api/package.json
@@ -8,8 +8,12 @@
     "directory": "pkg/npm/api"
   },
   "type": "module",
-  "main": "dist/cjs/index.js",
+  "main": "dist/cjs/index.cjs",
   "module": "dist/esm/index.js",
+  "exports": {
+    "require": "./dist/cjs/index.cjs",
+    "import": "./dist/esm/index.js"
+  },
   "jsdelivr": "dist/urbit-api.min.js",
   "unpkg": "dist/urbit-api.min.js",
   "types": "dist/index.d.ts",
diff --git a/pkg/npm/api/rollup.config.ts b/pkg/npm/api/rollup.config.ts
index 449bcc869c..8664a48ae2 100644
--- a/pkg/npm/api/rollup.config.ts
+++ b/pkg/npm/api/rollup.config.ts
@@ -60,13 +60,13 @@ export default [
     ],
     output: [
       {
-        dir: 'dist/esm',
+        file: 'dist/esm/index.js',
         format: 'esm',
         exports: 'named',
-        sourcemap: true
+        sourcemap: true,
       },
       {
-        dir: 'dist/cjs',
+        file: 'dist/cjs/index.cjs',
         format: 'cjs',
         exports: 'named',
         sourcemap: true
diff --git a/pkg/npm/http-api/package.json b/pkg/npm/http-api/package.json
index 8b5f497679..1ac27d0348 100644
--- a/pkg/npm/http-api/package.json
+++ b/pkg/npm/http-api/package.json
@@ -1,6 +1,6 @@
 {
   "name": "@urbit/http-api",
-  "version": "2.1.0",
+  "version": "2.1.1",
   "license": "MIT",
   "description": "Library to interact with an Urbit ship over HTTP",
   "repository": {
@@ -9,8 +9,12 @@
     "directory": "pkg/npm/http-api"
   },
   "type": "module",
-  "main": "dist/cjs/index.js",
+  "main": "dist/cjs/index.cjs",
   "module": "dist/esm/index.js",
+  "exports": {
+    "require": "./dist/cjs/index.cjs",
+    "import": "./dist/esm/index.js"
+  },
   "jsdelivr": "dist/urbit-http-api.min.js",
   "unpkg": "dist/urbit-http-api.min.js",
   "types": "dist/index.d.ts",
diff --git a/pkg/npm/http-api/rollup.config.ts b/pkg/npm/http-api/rollup.config.ts
index 6ad92c7eb1..75767ba08d 100644
--- a/pkg/npm/http-api/rollup.config.ts
+++ b/pkg/npm/http-api/rollup.config.ts
@@ -56,13 +56,13 @@ export default [
     ],
     output: [
       {
-        dir: 'dist/esm',
+        file: 'dist/esm/index.js',
         format: 'esm',
         exports: 'named',
         sourcemap: true,
       },
       {
-        dir: 'dist/cjs',
+        file: 'dist/cjs/index.cjs',
         format: 'cjs',
         exports: 'named',
         sourcemap: true,