├── .npmrc
├── LICENSE
├── README.md
├── index.js
├── package.json
└── plugins.json
/.npmrc:
--------------------------------------------------------------------------------
1 | package-lock=false
2 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Rosé Pine
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
Rosé Pine for Hyper
4 |
5 |
6 | All natural pine, faux fur and a bit of soho vibes for the classy minimalist
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | ## Usage
15 |
16 | ```sh
17 | hyper i hyper-rose-pine
18 | ```
19 |
20 | or
21 |
22 | ```javascript
23 | // Hyper config, e.g. ~/.hyper.js
24 | plugins: ["hyper-rose-pine"],
25 | ```
26 |
27 | ## Options
28 |
29 | ```javascript
30 | config: {
31 | theme: {
32 | // @usage 'main' | 'moon' | 'dawn'
33 | // @default 'main'
34 | variant: 'dawn',
35 |
36 | // Optionally, override Rosé Pine palette per variant
37 | // https://rosepinetheme.com/palette
38 | main: {},
39 | moon: {},
40 | dawn: {
41 | muted: '#dfff00'
42 | }
43 | }
44 | }
45 | ```
46 |
47 | ## Gallery
48 |
49 | **Rosé Pine**
50 |
51 | 
52 |
53 | **Rosé Pine Moon**
54 |
55 | 
56 |
57 | **Rosé Pine Dawn**
58 |
59 | 
60 |
--------------------------------------------------------------------------------
/index.js:
--------------------------------------------------------------------------------
1 | const variants = {
2 | main: {
3 | base: "#191724",
4 | surface: "#1f1d2e",
5 | overlay: "#26233a",
6 | muted: "#6e6a86",
7 | subtle: "#908caa",
8 | text: "#e0def4",
9 | love: "#eb6f92",
10 | gold: "#f6c177",
11 | rose: "#ebbcba",
12 | pine: "#31748f",
13 | foam: "#9ccfd8",
14 | iris: "#c4a7e7",
15 | highlightLow: "#21202e",
16 | highlightMed: "#403d52",
17 | highlightHigh: "#524f67",
18 | },
19 | moon: {
20 | base: "#232136",
21 | surface: "#2a273f",
22 | overlay: "#393552",
23 | muted: "#6e6a86",
24 | subtle: "#908caa",
25 | text: "#e0def4",
26 | love: "#eb6f92",
27 | gold: "#f6c177",
28 | rose: "#ea9a97",
29 | pine: "#3e8fb0",
30 | foam: "#9ccfd8",
31 | iris: "#c4a7e7",
32 | highlightLow: "#2a283e",
33 | highlightMed: "#44415a",
34 | highlightHigh: "#56526e",
35 | },
36 | dawn: {
37 | base: "#faf4ed",
38 | surface: "#fffaf3",
39 | overlay: "#f2e9de",
40 | muted: "#9893a5",
41 | subtle: "#797593",
42 | text: "#575279",
43 | love: "#b4637a",
44 | gold: "#ea9d34",
45 | rose: "#d7827e",
46 | pine: "#286983",
47 | foam: "#56949f",
48 | iris: "#907aa9",
49 | highlightLow: "#f4ede8",
50 | highlightMed: "#dfdad9",
51 | highlightHigh: "#cecacd",
52 | },
53 | };
54 |
55 | const variantNames = ["main", "moon", "dawn"];
56 |
57 | exports.decorateConfig = (config) => {
58 | const variant =
59 | (config.theme &&
60 | variantNames.includes(config.theme.variant) &&
61 | config.theme.variant) ||
62 | "main";
63 | const palette = variants[variant];
64 |
65 | if (
66 | config.theme &&
67 | Object.keys(config.theme).includes(variant) &&
68 | typeof config.theme[variant] === "object"
69 | ) {
70 | for (const param of Object.keys(config.theme[variant])) {
71 | palette[param] = config.theme[variant][param];
72 | }
73 | }
74 |
75 | const colors = {
76 | black: palette.overlay,
77 | lightBlack: palette.subtle,
78 | white: palette.text,
79 | lightWhite: palette.text,
80 | blue: palette.foam,
81 | lightBlue: palette.foam,
82 | cyan: palette.rose,
83 | lightCyan: palette.rose,
84 | green: palette.pine,
85 | lightGreen: palette.pine,
86 | magenta: palette.iris,
87 | lightMagenta: palette.iris,
88 | red: palette.love,
89 | lightRed: palette.love,
90 | yellow: palette.gold,
91 | lightYellow: palette.gold,
92 | };
93 |
94 | return Object.assign({}, config, {
95 | padding: config.padding || "12px 30px 30px 30px",
96 | backgroundColor: palette.base,
97 | foregroundColor: palette.text,
98 | cursorColor: palette.highlightHigh,
99 | cursorAccentColor: palette.text,
100 | selectionColor: palette.highlightMed,
101 | borderColor: "#0000",
102 | css: `
103 | ${config.css || ""}
104 | .tab_text { color: ${palette.subtle} }
105 | .tab_textActive { color: ${palette.text} }
106 | `,
107 | colors,
108 | });
109 | };
110 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "hyper-rose-pine",
3 | "version": "3.0.2",
4 | "description": "All natural pine, faux fur and a bit of soho vibes for the classy minimalist",
5 | "license": "MIT",
6 | "repository": "rose-pine/hyper",
7 | "funding": "https://github.com/rose-pine/hyper?sponsor=1",
8 | "author": "fvrests",
9 | "scripts": {
10 | "release": "npx np@latest --no-tests"
11 | },
12 | "files": [
13 | "index.js"
14 | ],
15 | "keywords": [
16 | "hyper",
17 | "hyper-theme",
18 | "minimal",
19 | "aesthetic",
20 | "pastel",
21 | "classy",
22 | "soft"
23 | ]
24 | }
25 |
--------------------------------------------------------------------------------
/plugins.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "hyper-rose-pine",
3 | "type": "theme",
4 | "preview": "https://github.com/fvrests/hyper-rose-pine/raw/main/assets/preview.png",
5 | "colors": [
6 | "#191724",
7 | "#706e86",
8 | "#e0def4",
9 | "#eb6f92",
10 | "#f6c177",
11 | "#ebbcba",
12 | "#31748f",
13 | "#9ccfd8",
14 | "#c4a7e7"
15 | ],
16 | "dateAdded": "1582919913142"
17 | }
18 |
--------------------------------------------------------------------------------