@octaviaflow/fonts 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +189 -0
- package/css/octaviaflow-fonts.css +296 -0
- package/css/octaviaflow-fonts.min.css +1 -0
- package/fonts/jetbrains-mono/JetBrainsMono-Bold.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-BoldItalic.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-ExtraBold.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-ExtraBoldItalic.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-ExtraLight.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-ExtraLightItalic.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-Italic.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-Light.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-LightItalic.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-Medium.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-MediumItalic.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-Regular.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-SemiBold.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-SemiBoldItalic.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-Thin.woff2 +0 -0
- package/fonts/jetbrains-mono/JetBrainsMono-ThinItalic.woff2 +0 -0
- package/fonts/lufga/LufgaBlack.woff +0 -0
- package/fonts/lufga/LufgaBlackItalic.woff +0 -0
- package/fonts/lufga/LufgaBold.woff +0 -0
- package/fonts/lufga/LufgaBoldItalic.woff +0 -0
- package/fonts/lufga/LufgaExtraBold.woff +0 -0
- package/fonts/lufga/LufgaExtraBoldItalic.woff +0 -0
- package/fonts/lufga/LufgaExtraLight.woff +0 -0
- package/fonts/lufga/LufgaExtraLightItalic.woff +0 -0
- package/fonts/lufga/LufgaItalic.woff +0 -0
- package/fonts/lufga/LufgaLight.woff +0 -0
- package/fonts/lufga/LufgaLightItalic.woff +0 -0
- package/fonts/lufga/LufgaMedium.woff +0 -0
- package/fonts/lufga/LufgaMediumItalic.woff +0 -0
- package/fonts/lufga/LufgaRegular.woff +0 -0
- package/fonts/lufga/LufgaSemiBold.woff +0 -0
- package/fonts/lufga/LufgaSemiBoldItalic.woff +0 -0
- package/fonts/lufga/LufgaThin.woff +0 -0
- package/fonts/lufga/LufgaThinItalic.woff +0 -0
- package/fonts/rtl-united-text/RTLUnitedTextBold.ttf +0 -0
- package/fonts/rtl-united-text/RTLUnitedTextBoldItalic.ttf +0 -0
- package/fonts/rtl-united-text/RTLUnitedTextLight.ttf +0 -0
- package/fonts/rtl-united-text/RTLUnitedTextLightItalic.ttf +0 -0
- package/fonts/rtl-united-text/RTLUnitedTextRegular.ttf +0 -0
- package/fonts/rtl-united-text/RTLUnitedTextRegularItalic.ttf +0 -0
- package/package.json +47 -0
- package/scss/_jetbrains-mono.scss +142 -0
- package/scss/_lufga.scss +159 -0
- package/scss/_rtl-united-text.scss +57 -0
- package/scss/octaviaflow-fonts.scss +8 -0
package/README.md
ADDED
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
# @octaviaflow/fonts
|
|
2
|
+
|
|
3
|
+
> Octaviaflow Design System typeface family
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
The `@octaviaflow/fonts` package provides the Octaviaflow Design System typeface family, including:
|
|
8
|
+
|
|
9
|
+
- **Lufga** - Modern geometric sans-serif (18 styles: Thin to Black, with italics)
|
|
10
|
+
- **RTL United Text** - Right-to-left language support (6 styles: Light to Bold, with italics)
|
|
11
|
+
- **JetBrains Mono** - Monospace font for code (16 styles: Thin to Extra Bold, with italics)
|
|
12
|
+
|
|
13
|
+
## Installation
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm install @octaviaflow/fonts
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Or with Bun:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
bun add @octaviaflow/fonts
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Usage
|
|
26
|
+
|
|
27
|
+
### CSS Import (Recommended)
|
|
28
|
+
|
|
29
|
+
Import the compiled CSS file in your application:
|
|
30
|
+
|
|
31
|
+
```css
|
|
32
|
+
@import '@octaviaflow/fonts/css/octaviaflow-fonts.css';
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Or use the minified version:
|
|
36
|
+
|
|
37
|
+
```css
|
|
38
|
+
@import '@octaviaflow/fonts/css/octaviaflow-fonts.min.css';
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### SCSS Import
|
|
42
|
+
|
|
43
|
+
For more control, import the SCSS files:
|
|
44
|
+
|
|
45
|
+
```scss
|
|
46
|
+
// Import all fonts
|
|
47
|
+
@import '@octaviaflow/fonts/scss/octaviaflow-fonts';
|
|
48
|
+
|
|
49
|
+
// Or import individually
|
|
50
|
+
@import '@octaviaflow/fonts/scss/lufga';
|
|
51
|
+
@import '@octaviaflow/fonts/scss/rtl-united-text';
|
|
52
|
+
@import '@octaviaflow/fonts/scss/jetbrains-mono';
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### Custom Font Path
|
|
56
|
+
|
|
57
|
+
If you need to customize the font file path:
|
|
58
|
+
|
|
59
|
+
```scss
|
|
60
|
+
$font-prefix: './custom/path/to/fonts';
|
|
61
|
+
@import '@octaviaflow/fonts/scss/octaviaflow-fonts';
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Font Family Usage
|
|
65
|
+
|
|
66
|
+
Once imported, use the fonts in your CSS:
|
|
67
|
+
|
|
68
|
+
```css
|
|
69
|
+
/* Lufga - Primary typeface */
|
|
70
|
+
body {
|
|
71
|
+
font-family: 'Lufga', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/* RTL United Text - For RTL languages */
|
|
75
|
+
[dir='rtl'] {
|
|
76
|
+
font-family: 'RTL United Text', 'Lufga', sans-serif;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/* JetBrains Mono - For code */
|
|
80
|
+
code, pre, .code {
|
|
81
|
+
font-family: 'JetBrains Mono', 'Menlo', 'Monaco', 'Courier New', monospace;
|
|
82
|
+
}
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Font Weights
|
|
86
|
+
|
|
87
|
+
### Lufga
|
|
88
|
+
- **100** - Thin
|
|
89
|
+
- **200** - Extra Light
|
|
90
|
+
- **300** - Light
|
|
91
|
+
- **400** - Regular (default)
|
|
92
|
+
- **500** - Medium
|
|
93
|
+
- **600** - Semi Bold
|
|
94
|
+
- **700** - Bold
|
|
95
|
+
- **800** - Extra Bold
|
|
96
|
+
- **900** - Black
|
|
97
|
+
|
|
98
|
+
All weights include italic variants.
|
|
99
|
+
|
|
100
|
+
### RTL United Text
|
|
101
|
+
- **300** - Light
|
|
102
|
+
- **400** - Regular (default)
|
|
103
|
+
- **700** - Bold
|
|
104
|
+
|
|
105
|
+
All weights include italic variants.
|
|
106
|
+
|
|
107
|
+
### JetBrains Mono
|
|
108
|
+
- **100** - Thin
|
|
109
|
+
- **200** - Extra Light
|
|
110
|
+
- **300** - Light
|
|
111
|
+
- **400** - Regular (default)
|
|
112
|
+
- **500** - Medium
|
|
113
|
+
- **600** - Semi Bold
|
|
114
|
+
- **700** - Bold
|
|
115
|
+
- **800** - Extra Bold
|
|
116
|
+
|
|
117
|
+
All weights include italic variants.
|
|
118
|
+
|
|
119
|
+
## Storybook Integration
|
|
120
|
+
|
|
121
|
+
To use Octaviaflow fonts globally in Storybook, add to `.storybook/preview-head.html`:
|
|
122
|
+
|
|
123
|
+
```html
|
|
124
|
+
<link rel="stylesheet" href="../node_modules/@octaviaflow/fonts/css/octaviaflow-fonts.css">
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
Or import in `.storybook/preview.js`:
|
|
128
|
+
|
|
129
|
+
```javascript
|
|
130
|
+
import '@octaviaflow/fonts/css/octaviaflow-fonts.css';
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
## Next.js Integration
|
|
134
|
+
|
|
135
|
+
In your `_app.tsx` or `layout.tsx`:
|
|
136
|
+
|
|
137
|
+
```tsx
|
|
138
|
+
import '@octaviaflow/fonts/css/octaviaflow-fonts.css';
|
|
139
|
+
|
|
140
|
+
export default function App({ Component, pageProps }) {
|
|
141
|
+
return <Component {...pageProps} />;
|
|
142
|
+
}
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
## React Integration
|
|
146
|
+
|
|
147
|
+
In your main entry file (e.g., `index.tsx`):
|
|
148
|
+
|
|
149
|
+
```tsx
|
|
150
|
+
import '@octaviaflow/fonts/css/octaviaflow-fonts.css';
|
|
151
|
+
import ReactDOM from 'react-dom/client';
|
|
152
|
+
import App from './App';
|
|
153
|
+
|
|
154
|
+
ReactDOM.createRoot(document.getElementById('root')!).render(<App />);
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
## File Structure
|
|
158
|
+
|
|
159
|
+
```
|
|
160
|
+
@octaviaflow/fonts/
|
|
161
|
+
├── css/
|
|
162
|
+
│ ├── octaviaflow-fonts.css
|
|
163
|
+
│ └── octaviaflow-fonts.min.css
|
|
164
|
+
├── scss/
|
|
165
|
+
│ ├── _lufga.scss
|
|
166
|
+
│ ├── _rtl-united-text.scss
|
|
167
|
+
│ └── octaviaflow-fonts.scss
|
|
168
|
+
├── fonts/
|
|
169
|
+
│ ├── lufga/
|
|
170
|
+
│ │ └── *.woff
|
|
171
|
+
│ └── rtl-united-text/
|
|
172
|
+
│ └── *.ttf
|
|
173
|
+
└── package.json
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
## Performance Tips
|
|
177
|
+
|
|
178
|
+
1. **Use CSS import** - Precompiled CSS is faster than SCSS compilation
|
|
179
|
+
2. **Minified version** - Use `.min.css` in production
|
|
180
|
+
3. **Subset fonts** - Only import the fonts you need (Lufga, RTL United Text, or JetBrains Mono)
|
|
181
|
+
4. **font-display: swap** - All fonts use `font-display: swap` for better performance
|
|
182
|
+
|
|
183
|
+
## License
|
|
184
|
+
|
|
185
|
+
Apache-2.0
|
|
186
|
+
|
|
187
|
+
## Support
|
|
188
|
+
|
|
189
|
+
For issues and questions, visit: https://github.com/octaviaflow-design-system/issues
|
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Octaviaflow 2026
|
|
3
|
+
* Main entry point for Octaviaflow fonts
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Copyright Octaviaflow 2026
|
|
7
|
+
* Lufga typeface
|
|
8
|
+
*/
|
|
9
|
+
@font-face {
|
|
10
|
+
font-family: "Lufga";
|
|
11
|
+
font-style: normal;
|
|
12
|
+
font-weight: 100;
|
|
13
|
+
font-display: swap;
|
|
14
|
+
src: url("../fonts/lufga/LufgaThin.woff") format("woff");
|
|
15
|
+
}
|
|
16
|
+
@font-face {
|
|
17
|
+
font-family: "Lufga";
|
|
18
|
+
font-style: italic;
|
|
19
|
+
font-weight: 100;
|
|
20
|
+
font-display: swap;
|
|
21
|
+
src: url("../fonts/lufga/LufgaThinItalic.woff") format("woff");
|
|
22
|
+
}
|
|
23
|
+
@font-face {
|
|
24
|
+
font-family: "Lufga";
|
|
25
|
+
font-style: normal;
|
|
26
|
+
font-weight: 200;
|
|
27
|
+
font-display: swap;
|
|
28
|
+
src: url("../fonts/lufga/LufgaExtraLight.woff") format("woff");
|
|
29
|
+
}
|
|
30
|
+
@font-face {
|
|
31
|
+
font-family: "Lufga";
|
|
32
|
+
font-style: italic;
|
|
33
|
+
font-weight: 200;
|
|
34
|
+
font-display: swap;
|
|
35
|
+
src: url("../fonts/lufga/LufgaExtraLightItalic.woff") format("woff");
|
|
36
|
+
}
|
|
37
|
+
@font-face {
|
|
38
|
+
font-family: "Lufga";
|
|
39
|
+
font-style: normal;
|
|
40
|
+
font-weight: 300;
|
|
41
|
+
font-display: swap;
|
|
42
|
+
src: url("../fonts/lufga/LufgaLight.woff") format("woff");
|
|
43
|
+
}
|
|
44
|
+
@font-face {
|
|
45
|
+
font-family: "Lufga";
|
|
46
|
+
font-style: italic;
|
|
47
|
+
font-weight: 300;
|
|
48
|
+
font-display: swap;
|
|
49
|
+
src: url("../fonts/lufga/LufgaLightItalic.woff") format("woff");
|
|
50
|
+
}
|
|
51
|
+
@font-face {
|
|
52
|
+
font-family: "Lufga";
|
|
53
|
+
font-style: normal;
|
|
54
|
+
font-weight: 400;
|
|
55
|
+
font-display: swap;
|
|
56
|
+
src: url("../fonts/lufga/LufgaRegular.woff") format("woff");
|
|
57
|
+
}
|
|
58
|
+
@font-face {
|
|
59
|
+
font-family: "Lufga";
|
|
60
|
+
font-style: italic;
|
|
61
|
+
font-weight: 400;
|
|
62
|
+
font-display: swap;
|
|
63
|
+
src: url("../fonts/lufga/LufgaItalic.woff") format("woff");
|
|
64
|
+
}
|
|
65
|
+
@font-face {
|
|
66
|
+
font-family: "Lufga";
|
|
67
|
+
font-style: normal;
|
|
68
|
+
font-weight: 500;
|
|
69
|
+
font-display: swap;
|
|
70
|
+
src: url("../fonts/lufga/LufgaMedium.woff") format("woff");
|
|
71
|
+
}
|
|
72
|
+
@font-face {
|
|
73
|
+
font-family: "Lufga";
|
|
74
|
+
font-style: italic;
|
|
75
|
+
font-weight: 500;
|
|
76
|
+
font-display: swap;
|
|
77
|
+
src: url("../fonts/lufga/LufgaMediumItalic.woff") format("woff");
|
|
78
|
+
}
|
|
79
|
+
@font-face {
|
|
80
|
+
font-family: "Lufga";
|
|
81
|
+
font-style: normal;
|
|
82
|
+
font-weight: 600;
|
|
83
|
+
font-display: swap;
|
|
84
|
+
src: url("../fonts/lufga/LufgaSemiBold.woff") format("woff");
|
|
85
|
+
}
|
|
86
|
+
@font-face {
|
|
87
|
+
font-family: "Lufga";
|
|
88
|
+
font-style: italic;
|
|
89
|
+
font-weight: 600;
|
|
90
|
+
font-display: swap;
|
|
91
|
+
src: url("../fonts/lufga/LufgaSemiBoldItalic.woff") format("woff");
|
|
92
|
+
}
|
|
93
|
+
@font-face {
|
|
94
|
+
font-family: "Lufga";
|
|
95
|
+
font-style: normal;
|
|
96
|
+
font-weight: 700;
|
|
97
|
+
font-display: swap;
|
|
98
|
+
src: url("../fonts/lufga/LufgaBold.woff") format("woff");
|
|
99
|
+
}
|
|
100
|
+
@font-face {
|
|
101
|
+
font-family: "Lufga";
|
|
102
|
+
font-style: italic;
|
|
103
|
+
font-weight: 700;
|
|
104
|
+
font-display: swap;
|
|
105
|
+
src: url("../fonts/lufga/LufgaBoldItalic.woff") format("woff");
|
|
106
|
+
}
|
|
107
|
+
@font-face {
|
|
108
|
+
font-family: "Lufga";
|
|
109
|
+
font-style: normal;
|
|
110
|
+
font-weight: 800;
|
|
111
|
+
font-display: swap;
|
|
112
|
+
src: url("../fonts/lufga/LufgaExtraBold.woff") format("woff");
|
|
113
|
+
}
|
|
114
|
+
@font-face {
|
|
115
|
+
font-family: "Lufga";
|
|
116
|
+
font-style: italic;
|
|
117
|
+
font-weight: 800;
|
|
118
|
+
font-display: swap;
|
|
119
|
+
src: url("../fonts/lufga/LufgaExtraBoldItalic.woff") format("woff");
|
|
120
|
+
}
|
|
121
|
+
@font-face {
|
|
122
|
+
font-family: "Lufga";
|
|
123
|
+
font-style: normal;
|
|
124
|
+
font-weight: 900;
|
|
125
|
+
font-display: swap;
|
|
126
|
+
src: url("../fonts/lufga/LufgaBlack.woff") format("woff");
|
|
127
|
+
}
|
|
128
|
+
@font-face {
|
|
129
|
+
font-family: "Lufga";
|
|
130
|
+
font-style: italic;
|
|
131
|
+
font-weight: 900;
|
|
132
|
+
font-display: swap;
|
|
133
|
+
src: url("../fonts/lufga/LufgaBlackItalic.woff") format("woff");
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Copyright Octaviaflow 2026
|
|
137
|
+
* RTL United Text typeface
|
|
138
|
+
*/
|
|
139
|
+
@font-face {
|
|
140
|
+
font-family: "RTL United Text";
|
|
141
|
+
font-style: normal;
|
|
142
|
+
font-weight: 300;
|
|
143
|
+
font-display: swap;
|
|
144
|
+
src: url("../fonts/rtl-united-text/RTLUnitedTextLight.ttf") format("truetype");
|
|
145
|
+
}
|
|
146
|
+
@font-face {
|
|
147
|
+
font-family: "RTL United Text";
|
|
148
|
+
font-style: italic;
|
|
149
|
+
font-weight: 300;
|
|
150
|
+
font-display: swap;
|
|
151
|
+
src: url("../fonts/rtl-united-text/RTLUnitedTextLightItalic.ttf") format("truetype");
|
|
152
|
+
}
|
|
153
|
+
@font-face {
|
|
154
|
+
font-family: "RTL United Text";
|
|
155
|
+
font-style: normal;
|
|
156
|
+
font-weight: 400;
|
|
157
|
+
font-display: swap;
|
|
158
|
+
src: url("../fonts/rtl-united-text/RTLUnitedTextRegular.ttf") format("truetype");
|
|
159
|
+
}
|
|
160
|
+
@font-face {
|
|
161
|
+
font-family: "RTL United Text";
|
|
162
|
+
font-style: italic;
|
|
163
|
+
font-weight: 400;
|
|
164
|
+
font-display: swap;
|
|
165
|
+
src: url("../fonts/rtl-united-text/RTLUnitedTextRegularItalic.ttf") format("truetype");
|
|
166
|
+
}
|
|
167
|
+
@font-face {
|
|
168
|
+
font-family: "RTL United Text";
|
|
169
|
+
font-style: normal;
|
|
170
|
+
font-weight: 700;
|
|
171
|
+
font-display: swap;
|
|
172
|
+
src: url("../fonts/rtl-united-text/RTLUnitedTextBold.ttf") format("truetype");
|
|
173
|
+
}
|
|
174
|
+
@font-face {
|
|
175
|
+
font-family: "RTL United Text";
|
|
176
|
+
font-style: italic;
|
|
177
|
+
font-weight: 700;
|
|
178
|
+
font-display: swap;
|
|
179
|
+
src: url("../fonts/rtl-united-text/RTLUnitedTextBoldItalic.ttf") format("truetype");
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Copyright Octaviaflow 2026
|
|
183
|
+
* JetBrains Mono - Monospace typeface for code
|
|
184
|
+
*/
|
|
185
|
+
@font-face {
|
|
186
|
+
font-family: "JetBrains Mono";
|
|
187
|
+
font-style: normal;
|
|
188
|
+
font-weight: 100;
|
|
189
|
+
font-display: swap;
|
|
190
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-Thin.woff2") format("woff2");
|
|
191
|
+
}
|
|
192
|
+
@font-face {
|
|
193
|
+
font-family: "JetBrains Mono";
|
|
194
|
+
font-style: italic;
|
|
195
|
+
font-weight: 100;
|
|
196
|
+
font-display: swap;
|
|
197
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-ThinItalic.woff2") format("woff2");
|
|
198
|
+
}
|
|
199
|
+
@font-face {
|
|
200
|
+
font-family: "JetBrains Mono";
|
|
201
|
+
font-style: normal;
|
|
202
|
+
font-weight: 200;
|
|
203
|
+
font-display: swap;
|
|
204
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-ExtraLight.woff2") format("woff2");
|
|
205
|
+
}
|
|
206
|
+
@font-face {
|
|
207
|
+
font-family: "JetBrains Mono";
|
|
208
|
+
font-style: italic;
|
|
209
|
+
font-weight: 200;
|
|
210
|
+
font-display: swap;
|
|
211
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-ExtraLightItalic.woff2") format("woff2");
|
|
212
|
+
}
|
|
213
|
+
@font-face {
|
|
214
|
+
font-family: "JetBrains Mono";
|
|
215
|
+
font-style: normal;
|
|
216
|
+
font-weight: 300;
|
|
217
|
+
font-display: swap;
|
|
218
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-Light.woff2") format("woff2");
|
|
219
|
+
}
|
|
220
|
+
@font-face {
|
|
221
|
+
font-family: "JetBrains Mono";
|
|
222
|
+
font-style: italic;
|
|
223
|
+
font-weight: 300;
|
|
224
|
+
font-display: swap;
|
|
225
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-LightItalic.woff2") format("woff2");
|
|
226
|
+
}
|
|
227
|
+
@font-face {
|
|
228
|
+
font-family: "JetBrains Mono";
|
|
229
|
+
font-style: normal;
|
|
230
|
+
font-weight: 400;
|
|
231
|
+
font-display: swap;
|
|
232
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-Regular.woff2") format("woff2");
|
|
233
|
+
}
|
|
234
|
+
@font-face {
|
|
235
|
+
font-family: "JetBrains Mono";
|
|
236
|
+
font-style: italic;
|
|
237
|
+
font-weight: 400;
|
|
238
|
+
font-display: swap;
|
|
239
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-Italic.woff2") format("woff2");
|
|
240
|
+
}
|
|
241
|
+
@font-face {
|
|
242
|
+
font-family: "JetBrains Mono";
|
|
243
|
+
font-style: normal;
|
|
244
|
+
font-weight: 500;
|
|
245
|
+
font-display: swap;
|
|
246
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-Medium.woff2") format("woff2");
|
|
247
|
+
}
|
|
248
|
+
@font-face {
|
|
249
|
+
font-family: "JetBrains Mono";
|
|
250
|
+
font-style: italic;
|
|
251
|
+
font-weight: 500;
|
|
252
|
+
font-display: swap;
|
|
253
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-MediumItalic.woff2") format("woff2");
|
|
254
|
+
}
|
|
255
|
+
@font-face {
|
|
256
|
+
font-family: "JetBrains Mono";
|
|
257
|
+
font-style: normal;
|
|
258
|
+
font-weight: 600;
|
|
259
|
+
font-display: swap;
|
|
260
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-SemiBold.woff2") format("woff2");
|
|
261
|
+
}
|
|
262
|
+
@font-face {
|
|
263
|
+
font-family: "JetBrains Mono";
|
|
264
|
+
font-style: italic;
|
|
265
|
+
font-weight: 600;
|
|
266
|
+
font-display: swap;
|
|
267
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-SemiBoldItalic.woff2") format("woff2");
|
|
268
|
+
}
|
|
269
|
+
@font-face {
|
|
270
|
+
font-family: "JetBrains Mono";
|
|
271
|
+
font-style: normal;
|
|
272
|
+
font-weight: 700;
|
|
273
|
+
font-display: swap;
|
|
274
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-Bold.woff2") format("woff2");
|
|
275
|
+
}
|
|
276
|
+
@font-face {
|
|
277
|
+
font-family: "JetBrains Mono";
|
|
278
|
+
font-style: italic;
|
|
279
|
+
font-weight: 700;
|
|
280
|
+
font-display: swap;
|
|
281
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-BoldItalic.woff2") format("woff2");
|
|
282
|
+
}
|
|
283
|
+
@font-face {
|
|
284
|
+
font-family: "JetBrains Mono";
|
|
285
|
+
font-style: normal;
|
|
286
|
+
font-weight: 800;
|
|
287
|
+
font-display: swap;
|
|
288
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-ExtraBold.woff2") format("woff2");
|
|
289
|
+
}
|
|
290
|
+
@font-face {
|
|
291
|
+
font-family: "JetBrains Mono";
|
|
292
|
+
font-style: italic;
|
|
293
|
+
font-weight: 800;
|
|
294
|
+
font-display: swap;
|
|
295
|
+
src: url("../fonts/jetbrains-mono/JetBrainsMono-ExtraBoldItalic.woff2") format("woff2");
|
|
296
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@font-face{font-family:"Lufga";font-style:normal;font-weight:100;font-display:swap;src:url("../fonts/lufga/LufgaThin.woff") format("woff")}@font-face{font-family:"Lufga";font-style:italic;font-weight:100;font-display:swap;src:url("../fonts/lufga/LufgaThinItalic.woff") format("woff")}@font-face{font-family:"Lufga";font-style:normal;font-weight:200;font-display:swap;src:url("../fonts/lufga/LufgaExtraLight.woff") format("woff")}@font-face{font-family:"Lufga";font-style:italic;font-weight:200;font-display:swap;src:url("../fonts/lufga/LufgaExtraLightItalic.woff") format("woff")}@font-face{font-family:"Lufga";font-style:normal;font-weight:300;font-display:swap;src:url("../fonts/lufga/LufgaLight.woff") format("woff")}@font-face{font-family:"Lufga";font-style:italic;font-weight:300;font-display:swap;src:url("../fonts/lufga/LufgaLightItalic.woff") format("woff")}@font-face{font-family:"Lufga";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/lufga/LufgaRegular.woff") format("woff")}@font-face{font-family:"Lufga";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/lufga/LufgaItalic.woff") format("woff")}@font-face{font-family:"Lufga";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/lufga/LufgaMedium.woff") format("woff")}@font-face{font-family:"Lufga";font-style:italic;font-weight:500;font-display:swap;src:url("../fonts/lufga/LufgaMediumItalic.woff") format("woff")}@font-face{font-family:"Lufga";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/lufga/LufgaSemiBold.woff") format("woff")}@font-face{font-family:"Lufga";font-style:italic;font-weight:600;font-display:swap;src:url("../fonts/lufga/LufgaSemiBoldItalic.woff") format("woff")}@font-face{font-family:"Lufga";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/lufga/LufgaBold.woff") format("woff")}@font-face{font-family:"Lufga";font-style:italic;font-weight:700;font-display:swap;src:url("../fonts/lufga/LufgaBoldItalic.woff") format("woff")}@font-face{font-family:"Lufga";font-style:normal;font-weight:800;font-display:swap;src:url("../fonts/lufga/LufgaExtraBold.woff") format("woff")}@font-face{font-family:"Lufga";font-style:italic;font-weight:800;font-display:swap;src:url("../fonts/lufga/LufgaExtraBoldItalic.woff") format("woff")}@font-face{font-family:"Lufga";font-style:normal;font-weight:900;font-display:swap;src:url("../fonts/lufga/LufgaBlack.woff") format("woff")}@font-face{font-family:"Lufga";font-style:italic;font-weight:900;font-display:swap;src:url("../fonts/lufga/LufgaBlackItalic.woff") format("woff")}@font-face{font-family:"RTL United Text";font-style:normal;font-weight:300;font-display:swap;src:url("../fonts/rtl-united-text/RTLUnitedTextLight.ttf") format("truetype")}@font-face{font-family:"RTL United Text";font-style:italic;font-weight:300;font-display:swap;src:url("../fonts/rtl-united-text/RTLUnitedTextLightItalic.ttf") format("truetype")}@font-face{font-family:"RTL United Text";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/rtl-united-text/RTLUnitedTextRegular.ttf") format("truetype")}@font-face{font-family:"RTL United Text";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/rtl-united-text/RTLUnitedTextRegularItalic.ttf") format("truetype")}@font-face{font-family:"RTL United Text";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/rtl-united-text/RTLUnitedTextBold.ttf") format("truetype")}@font-face{font-family:"RTL United Text";font-style:italic;font-weight:700;font-display:swap;src:url("../fonts/rtl-united-text/RTLUnitedTextBoldItalic.ttf") format("truetype")}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:100;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-Thin.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:italic;font-weight:100;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-ThinItalic.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:200;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-ExtraLight.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:italic;font-weight:200;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-ExtraLightItalic.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:300;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-Light.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:italic;font-weight:300;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-LightItalic.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-Regular.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-Italic.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-Medium.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:italic;font-weight:500;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-MediumItalic.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-SemiBold.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:italic;font-weight:600;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-SemiBoldItalic.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-Bold.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:italic;font-weight:700;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-BoldItalic.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:800;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-ExtraBold.woff2") format("woff2")}@font-face{font-family:"JetBrains Mono";font-style:italic;font-weight:800;font-display:swap;src:url("../fonts/jetbrains-mono/JetBrainsMono-ExtraBoldItalic.woff2") format("woff2")}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@octaviaflow/fonts",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"description": "Octaviaflow Design System typeface family - Lufga, RTL United Text, and JetBrains Mono",
|
|
6
|
+
"license": "Apache-2.0",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "https://github.com/octaviaflow-design-system.git",
|
|
10
|
+
"directory": "packages/fonts"
|
|
11
|
+
},
|
|
12
|
+
"bugs": "https://github.com/octaviaflow-design-system/issues",
|
|
13
|
+
"keywords": [
|
|
14
|
+
"octaviaflow",
|
|
15
|
+
"fonts",
|
|
16
|
+
"typeface",
|
|
17
|
+
"lufga",
|
|
18
|
+
"rtl-united-text",
|
|
19
|
+
"jetbrains-mono",
|
|
20
|
+
"monospace",
|
|
21
|
+
"design-system"
|
|
22
|
+
],
|
|
23
|
+
"files": [
|
|
24
|
+
"css",
|
|
25
|
+
"scss",
|
|
26
|
+
"fonts/lufga/**/*.woff",
|
|
27
|
+
"fonts/lufga/**/*.woff2",
|
|
28
|
+
"fonts/rtl-united-text/**/*.ttf",
|
|
29
|
+
"fonts/rtl-united-text/**/*.woff",
|
|
30
|
+
"fonts/rtl-united-text/**/*.woff2",
|
|
31
|
+
"fonts/jetbrains-mono/**/*.woff2"
|
|
32
|
+
],
|
|
33
|
+
"publishConfig": {
|
|
34
|
+
"access": "public"
|
|
35
|
+
},
|
|
36
|
+
"scripts": {
|
|
37
|
+
"clean": "rimraf css",
|
|
38
|
+
"build": "bun run clean && node tasks/build-css.js"
|
|
39
|
+
},
|
|
40
|
+
"devDependencies": {
|
|
41
|
+
"rimraf": "^6.0.1",
|
|
42
|
+
"sass": "^1.97.3"
|
|
43
|
+
},
|
|
44
|
+
"dependencies": {
|
|
45
|
+
"sass": "1.97.3"
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Octaviaflow 2026
|
|
3
|
+
* JetBrains Mono - Monospace typeface for code
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
$font-prefix: '../fonts' !default;
|
|
7
|
+
|
|
8
|
+
// JetBrains Mono Thin
|
|
9
|
+
@font-face {
|
|
10
|
+
font-family: 'JetBrains Mono';
|
|
11
|
+
font-style: normal;
|
|
12
|
+
font-weight: 100;
|
|
13
|
+
font-display: swap;
|
|
14
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-Thin.woff2') format('woff2');
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
@font-face {
|
|
18
|
+
font-family: 'JetBrains Mono';
|
|
19
|
+
font-style: italic;
|
|
20
|
+
font-weight: 100;
|
|
21
|
+
font-display: swap;
|
|
22
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-ThinItalic.woff2') format('woff2');
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// JetBrains Mono Extra Light
|
|
26
|
+
@font-face {
|
|
27
|
+
font-family: 'JetBrains Mono';
|
|
28
|
+
font-style: normal;
|
|
29
|
+
font-weight: 200;
|
|
30
|
+
font-display: swap;
|
|
31
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-ExtraLight.woff2') format('woff2');
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
@font-face {
|
|
35
|
+
font-family: 'JetBrains Mono';
|
|
36
|
+
font-style: italic;
|
|
37
|
+
font-weight: 200;
|
|
38
|
+
font-display: swap;
|
|
39
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-ExtraLightItalic.woff2') format('woff2');
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// JetBrains Mono Light
|
|
43
|
+
@font-face {
|
|
44
|
+
font-family: 'JetBrains Mono';
|
|
45
|
+
font-style: normal;
|
|
46
|
+
font-weight: 300;
|
|
47
|
+
font-display: swap;
|
|
48
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-Light.woff2') format('woff2');
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
@font-face {
|
|
52
|
+
font-family: 'JetBrains Mono';
|
|
53
|
+
font-style: italic;
|
|
54
|
+
font-weight: 300;
|
|
55
|
+
font-display: swap;
|
|
56
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-LightItalic.woff2') format('woff2');
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// JetBrains Mono Regular
|
|
60
|
+
@font-face {
|
|
61
|
+
font-family: 'JetBrains Mono';
|
|
62
|
+
font-style: normal;
|
|
63
|
+
font-weight: 400;
|
|
64
|
+
font-display: swap;
|
|
65
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-Regular.woff2') format('woff2');
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
@font-face {
|
|
69
|
+
font-family: 'JetBrains Mono';
|
|
70
|
+
font-style: italic;
|
|
71
|
+
font-weight: 400;
|
|
72
|
+
font-display: swap;
|
|
73
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-Italic.woff2') format('woff2');
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// JetBrains Mono Medium
|
|
77
|
+
@font-face {
|
|
78
|
+
font-family: 'JetBrains Mono';
|
|
79
|
+
font-style: normal;
|
|
80
|
+
font-weight: 500;
|
|
81
|
+
font-display: swap;
|
|
82
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-Medium.woff2') format('woff2');
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
@font-face {
|
|
86
|
+
font-family: 'JetBrains Mono';
|
|
87
|
+
font-style: italic;
|
|
88
|
+
font-weight: 500;
|
|
89
|
+
font-display: swap;
|
|
90
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-MediumItalic.woff2') format('woff2');
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
// JetBrains Mono Semi Bold
|
|
94
|
+
@font-face {
|
|
95
|
+
font-family: 'JetBrains Mono';
|
|
96
|
+
font-style: normal;
|
|
97
|
+
font-weight: 600;
|
|
98
|
+
font-display: swap;
|
|
99
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-SemiBold.woff2') format('woff2');
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
@font-face {
|
|
103
|
+
font-family: 'JetBrains Mono';
|
|
104
|
+
font-style: italic;
|
|
105
|
+
font-weight: 600;
|
|
106
|
+
font-display: swap;
|
|
107
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-SemiBoldItalic.woff2') format('woff2');
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
// JetBrains Mono Bold
|
|
111
|
+
@font-face {
|
|
112
|
+
font-family: 'JetBrains Mono';
|
|
113
|
+
font-style: normal;
|
|
114
|
+
font-weight: 700;
|
|
115
|
+
font-display: swap;
|
|
116
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-Bold.woff2') format('woff2');
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
@font-face {
|
|
120
|
+
font-family: 'JetBrains Mono';
|
|
121
|
+
font-style: italic;
|
|
122
|
+
font-weight: 700;
|
|
123
|
+
font-display: swap;
|
|
124
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-BoldItalic.woff2') format('woff2');
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// JetBrains Mono Extra Bold
|
|
128
|
+
@font-face {
|
|
129
|
+
font-family: 'JetBrains Mono';
|
|
130
|
+
font-style: normal;
|
|
131
|
+
font-weight: 800;
|
|
132
|
+
font-display: swap;
|
|
133
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-ExtraBold.woff2') format('woff2');
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
@font-face {
|
|
137
|
+
font-family: 'JetBrains Mono';
|
|
138
|
+
font-style: italic;
|
|
139
|
+
font-weight: 800;
|
|
140
|
+
font-display: swap;
|
|
141
|
+
src: url('#{$font-prefix}/jetbrains-mono/JetBrainsMono-ExtraBoldItalic.woff2') format('woff2');
|
|
142
|
+
}
|
package/scss/_lufga.scss
ADDED
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Octaviaflow 2026
|
|
3
|
+
* Lufga typeface
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
$font-prefix: '../fonts' !default;
|
|
7
|
+
|
|
8
|
+
// Lufga Thin
|
|
9
|
+
@font-face {
|
|
10
|
+
font-family: 'Lufga';
|
|
11
|
+
font-style: normal;
|
|
12
|
+
font-weight: 100;
|
|
13
|
+
font-display: swap;
|
|
14
|
+
src: url('#{$font-prefix}/lufga/LufgaThin.woff') format('woff');
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
@font-face {
|
|
18
|
+
font-family: 'Lufga';
|
|
19
|
+
font-style: italic;
|
|
20
|
+
font-weight: 100;
|
|
21
|
+
font-display: swap;
|
|
22
|
+
src: url('#{$font-prefix}/lufga/LufgaThinItalic.woff') format('woff');
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// Lufga Extra Light
|
|
26
|
+
@font-face {
|
|
27
|
+
font-family: 'Lufga';
|
|
28
|
+
font-style: normal;
|
|
29
|
+
font-weight: 200;
|
|
30
|
+
font-display: swap;
|
|
31
|
+
src: url('#{$font-prefix}/lufga/LufgaExtraLight.woff') format('woff');
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
@font-face {
|
|
35
|
+
font-family: 'Lufga';
|
|
36
|
+
font-style: italic;
|
|
37
|
+
font-weight: 200;
|
|
38
|
+
font-display: swap;
|
|
39
|
+
src: url('#{$font-prefix}/lufga/LufgaExtraLightItalic.woff') format('woff');
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// Lufga Light
|
|
43
|
+
@font-face {
|
|
44
|
+
font-family: 'Lufga';
|
|
45
|
+
font-style: normal;
|
|
46
|
+
font-weight: 300;
|
|
47
|
+
font-display: swap;
|
|
48
|
+
src: url('#{$font-prefix}/lufga/LufgaLight.woff') format('woff');
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
@font-face {
|
|
52
|
+
font-family: 'Lufga';
|
|
53
|
+
font-style: italic;
|
|
54
|
+
font-weight: 300;
|
|
55
|
+
font-display: swap;
|
|
56
|
+
src: url('#{$font-prefix}/lufga/LufgaLightItalic.woff') format('woff');
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// Lufga Regular
|
|
60
|
+
@font-face {
|
|
61
|
+
font-family: 'Lufga';
|
|
62
|
+
font-style: normal;
|
|
63
|
+
font-weight: 400;
|
|
64
|
+
font-display: swap;
|
|
65
|
+
src: url('#{$font-prefix}/lufga/LufgaRegular.woff') format('woff');
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
@font-face {
|
|
69
|
+
font-family: 'Lufga';
|
|
70
|
+
font-style: italic;
|
|
71
|
+
font-weight: 400;
|
|
72
|
+
font-display: swap;
|
|
73
|
+
src: url('#{$font-prefix}/lufga/LufgaItalic.woff') format('woff');
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// Lufga Medium
|
|
77
|
+
@font-face {
|
|
78
|
+
font-family: 'Lufga';
|
|
79
|
+
font-style: normal;
|
|
80
|
+
font-weight: 500;
|
|
81
|
+
font-display: swap;
|
|
82
|
+
src: url('#{$font-prefix}/lufga/LufgaMedium.woff') format('woff');
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
@font-face {
|
|
86
|
+
font-family: 'Lufga';
|
|
87
|
+
font-style: italic;
|
|
88
|
+
font-weight: 500;
|
|
89
|
+
font-display: swap;
|
|
90
|
+
src: url('#{$font-prefix}/lufga/LufgaMediumItalic.woff') format('woff');
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
// Lufga Semi Bold
|
|
94
|
+
@font-face {
|
|
95
|
+
font-family: 'Lufga';
|
|
96
|
+
font-style: normal;
|
|
97
|
+
font-weight: 600;
|
|
98
|
+
font-display: swap;
|
|
99
|
+
src: url('#{$font-prefix}/lufga/LufgaSemiBold.woff') format('woff');
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
@font-face {
|
|
103
|
+
font-family: 'Lufga';
|
|
104
|
+
font-style: italic;
|
|
105
|
+
font-weight: 600;
|
|
106
|
+
font-display: swap;
|
|
107
|
+
src: url('#{$font-prefix}/lufga/LufgaSemiBoldItalic.woff') format('woff');
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
// Lufga Bold
|
|
111
|
+
@font-face {
|
|
112
|
+
font-family: 'Lufga';
|
|
113
|
+
font-style: normal;
|
|
114
|
+
font-weight: 700;
|
|
115
|
+
font-display: swap;
|
|
116
|
+
src: url('#{$font-prefix}/lufga/LufgaBold.woff') format('woff');
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
@font-face {
|
|
120
|
+
font-family: 'Lufga';
|
|
121
|
+
font-style: italic;
|
|
122
|
+
font-weight: 700;
|
|
123
|
+
font-display: swap;
|
|
124
|
+
src: url('#{$font-prefix}/lufga/LufgaBoldItalic.woff') format('woff');
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// Lufga Extra Bold
|
|
128
|
+
@font-face {
|
|
129
|
+
font-family: 'Lufga';
|
|
130
|
+
font-style: normal;
|
|
131
|
+
font-weight: 800;
|
|
132
|
+
font-display: swap;
|
|
133
|
+
src: url('#{$font-prefix}/lufga/LufgaExtraBold.woff') format('woff');
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
@font-face {
|
|
137
|
+
font-family: 'Lufga';
|
|
138
|
+
font-style: italic;
|
|
139
|
+
font-weight: 800;
|
|
140
|
+
font-display: swap;
|
|
141
|
+
src: url('#{$font-prefix}/lufga/LufgaExtraBoldItalic.woff') format('woff');
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
// Lufga Black
|
|
145
|
+
@font-face {
|
|
146
|
+
font-family: 'Lufga';
|
|
147
|
+
font-style: normal;
|
|
148
|
+
font-weight: 900;
|
|
149
|
+
font-display: swap;
|
|
150
|
+
src: url('#{$font-prefix}/lufga/LufgaBlack.woff') format('woff');
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
@font-face {
|
|
154
|
+
font-family: 'Lufga';
|
|
155
|
+
font-style: italic;
|
|
156
|
+
font-weight: 900;
|
|
157
|
+
font-display: swap;
|
|
158
|
+
src: url('#{$font-prefix}/lufga/LufgaBlackItalic.woff') format('woff');
|
|
159
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Octaviaflow 2026
|
|
3
|
+
* RTL United Text typeface
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
$font-prefix: '../fonts' !default;
|
|
7
|
+
|
|
8
|
+
// RTL United Text Light
|
|
9
|
+
@font-face {
|
|
10
|
+
font-family: 'RTL United Text';
|
|
11
|
+
font-style: normal;
|
|
12
|
+
font-weight: 300;
|
|
13
|
+
font-display: swap;
|
|
14
|
+
src: url('#{$font-prefix}/rtl-united-text/RTLUnitedTextLight.ttf') format('truetype');
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
@font-face {
|
|
18
|
+
font-family: 'RTL United Text';
|
|
19
|
+
font-style: italic;
|
|
20
|
+
font-weight: 300;
|
|
21
|
+
font-display: swap;
|
|
22
|
+
src: url('#{$font-prefix}/rtl-united-text/RTLUnitedTextLightItalic.ttf') format('truetype');
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// RTL United Text Regular
|
|
26
|
+
@font-face {
|
|
27
|
+
font-family: 'RTL United Text';
|
|
28
|
+
font-style: normal;
|
|
29
|
+
font-weight: 400;
|
|
30
|
+
font-display: swap;
|
|
31
|
+
src: url('#{$font-prefix}/rtl-united-text/RTLUnitedTextRegular.ttf') format('truetype');
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
@font-face {
|
|
35
|
+
font-family: 'RTL United Text';
|
|
36
|
+
font-style: italic;
|
|
37
|
+
font-weight: 400;
|
|
38
|
+
font-display: swap;
|
|
39
|
+
src: url('#{$font-prefix}/rtl-united-text/RTLUnitedTextRegularItalic.ttf') format('truetype');
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// RTL United Text Bold
|
|
43
|
+
@font-face {
|
|
44
|
+
font-family: 'RTL United Text';
|
|
45
|
+
font-style: normal;
|
|
46
|
+
font-weight: 700;
|
|
47
|
+
font-display: swap;
|
|
48
|
+
src: url('#{$font-prefix}/rtl-united-text/RTLUnitedTextBold.ttf') format('truetype');
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
@font-face {
|
|
52
|
+
font-family: 'RTL United Text';
|
|
53
|
+
font-style: italic;
|
|
54
|
+
font-weight: 700;
|
|
55
|
+
font-display: swap;
|
|
56
|
+
src: url('#{$font-prefix}/rtl-united-text/RTLUnitedTextBoldItalic.ttf') format('truetype');
|
|
57
|
+
}
|