A fast, local-first "redirection engine" for !bang users with a few extra features ^-^
1<!doctype html>
2<html lang="en">
3 <head>
4 <meta charset="UTF-8" />
5 <link rel="icon" type="image/gif" href="/goose.gif" />
6 <link
7 rel="search"
8 type="application/opensearchdescription+xml"
9 title="Unduck"
10 href="/opensearch.xml"
11 />
12 <style>
13 /* Font fallback that closely matches Inter metrics */
14 @font-face {
15 font-family: "Inter Fallback";
16 size-adjust: 107%;
17 ascent-override: 90%;
18 src: local("Arial");
19 font-display: swap;
20 }
21
22 :root {
23 font-family:
24 Inter,
25 "Inter Fallback",
26 system-ui,
27 -apple-system,
28 BlinkMacSystemFont,
29 "Segoe UI",
30 Roboto,
31 Oxygen,
32 Ubuntu,
33 Cantarell,
34 "Open Sans",
35 "Helvetica Neue",
36 sans-serif;
37 font-synthesis: none;
38 text-rendering: optimizeLegibility;
39 -webkit-font-smoothing: antialiased;
40 -moz-osx-font-smoothing: grayscale;
41
42 /* Light mode colors */
43 --text-color: #1a1a1a;
44 --text-color-secondary: #666;
45 --text-color-hover: #333;
46 --bg-color: #fff;
47 --bg-color-secondary: #f5f5f5;
48 --bg-color-hover: #f0f0f0;
49 --bg-color-active: #e5e5e5;
50 --bg-color-danger: #e9808a;
51 --border-color: #ddd;
52 }
53
54 @media (prefers-color-scheme: dark) {
55 :root {
56 --text-color: #e0e0e0;
57 --text-color-secondary: #999;
58 --text-color-hover: #fff;
59 --bg-color: #121212;
60 --bg-color-secondary: #1e1e1e;
61 --bg-color-hover: #2a2a2a;
62 --bg-color-active: #333;
63 --bg-color-danger: #f15f6d;
64 --border-color: #444;
65 }
66 }
67
68 * {
69 margin: 0;
70 padding: 0;
71 box-sizing: border-box;
72 outline: none;
73 }
74 *:focus {
75 outline: 2px solid var(--text-color-secondary);
76 }
77
78 html, body {
79 height: 100%;
80 width: 100%;
81 }
82
83 body {
84 line-height: 1.5;
85 font-weight: 400;
86 font-size: 16px;
87 color: var(--text-color);
88 background-color: var(--bg-color);
89 }
90
91 #app {
92 min-height: 100vh;
93 background-color: var(--bg-color);
94 }
95
96 input {
97 margin: 2px 0px !important;
98 padding: 8px 12px;
99 border: 1px solid var(--border-color);
100 border-radius: 4px;
101 width: 100%;
102 background: var(--bg-color-secondary);
103 color: var(--text-color);
104 font: inherit;
105 }
106
107 button {
108 font: inherit;
109 border: none;
110 background: none;
111 cursor: pointer;
112 color: var(--text-color-secondary);
113 }
114
115 button:hover {
116 background: var(--bg-color-hover);
117 }
118 </style>
119 <meta name="viewport" content="width=device-width, initial-scale=1.0" />
120 <title>Unduck</title>
121 <meta
122 name="description"
123 content="A better default search engine (with bangs!)"
124 />
125 </head>
126 <body>
127 <div id="app"></div>
128 <script type="module" src="/src/main.ts"></script>
129 </body>
130</html>