From 8782a64b18966624cdabcc3f5c07e3ce3be372cf Mon Sep 17 00:00:00 2001
From: syuilo <syuilotan@yahoo.co.jp>
Date: Sun, 30 Dec 2018 06:40:48 +0900
Subject: [PATCH] [Client] Add some themes :art:

---
 src/client/app/theme.ts                   |  8 +++++++-
 src/client/theme/cafe.json5               | 20 ++++++++++++++++++++
 src/client/theme/gruvbox-dark.json5       | 20 ++++++++++++++++++++
 src/client/theme/japanese-sushi-set.json5 | 20 ++++++++++++++++++++
 4 files changed, 67 insertions(+), 1 deletion(-)
 create mode 100644 src/client/theme/cafe.json5
 create mode 100644 src/client/theme/gruvbox-dark.json5
 create mode 100644 src/client/theme/japanese-sushi-set.json5

diff --git a/src/client/app/theme.ts b/src/client/app/theme.ts
index de6546c5b0..d53bad7141 100644
--- a/src/client/app/theme.ts
+++ b/src/client/app/theme.ts
@@ -15,13 +15,19 @@ export const darkTheme: Theme = require('../theme/dark.json5');
 export const pinkTheme: Theme = require('../theme/pink.json5');
 export const blackTheme: Theme = require('../theme/black.json5');
 export const halloweenTheme: Theme = require('../theme/halloween.json5');
+export const cafeTheme: Theme = require('../theme/cafe.json5');
+export const japaneseSushiSetTheme: Theme = require('../theme/japanese-sushi-set.json5');
+export const gruvboxDarkTheme: Theme = require('../theme/gruvbox-dark.json5');
 
 export const builtinThemes = [
 	lightTheme,
 	darkTheme,
 	pinkTheme,
 	blackTheme,
-	halloweenTheme
+	halloweenTheme,
+	cafeTheme,
+	japaneseSushiSetTheme,
+	gruvboxDarkTheme
 ];
 
 export function applyTheme(theme: Theme, persisted = true) {
diff --git a/src/client/theme/cafe.json5 b/src/client/theme/cafe.json5
new file mode 100644
index 0000000000..c607946ab5
--- /dev/null
+++ b/src/client/theme/cafe.json5
@@ -0,0 +1,20 @@
+{
+	id: '0ff48d43-aab3-46e7-ab12-8492110d2e2b',
+
+	name: 'Cafe',
+	author: 'syuilo',
+
+	base: 'light',
+
+	vars: {
+		primary: 'rgb(234, 154, 82)',
+		secondary: 'rgb(238, 236, 232)',
+		text: 'rgb(149, 143, 139)',
+	},
+
+	props: {
+		renoteGradient: '#ffe1c7',
+		renoteText: '$primary',
+		quoteBorder: '$primary',
+	},
+}
diff --git a/src/client/theme/gruvbox-dark.json5 b/src/client/theme/gruvbox-dark.json5
new file mode 100644
index 0000000000..b140dbcae2
--- /dev/null
+++ b/src/client/theme/gruvbox-dark.json5
@@ -0,0 +1,20 @@
+{
+	id: '0c6e70e2-a1ec-4053-9b1a-b6082fe016cb',
+
+	name: 'gruvbox dark',
+	author: 'syuilo',
+
+	base: 'dark',
+
+	vars: {
+		primary: 'rgb(215, 153, 33))',
+		secondary: 'rgb(40, 40, 40)',
+		text: 'rgb(235, 219, 178)',
+	},
+
+	props: {
+		renoteGradient: '#58581e',
+		renoteText: 'rgb(169, 174, 36)',
+		quoteBorder: 'rgb(169, 174, 36)',
+	},
+}
diff --git a/src/client/theme/japanese-sushi-set.json5 b/src/client/theme/japanese-sushi-set.json5
new file mode 100644
index 0000000000..ec225db5b8
--- /dev/null
+++ b/src/client/theme/japanese-sushi-set.json5
@@ -0,0 +1,20 @@
+{
+	id: '2b0a0654-cdb4-4c9a-8244-736b647d3c2a',
+
+	name: 'Japanese Sushi Set',
+	author: 'noizenecio & syuilo',
+
+	base: 'dark',
+
+	vars: {
+		primary: 'rgb(234, 136, 50))',
+		secondary: 'rgb(34, 36, 42)',
+		text: 'rgb(221, 209, 203)',
+	},
+
+	props: {
+		renoteGradient: '#6d3d14',
+		renoteText: '$primary',
+		quoteBorder: '$primary',
+	},
+}