diff --git a/packages/frontend/src/scripts/theme.ts b/packages/frontend/src/scripts/theme.ts
index e59643b09cf4bedab6c4ccbe769e9be87341d895..1fb7a0c3962c450d97d44512d0410244b47702fb 100644
--- a/packages/frontend/src/scripts/theme.ts
+++ b/packages/frontend/src/scripts/theme.ts
@@ -41,6 +41,7 @@ export const getBuiltinThemes = () => Promise.all(
 		'l-cherry',
 		'l-sushi',
 		'l-u0',
+		'l-evilfoundry',
 
 		'd-dark',
 		'd-persimmon',
@@ -52,6 +53,7 @@ export const getBuiltinThemes = () => Promise.all(
 		'd-cherry',
 		'd-ice',
 		'd-u0',
+		'd-evilfoundry',
 		'rosepine',
 		'rosepine-dawn',
 	].map(name => import(`@/themes/${name}.json5`).then(({ default: _default }): Theme => _default)),
diff --git a/packages/frontend/src/store.ts b/packages/frontend/src/store.ts
index 8665cdaf7661fa64c33e0c15d0257102c920e92e..2d91b9782f5283d601ba9e001cc8132275baa0bd 100644
--- a/packages/frontend/src/store.ts
+++ b/packages/frontend/src/store.ts
@@ -598,8 +598,8 @@ interface Watcher {
 /**
  * 常にメモリにロードしておく必要がないような設定情報を保管するストレージ(非リアクティブ)
  */
-import lightTheme from '@/themes/l-cherry.json5';
-import darkTheme from '@/themes/d-ice.json5';
+import lightTheme from '@/themes/l-evilfoundry.json5';
+import darkTheme from '@/themes/d-evilfoundry.json5';
 
 export class ColdDeviceStorage {
 	public static default = {
diff --git a/packages/frontend/src/themes/d-evilfoundry.json5 b/packages/frontend/src/themes/d-evilfoundry.json5
new file mode 100644
index 0000000000000000000000000000000000000000..48c4de13a61867d0b0e23ea270166b6b185ded01
--- /dev/null
+++ b/packages/frontend/src/themes/d-evilfoundry.json5
@@ -0,0 +1,91 @@
+{
+	id: '5cad809a-7732-4729-8d6c-63f376a90776',
+	base: 'dark',
+	desc: 'The default theme of the Evil Sharkey instance. (Dark variant)',
+	name: 'Evil Foundry Dark',
+	author: '@23Sonics@evilfoundry.net',
+	props: {
+		bg: '#191502',
+		fg: '#fafafa',
+		cwBg: '#687390',
+		cwFg: '#393f4f',
+		link: '#44a4c1',
+		warn: '#ecb637',
+		badge: '#31b1ce',
+		error: '#ec4137',
+		focus: ':alpha<0.3<@accent',
+		navBg: '@panel',
+		navFg: '@fg',
+		panel: ':lighten<3<@bg',
+		popup: ':lighten<3<@panel',
+		accent: '#af763a',
+		header: ':alpha<0.7<@panel',
+		infoBg: '#253142',
+		infoFg: '#fff',
+		renote: '#229e82',
+		shadow: 'rgba(0, 0, 0, 0.3)',
+		divider: 'rgba(255, 255, 255, 0.1)',
+		hashtag: '#ff9156',
+		mention: ':lighten<13<@accent',
+		modalBg: 'rgba(0, 0, 0, 0.5)',
+		success: '#86b300',
+		buttonBg: 'rgba(255, 255, 255, 0.05)',
+		switchBg: 'rgba(255, 255, 255, 0.15)',
+		acrylicBg: ':alpha<0.5<@bg',
+		cwHoverBg: '#707b97',
+		indicator: '@accent',
+		mentionMe: '@mention',
+		messageBg: '@bg',
+		navActive: '@accent',
+		panelFade: ':alpha<0<@panel',
+		accentedBg: ':alpha<0.15<@accent',
+		codeNumber: '#cfff9e',
+		codeString: '#ffb675',
+		fgOnAccent: '#fff',
+		infoWarnBg: '#42321c',
+		infoWarnFg: '#ffbd3e',
+		navHoverFg: ':lighten<17<@fg',
+		pageHeader: ':alpha<0.85<@bg',
+		swutchOnBg: '@accentedBg',
+		swutchOnFg: '@accent',
+		codeBoolean: '#c59eff',
+		dateLabelFg: '@fg',
+		inputBorder: 'rgba(255, 255, 255, 0.1)',
+		panelBorder: '" solid 1px var(--divider)',
+		swutchOffBg: 'rgba(255, 255, 255, 0.1)',
+		swutchOffFg: '@fg',
+		accentDarken: ':darken<10<@accent',
+		acrylicPanel: ':alpha<0.5<@panel',
+		navIndicator: '@indicator',
+		windowHeader: ':alpha<0.85<@panel',
+		accentLighten: ':lighten<10<@accent',
+		buttonHoverBg: 'rgba(255, 255, 255, 0.1)',
+		driveFolderBg: ':alpha<0.3<@accent',
+		fgHighlighted: ':lighten<3<@fg',
+		fgTransparent: ':alpha<0.5<@fg',
+		panelActiveBg: '@accentedBg',
+		panelActiveFg: '@accent',
+		panelHeaderBg: ':lighten<3<@panel',
+		panelHeaderFg: '@fg',
+		buttonGradateA: '@accent',
+		buttonGradateB: ':hue<20<@accent',
+		dividerHovered: 'rgba(255, 255, 255, 0.15)',
+		htmlThemeColor: '@bg',
+		panelHighlight: ':lighten<3<@panel',
+		listItemHoverBg: 'rgba(255, 255, 255, 0.03)',
+		scrollbarHandle: 'rgba(255, 255, 255, 0.2)',
+		accentDarkenLess: ':darken<5<@accent',
+		inputBorderHover: 'rgba(255, 255, 255, 0.2)',
+		messagingIsNotMe: 'rgba(255, 255, 255, 0.1)',
+		navBgTransparent: ':alpha<0.5<@navBg',
+		panelTransparent: ':alpha<0.7<@panel',
+		wallpaperOverlay: 'rgba(0, 0, 0, 0.5)',
+		accentLightenLess: ':lighten<5<@accent',
+		fgTransparentWeak: ':alpha<0.75<@fg',
+		panelHeaderDivider: 'rgba(0, 0, 0, 0)',
+		calendarInfoMeterBg: 'rgba(0, 0, 0, 0.3)',
+		scrollbarHandleHover: 'rgba(255, 255, 255, 0.4)',
+		postFormButtonHoverBg: 'rgba(255, 255, 255, 0.05)',
+		interactiveElementHovered: 'rgba(255, 255, 255, 0.05)',
+	},
+}
diff --git a/packages/frontend/src/themes/l-evilfoundry.json5 b/packages/frontend/src/themes/l-evilfoundry.json5
new file mode 100644
index 0000000000000000000000000000000000000000..fffa4fb56c0871945090251240b07fde1487e6ff
--- /dev/null
+++ b/packages/frontend/src/themes/l-evilfoundry.json5
@@ -0,0 +1,91 @@
+{
+	id: '001223d4-e269-4b6d-b71f-6c9585d88512',
+	base: 'light',
+	desc: 'The default theme of the Evil Sharkey instance. (Light variant)',
+	name: 'Evil Foundry Light',
+	author: '@23Sonics@evilfoundry.net',
+	props: {
+		bg: '#fff9e1',
+		fg: '#000000',
+		cwBg: '#687390',
+		cwFg: '#393f4f',
+		link: '#44a4c1',
+		warn: '#ecb637',
+		badge: '#31b1ce',
+		error: '#ec4137',
+		focus: ':alpha<0.3<@accent',
+		navBg: '@panel',
+		navFg: '@fg',
+		panel: ':lighten<3<@bg',
+		popup: ':lighten<3<@panel',
+		accent: '#fcab53',
+		header: ':alpha<0.7<@panel',
+		infoBg: '#253142',
+		infoFg: '#fff',
+		renote: '#229e82',
+		shadow: 'rgba(0, 0, 0, 0.3)',
+		divider: 'rgba(255, 255, 255, 0.1)',
+		hashtag: '#935a24',
+		mention: ':darken<30<@accent',
+		modalBg: 'rgba(0, 0, 0, 0.5)',
+		success: '#86b300',
+		buttonBg: 'rgba(255, 255, 255, 0.05)',
+		switchBg: 'rgba(255, 255, 255, 0.15)',
+		acrylicBg: ':alpha<0.5<@bg',
+		cwHoverBg: '#707b97',
+		indicator: '@accent',
+		mentionMe: '@mention',
+		messageBg: '@bg',
+		navActive: '@accent',
+		panelFade: ':alpha<0<@panel',
+		accentedBg: ':alpha<0.15<@accent',
+		codeNumber: '#cfff9e',
+		codeString: '#ffb675',
+		fgOnAccent: '#fff',
+		infoWarnBg: '#f4ba10',
+		infoWarnFg: '#060602',
+		navHoverFg: ':lighten<17<@fg',
+		pageHeader: ':alpha<0.85<@bg',
+		swutchOnBg: '@accentedBg',
+		swutchOnFg: '@accent',
+		codeBoolean: '#c59eff',
+		dateLabelFg: '@fg',
+		inputBorder: 'rgba(255, 255, 255, 0.1)',
+		panelBorder: '" solid 1px var(--divider)',
+		swutchOffBg: 'rgba(255, 255, 255, 0.1)',
+		swutchOffFg: '@fg',
+		accentDarken: ':darken<10<@accent',
+		acrylicPanel: ':alpha<0.5<@panel',
+		navIndicator: '@indicator',
+		windowHeader: ':alpha<0.85<@panel',
+		accentLighten: ':lighten<10<@accent',
+		buttonHoverBg: 'rgba(255, 255, 255, 0.1)',
+		driveFolderBg: ':alpha<0.3<@accent',
+		fgHighlighted: ':lighten<3<@fg',
+		fgTransparent: ':alpha<0.5<@fg',
+		panelActiveBg: '@accentedBg',
+		panelActiveFg: '@accent',
+		panelHeaderBg: ':lighten<3<@panel',
+		panelHeaderFg: '@fg',
+		buttonGradateA: '@accent',
+		buttonGradateB: ':hue<20<@accent',
+		dividerHovered: 'rgba(255, 255, 255, 0.15)',
+		htmlThemeColor: '@bg',
+		panelHighlight: ':lighten<3<@panel',
+		listItemHoverBg: 'rgba(255, 255, 255, 0.03)',
+		scrollbarHandle: 'rgba(255, 255, 255, 0.2)',
+		accentDarkenLess: ':darken<5<@accent',
+		inputBorderHover: 'rgba(255, 255, 255, 0.2)',
+		messagingIsNotMe: 'rgba(255, 255, 255, 0.1)',
+		navBgTransparent: ':alpha<0.5<@navBg',
+		panelTransparent: ':alpha<0.7<@panel',
+		wallpaperOverlay: 'rgba(0, 0, 0, 0.5)',
+		accentLightenLess: ':lighten<5<@accent',
+		fgTransparentWeak: ':alpha<0.75<@fg',
+		panelHeaderDivider: 'rgba(0, 0, 0, 0)',
+		calendarInfoMeterBg: 'rgba(0, 0, 0, 0.3)',
+		scrollbarHandleHover: 'rgba(255, 255, 255, 0.4)',
+		postFormButtonHoverBg: 'rgba(255, 255, 255, 0.05)',
+		interactiveElementHovered: 'rgba(255, 255, 255, 0.05)',
+	},
+}