Skip to content

Commit 70fa803

Browse files
authored
Merge pull request #97 from doki-theme/v74.2-2.0.0-switch
v74.2-2.0.0 [Synapse break. Vanishment, this world!]
2 parents 1d88150 + def60ef commit 70fa803

3,867 files changed

Lines changed: 60626 additions & 62052 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CHANGELOG.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,23 @@
11
Changelog
22
---
33

4-
# Unreleased
4+
# v74.2-2.0.0 [Synapse break. Vanishment, this world!]
5+
6+
**4 New Dark Themes!**
7+
8+
- Decimate errors in the code alongside the Wicked Lord Shingan. Let your inner fantasies go rampant with Rikka Takanashi from: "Love, Chuunibyou, and Other Delusions".
9+
- It is comfy time! Don't let feature requests stress you out, because you can now code with Nadeshiko from Yuru Camp.
10+
- A Certain Scientific RailGun go: bzzzzzzt. Zap bugs out of existence with the electromaster Mikoto Misaka.
11+
- Raccoon + Tanuki = one really cute cinnamon bun. Enjoy your time coding with Raphtalia from: "Rising of the Shield Hero."
12+
13+
![v74 Girls](https://doki.assets.unthrottled.io/misc/v74_girls.png)
14+
15+
### Other Stuff
16+
17+
- Moved the Firefox extension [from doki-theme-web](https://github.com/doki-theme/doki-theme-web) to [doki-theme-firefox](https://github.com/doki-theme/doki-theme-firefox).
18+
- Removed the `masterExtension` in favor of a `theme` and `newTab` theme specific extension for both Edge & Chrome.
19+
- Any maintainer now has the ability successfully run a build, no private dependencies now.
20+
- Updated extension to use centrally defined asset anchoring data.
521

622
# 18.1.0 [Opt-In FireFox Features]
723

CONTRIBUTING.md

Lines changed: 62 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ Contributing
55

66
- [Build Process](#build-process-high-level-overview)
77
- [Getting Started](#getting-started)
8+
- [Dev Notes](#dev-notes)
89
- [Editing Themes](#editing-themes)
910
- [Creating New Themes](#creating-new-themes)
1011

@@ -29,7 +30,6 @@ more familiar with the process as a whole.
2930

3031
- Yarn package manager
3132
- Node 14
32-
- Firefox
3333
- Chrome
3434
- Microsoft Edge
3535

@@ -63,12 +63,22 @@ on Windows, have you considered Linux? Just kidding (mostly), you'll need to run
6363
```shell
6464
git clone https://github.com/doki-theme/doki-master-theme.git masterThemes
6565
```
66+
**Get the Assets**
67+
68+
In the same parent folder as `doki-theme-web` you'll need to clone the `doki-theme-assets` repository, that way the
69+
build script can copy the correct assets so they can be bundled with the plugin.
70+
71+
```shell
72+
git clone https://github.com/doki-theme/doki-theme-assets.git
73+
```
74+
6675

6776
Your directory structure should have at least these directories, (there will probably be more, but these are the
6877
important ones to know).
6978

7079
```
7180
your-workspace/
81+
├─ doki-theme-assets/
7282
├─ doki-theme-web/
7383
│ ├─ masterThemes/
7484
│ ├─ buildSrc/
@@ -93,6 +103,50 @@ This will install all the required dependencies to run the theme build process.
93103

94104
You should be good to edit and add themes after that!
95105

106+
# Dev Notes
107+
108+
Running the `pluginSource` application is a two step process.
109+
110+
Make sure to have installed `web-ext` globally
111+
112+
```shell
113+
npm i -g web-ext
114+
```
115+
116+
Then to run the extension in a browser just run this in `pluginSource` directory:
117+
118+
```shell
119+
web-ext -s .\dist run --target chromium
120+
```
121+
122+
To have changes live reload, in the `pluginSource` run dis:
123+
124+
```shell
125+
npm run watch
126+
```
127+
128+
Note: Before running
129+
130+
```shell
131+
yarn buildThemes
132+
```
133+
134+
You'll need to build the extension in `pluginSource` first.
135+
136+
Make sure that the dependencies are installed
137+
138+
```shell
139+
npm install
140+
```
141+
142+
Then you can run
143+
144+
```shell
145+
npm run build
146+
```
147+
148+
After that, `yarn buildThemes` should work as expected :)
149+
96150
## Theme Editing Process
97151

98152
I have too many themes to maintain manually, so theme creation/maintenance is automated and shared common parts to
@@ -112,25 +166,25 @@ Inside the `buildSrc` directory, there will be 2 directories:
112166
things.
113167

114168
The `buildSrc` directory houses a `buildDefinitions` script that generates the application specific files necessary for apply
115-
the Doki Theme Suite. (**NOTE** you can't run `buildThemes` only I can, sorry!)
169+
the Doki Theme Suite.
116170

117171
### Web specifics
118172

119173
There are two files of importance. They can be found in `buildSrc/assets/templates`. The files, `*.template`, are
120-
the templates for common CSS that used for all themes.
174+
the templates for common information that used for all themes.
121175

122176
These templates are evaluated as part of the theme building process. When you run this command in the `buildSrc`
123177
directory:
124178

125179
```shell
126-
yarn buildDefinitions
180+
yarn buildThemes
127181
```
128182

129183
This will:
130184

131-
- build out the `firefox` and `chrome` manifest templates
132-
- Create the tab images for the chrome themes
133-
- Build the `DokiThemeDefinitions.ts` for both the `masterExtension` and Firefox extension.
185+
- build out the `chrome` manifest templates
186+
- Create the tab images for the chrome themes, themed plugin icons, and probably more stuff since I've written this.
187+
- Build the `DokiThemeDefinitions.ts` for both the `pluginSource` extension.
134188

135189
Sometimes a particular theme has something that is just a bit off. Thankfully, there is a way to fix small one-off
136190
issues.
@@ -140,7 +194,6 @@ defaults provided by the `masterThemes`
140194

141195
Here is an example that overrides the following:
142196

143-
- The background placement
144197
- Search bar text color
145198

146199
```json
@@ -150,9 +203,6 @@ Here is an example that overrides the following:
150203
"theme": {
151204
"colors": {
152205
"omnibox_text": "&accentColorDarker&"
153-
},
154-
"properties": {
155-
"ntp_background_alignment": "right"
156206
}
157207
}
158208
},
@@ -215,7 +265,7 @@ yarn generateTemplates
215265

216266
The code defined in the `buildSrc/src` directory is part of the common Doki Theme construction suite. All other plugins
217267
work the same way, just some details change for each plugin (especially for this plugin). This group of code exposes
218-
a `buildDefinitions` node script (**NOTE** you can't run `buildThemes` only I can, sorry!).
268+
a `buildThemes` node script.
219269

220270
This script does all the annoying tedious stuff such as:
221271

README.md

Lines changed: 30 additions & 148 deletions
Original file line numberDiff line numberDiff line change
@@ -1,113 +1,44 @@
11
# Doki Theme Web
2-
| Google Chrome | Microsoft Edge | Mozilla Firefox |
3-
|----------------------------------------------------------|-----------------------------------------------------|-------------------------------------------------------------------|
4-
| ![Megumin Chrome](./screenshots/backgrounds/megumin.png) | ![Rem Edge](./screenshots/backgrounds/rem_edge.png) | ![Aqua FireFox](./screenshots/backgrounds/firefox_background.png) |
2+
| Google Chrome | Microsoft Edge |
3+
|-----------------------------------------------------------------|---------------------------------------------------------|
4+
| ![Yotsuba Chrome](./screenshots/backgrounds/yotsuba_chrome.png) | ![Azuki Edge](./screenshots/backgrounds/azuki_edge.png) |
55

66
# Table of Contents
7+
8+
**Note**: Doki Theme for Firefox [has been moved to another repository](https://github.com/doki-theme/doki-theme-firefox).
9+
710
- [Feature Set](#feature-set)
8-
- [Master Extension](#master-extension)
9-
- [Firefox Features](#firefox-features)
10-
- [General Settings](#firefox-general-settings)
11-
- [Theme Settings](#firefox-theme-settings)
12-
- [Match Device Option](#match-device-option)
13-
- [Druthers Option](#druthers-option)
14-
- [Light Only Option](#light-only-option)
15-
- [Dark Only Option](#dark-only-option)
16-
- [All Option](#all-option)
1711
- [Installation](#installation)
18-
- [Demonstration Overview](#demonstration-overview)
1912
- [Google Chrome](#google-chrome)
2013
- [Microsoft Edge](#microsoft-edge)
21-
- [Mozilla Firefox](#mozilla-firefox)
22-
- [Possible Issues](#possible-issues)
23-
- [Light Theme Tab Text](#light-theme-tab-text)
2414
- [Contributions and Issues](#contributions-and-issues)
2515

2616

2717
# Feature Set
28-
## Master Extension
29-
30-
Want to enhance your browsing experience? Then this plugin is for you! This extension will modify
31-
the CSS of every webpage you visit to match your current theme choices.
32-
33-
Things that are currently changed:
34-
- Selection foreground/background
35-
- Scrollbars
36-
37-
# FireFox Features
38-
## Firefox: General Settings
39-
40-
***Load Doki Theme page on startup*** allows the plugin to automatically start up the browser with
41-
the empty Doki Theme tab, which shows your current theme's character!
42-
43-
_Note:_ Enabling this will overwrite the **Open previous windows and tabs** feature in your
44-
Firefox Settings. [See GitHub issue for more info](https://github.com/doki-theme/doki-theme-web/issues/51).
45-
46-
![Firefox settings](./screenshots/firefox_config.png)
47-
48-
***Text Selection*** overrides the default text selection colors to match the current Doki Theme.
4918

50-
**Scrollbar** themes the current tab's scrollbars to match the Doki Theme standard scrollbar color.
19+
Because Chrome & Edge are jerks, I need to provide 2 extensions:
20+
- One to theme your browser
21+
- One to modify the contents of your active tab & Theme your New tab.
5122

52-
## FireFox: Theme Settings
53-
The Doki Theme for FireFox can synchronize with your device theme settings.
23+
**Theme Extension**
5424

55-
Never want to see light mode ever again? No problem! The *Options page* now allows you to choose
56-
between `light`, `dark`, `device`, `druthers`, or `all` *(all themes)*. So take your time and
57-
browse.
25+
This makes your browser look and feel like it is part of the Doki Theme.
5826

59-
### Match Device Option
60-
`device` will load only themes based on your current device theme settings *(either light or dark)*.
61-
In other words, your device settings determines what characters are present in the popup menu.
27+
**New Tab Extension**
6228

63-
#### With Random Select *(Dark System Setting)*
64-
https://user-images.githubusercontent.com/23222943/146148772-c7e236ed-6be6-46b6-ac2d-aa3f1b1326ca.mp4
29+
This extension overrides your New Tab, and replaces it with a tab whose background has the official Doki Theme asset.
30+
It also can inject styles into ever tab to theme the: Scroll Bar & Selection text, to match your selected theme.
6531

66-
#### With Mixed Mode *(Light System Setting)*
67-
https://user-images.githubusercontent.com/23222943/146149663-22ad428e-0cc7-45f8-9700-1fc4c6f616d2.mp4
68-
69-
### Druthers Option
70-
`druthers` is similar to `device` except the character chosen for the light theme and the
71-
character chosen for the dark theme will alternate depending on your current device settings.
72-
73-
For clarity, if I choose *Maple* for the **light theme** & *Jahy-sama* for the **dark theme**.
74-
If the device setting is **currently dark**, then *Jahy-sama's* theme will show. If the device
75-
setting is *light*, then *Maple's* theme will show.
76-
77-
#### Example
78-
https://user-images.githubusercontent.com/23222943/146766085-ecb1b416-a678-4cbc-a75c-44c7fb5b32de.mp4
79-
80-
### Dark Only Option
81-
`dark` will load only dark themes. The popup menu will only load dark themes. This is for all you
82-
dark theme lovers out there!
83-
84-
### Light Only Option
85-
`light` will load only light themes. The popup menu will only load light themes. This is for all
86-
you light theme lovers out there!
32+
### Configuration
8733

88-
### All Option
89-
`all` is the default settings of Doki Theme. All themes will be present.
34+
You can configure the extension by opening the popup menu & clicking:
35+
- The Doki Theme logo located at the top.
9036

9137
# Installation
92-
## Demonstration Overview
93-
![Theme Usage](./screenshots/chrome_usage.gif)
94-
95-
> This process demonstrates local installation.
96-
> You should be able to install these themes from the Chrome store soon!
97-
98-
## Demo Steps
99-
1. Install Emilia Dark's theme.
100-
1. Use the Master Extension popup to change how CSS is altered github.
101-
1. See that scroll bar and selection colors are now themed.
102-
1. Install Rem's theme.
103-
1. Use the Master Extension options to change how CSS is altered.
104-
1. Demonstrate that old css alteration is still present.
105-
1. Refresh
106-
1. Observe that updated css alterations are now present.
10738

10839
## Google Chrome
109-
Ideally, this plugin should be distributed by the **Chrome web store**.
110-
Until then, you'll have to do a local installation.
40+
41+
https://user-images.githubusercontent.com/15972415/157995434-30b5bdfc-b005-416f-a3fa-4bfdf72bc1be.mp4
11142

11243
### Steps
11344
1. Clone this repository
@@ -116,77 +47,28 @@ Until then, you'll have to do a local installation.
11647
- The Extension Management page can also be opened by clicking on the Chrome menu, hovering over More Tools then selecting Extensions.
11748
1. Enable Developer Mode by clicking the toggle switch next to Developer mode.
11849
1. Click the LOAD UNPACKED button and select the extension directory.
119-
![Load unpacked](https://developer.chrome.com/static/images/get_started/load_extension.png)
12050
1. Navigate to the cloned repository
121-
1. To install a theme, go to `chromeThemes` and just select the theme directory you want and `open` or confirm.
122-
1. To install the master extension, go to `masterExtension` and just select the `installable_extension` directory and `open` or confirm.
51+
1. To install a theme, go to `chromeThemes` and just select the theme directory you want.
52+
1. Then choose the `newTab` directory and `open` or confirm. Repeat this process for the `theme` extension.
12353
1. Enjoy!
12454

12555
## Microsoft Edge
126-
Ideally, this plugin should be distributed by the **Microsoft Edge Add-on store**.
127-
Until then, you'll have to do a local installation.
12856

129-
### Prerequisites
130-
- Edge v83.0.471.0 or above [consider downloading the canary/dev version](https://www.microsoftedgeinsider.com/en-us/download)
57+
https://user-images.githubusercontent.com/15972415/157995436-98b957e0-1274-4f65-934d-27b857792ec7.mp4
13158

13259
### Steps
13360
1. Clone this repository
134-
1. Open Edge
135-
1. Open the Extension Management page by navigating to edge://extensions.
61+
2. Open Edge
62+
3. Open the Extension Management page by navigating to edge://extensions.
13663
- The Extension Management page can also be opened by clicking on the Edge menu, hovering over More Tools then selecting Extensions.
137-
1. Enable Developer Mode by clicking the toggle switch next to Developer mode (1).
138-
1. Click the LOAD UNPACKED button and select the extension directory (2).
139-
![Load unpacked](./screenshots/edge_install.png)
140-
1. Navigate to the cloned repository
141-
1. To install a theme, go to `edgeThemes` and just select the theme directory you want and `open` or confirm.
142-
1. To install the master extension, go to `masterExtension` and just select the `installable_extension` directory and `open` or confirm.
143-
1. Navigate to a new empty tab in the browser.
144-
1. Select the settings in the upper right-hand corner.
145-
1. Choose `Custom` layout.
146-
1. Choose `Your own image` and upload your chosen background.
147-
- You can find background images in the `chromeThemes` directory [here is Rem's 1920x1080.](https://github.com/doki-theme/doki-theme-web/blob/master/chromeThemes/Rem's%20Theme/images/rem.png)
148-
![Setting Background](./screenshots/edge_background.gif)
149-
1. Enjoy!
150-
151-
## Mozilla Firefox
152-
There are *2* ways to install this extension.
153-
154-
### Prerequisites
155-
- Mozilla Firefox 95 or above
156-
157-
### Mozilla's Add-on Store
158-
You can install the extension from the [FireFox addon marketplace.](https://addons.mozilla.org/en-US/firefox/addon/doki-theme-for-firefox/)
159-
160-
### Manual Installation
161-
If you don't feel like installing the addon from the store, then follow the below steps.
162-
163-
#### Steps
164-
1. Clone this repository
165-
2. Open Firefox
166-
3. Type in the search bar `about:debugging`
167-
4. Select *This Firefox* and click *Load Temporary Add-on...*
168-
5. Choose the *manifest.json* file in the Firefox directory
169-
6. Now, select the doki-theme icon on the toolbar & Choose a theme to load
170-
7. And that's it!
171-
172-
***Warning:*** This is a temporary way of installing *Doki Theme*. Everytime the browser is closed, the extension
173-
must be reinstalled again using these steps.
174-
175-
### Configuration
176-
177-
You can configure the extension by opening the popup menu & clicking:
178-
- The Doki Theme logo located at the top.
179-
180-
**OR**
181-
- The`Show Settings` link located at the bottom.
64+
4. Enable Developer Mode by clicking the toggle switch next to Developer mode (1).
65+
5. Click the LOAD UNPACKED button and select the extension directory (2).
66+
6. Navigate to the cloned repository
67+
1. To install a theme, go to `edgeThemes` and just select the theme directory you want.
68+
1. Then choose the `newTab` directory and `open` or confirm. Repeat this process for the `theme` extension.
69+
7. Enjoy!
18270

183-
# Possible Issues
184-
## Light Theme Tab Text
185-
- [How to fix](https://github.com/doki-theme/doki-theme-web/wiki/Firefox-light-themes) issue
18671

187-
| before | after |
188-
|-------------------------------------------------------|-----------------------------------------------------|
189-
| ![before fix](./screenshots/firefoxIssues/before.png) | ![after fix](./screenshots/firefoxIssues/after.png) |
19072

19173

19274
# Contributions and Issues

0 commit comments

Comments
 (0)