A powerful web proxy built for speed and customization.
192
stars
218
commits
TypeScript
primary language
Sep 20, 2024
updated
Access the web with this stylish web proxy made in Preact supporting many sites. Metallic was originally created for TN's proxathon where it won 2nd place!
Metallic uses pnpm. Install it using npm install -g pnpm.
[!TIP] Run
pnpm installto install the required dependencies.
Run
Run pnpm start to start the server. If no build folder if found, Metallic will attempt to build.
Build
Run pnpm run build to build app for production into the build folder.
Build Static
Run pnpm run build-static to build the app for production into the dist folder. This is for static hosting on Github Pages etc. Make sure to change the Wisp server in /index.html to an external one and turn off Rammerhead in /src/settings.ts.
Development
Run npm run dev to run the app in development mode.
Themes
Themes can be configured from the /src/themes.json file. The file should be an array of objects using the format below.
[!IMPORTANT]
Themes file will be validated before building, starting the server, or the dev server.
{
"name": "string", # Display name of theme
"id": "string", # Unique ID of theme
"theme": {
"background": "string", # Background color of site
"secondary": "string", # Buttons and inputs
"primary": "string", # Icons amd logo
"text": "string", # Text color
"textInverse": "string", # Text color for buttons and inputs
"font": "string" # Font for website (default is "Roboto")
},
"custom": { # Optional
"selector": { # CSS selector (".nav" for example)
"key": "string" # CSS key and value ("background": "red" for example)
}
}
}
Using older versions of Node.js will cause Metallic not work. Upgrade to the latest version using nvm install --lts.
Check out the changelog and roadmap
Metallic uses the AGPL-3.0 license.
TypeScript
92.2%
JavaScript
5.1%
CSS
1.9%
A powerful web proxy built for speed and customization.
192
stars
218
commits
TypeScript
primary language
Sep 20, 2024
updated
Access the web with this stylish web proxy made in Preact supporting many sites. Metallic was originally created for TN's proxathon where it won 2nd place!
Metallic uses pnpm. Install it using npm install -g pnpm.
[!TIP] Run
pnpm installto install the required dependencies.
Run
Run pnpm start to start the server. If no build folder if found, Metallic will attempt to build.
Build
Run pnpm run build to build app for production into the build folder.
Build Static
Run pnpm run build-static to build the app for production into the dist folder. This is for static hosting on Github Pages etc. Make sure to change the Wisp server in /index.html to an external one and turn off Rammerhead in /src/settings.ts.
Development
Run npm run dev to run the app in development mode.
Themes
Themes can be configured from the /src/themes.json file. The file should be an array of objects using the format below.
[!IMPORTANT]
Themes file will be validated before building, starting the server, or the dev server.
{
"name": "string", # Display name of theme
"id": "string", # Unique ID of theme
"theme": {
"background": "string", # Background color of site
"secondary": "string", # Buttons and inputs
"primary": "string", # Icons amd logo
"text": "string", # Text color
"textInverse": "string", # Text color for buttons and inputs
"font": "string" # Font for website (default is "Roboto")
},
"custom": { # Optional
"selector": { # CSS selector (".nav" for example)
"key": "string" # CSS key and value ("background": "red" for example)
}
}
}
Using older versions of Node.js will cause Metallic not work. Upgrade to the latest version using nvm install --lts.
Check out the changelog and roadmap
Metallic uses the AGPL-3.0 license.
TypeScript
92.2%
JavaScript
5.1%
CSS
1.9%