openwrite 0.13.2.1__tar.gz → 0.13.4__tar.gz

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.
Files changed (85) hide show
  1. {openwrite-0.13.2.1/openwrite.egg-info → openwrite-0.13.4}/PKG-INFO +2 -3
  2. {openwrite-0.13.2.1 → openwrite-0.13.4}/README.md +0 -1
  3. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/__init__.py +1 -1
  4. openwrite-0.13.4/openwrite/static/style/blog_design.css +290 -0
  5. openwrite-0.13.4/openwrite/static/style/default.css +145 -0
  6. openwrite-0.13.4/openwrite/static/style/nativeEmoji.min.css +1 -0
  7. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/style/themes/light.css +20 -0
  8. openwrite-0.13.4/openwrite/static/style/themes/paper.css +203 -0
  9. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/style/themes/warmnight.css +1 -0
  10. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/blog_header.html +4 -2
  11. openwrite-0.13.4/openwrite/templates/edit.html +500 -0
  12. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/footer.html +0 -1
  13. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/post.html +1 -1
  14. {openwrite-0.13.2.1 → openwrite-0.13.4/openwrite.egg-info}/PKG-INFO +2 -3
  15. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite.egg-info/SOURCES.txt +3 -0
  16. {openwrite-0.13.2.1 → openwrite-0.13.4}/pyproject.toml +2 -2
  17. openwrite-0.13.2.1/openwrite/static/style/nativeEmoji.min.css +0 -1
  18. openwrite-0.13.2.1/openwrite/templates/edit.html +0 -223
  19. {openwrite-0.13.2.1 → openwrite-0.13.4}/LICENSE +0 -0
  20. {openwrite-0.13.2.1 → openwrite-0.13.4}/MANIFEST.in +0 -0
  21. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/cli.py +0 -0
  22. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/db/__init__.py +0 -0
  23. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/db/base.py +0 -0
  24. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/gemini_multi.py +0 -0
  25. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/gemini_single.py +0 -0
  26. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/routes/admin.py +0 -0
  27. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/routes/auth.py +0 -0
  28. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/routes/blog.py +0 -0
  29. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/routes/dashboard.py +0 -0
  30. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/routes/federation.py +0 -0
  31. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/routes/main.py +0 -0
  32. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/routes/upload.py +0 -0
  33. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/IBMPlexSans-Regular.ttf +0 -0
  34. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/Merriweather.ttf +0 -0
  35. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/avatar.png +0 -0
  36. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/emoji.json +0 -0
  37. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/favicon.ico +0 -0
  38. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/logo.png +0 -0
  39. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/script/chart.js +0 -0
  40. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/script/highlight.min.js +0 -0
  41. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/script/nativeEmoji.js +0 -0
  42. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/script/openwrite.js +0 -0
  43. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/script/papaparse.min.js +0 -0
  44. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/script/showdown.min.js +0 -0
  45. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/script/showdown.min.js.map +0 -0
  46. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/script/site.compat.min.js +0 -0
  47. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/script/site.min.js +0 -0
  48. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/style/hl.css +0 -0
  49. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/style/style.css +0 -0
  50. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/style/themes/cyberpunk.css +0 -0
  51. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/style/themes/obscura.css +0 -0
  52. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/style/themes/stickynote.css +0 -0
  53. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/style/themes/terminal.css +0 -0
  54. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/static/style/themes/windows98.css +0 -0
  55. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/admin.html +0 -0
  56. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/blog.html +0 -0
  57. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/blog_footer.html +0 -0
  58. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/blog_preview.html +0 -0
  59. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/changepw.html +0 -0
  60. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/create.html +0 -0
  61. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/dashboard.html +0 -0
  62. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/discover.html +0 -0
  63. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/header.html +0 -0
  64. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/import.html +0 -0
  65. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/index.html +0 -0
  66. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/instances.html +0 -0
  67. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/login.html +0 -0
  68. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/new_page.html +0 -0
  69. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/new_post.html +0 -0
  70. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/page_preview.html +0 -0
  71. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/preview.html +0 -0
  72. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/register.html +0 -0
  73. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/settings.html +0 -0
  74. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/stats.html +0 -0
  75. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/templates/translations.html +0 -0
  76. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/utils/create_db.py +0 -0
  77. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/utils/db.py +0 -0
  78. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/utils/helpers.py +0 -0
  79. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/utils/i18n.json +0 -0
  80. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite/utils/models.py +0 -0
  81. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite.egg-info/dependency_links.txt +0 -0
  82. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite.egg-info/entry_points.txt +0 -0
  83. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite.egg-info/requires.txt +0 -0
  84. {openwrite-0.13.2.1 → openwrite-0.13.4}/openwrite.egg-info/top_level.txt +0 -0
  85. {openwrite-0.13.2.1 → openwrite-0.13.4}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: openwrite
3
- Version: 0.13.2.1
3
+ Version: 0.13.4
4
4
  License: GNU AFFERO GENERAL PUBLIC LICENSE
5
5
  Version 3, 19 November 2007
6
6
 
@@ -664,7 +664,7 @@ License: GNU AFFERO GENERAL PUBLIC LICENSE
664
664
  <https://www.gnu.org/licenses/>.
665
665
 
666
666
  Project-URL: Homepage, https://openwrite.io
667
- Project-URL: GitHub repository, https://codeberg.org/v0id1st/openwrite
667
+ Project-URL: Source Code, https://codeberg.org/v0id1st/openwrite
668
668
  Requires-Python: >=3.11
669
669
  Description-Content-Type: text/markdown
670
670
  License-File: LICENSE
@@ -695,7 +695,6 @@ openwrite is a minimalist blogging platform built for writing freely, hosting in
695
695
  ![PyPI - Version](https://img.shields.io/pypi/v/openwrite)
696
696
  [![License: AGPL-3.0-or-later](https://img.shields.io/badge/License-AGPL--3.0--or--later-blue.svg)](LICENSE)
697
697
  ![pythonver](https://img.shields.io/badge/python%20version-3.11-blue)
698
- ![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/openwriteio/openwrite/python-tests.yml)
699
698
 
700
699
  ---
701
700
 
@@ -6,7 +6,6 @@ openwrite is a minimalist blogging platform built for writing freely, hosting in
6
6
  ![PyPI - Version](https://img.shields.io/pypi/v/openwrite)
7
7
  [![License: AGPL-3.0-or-later](https://img.shields.io/badge/License-AGPL--3.0--or--later-blue.svg)](LICENSE)
8
8
  ![pythonver](https://img.shields.io/badge/python%20version-3.11-blue)
9
- ![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/openwriteio/openwrite/python-tests.yml)
10
9
 
11
10
  ---
12
11
 
@@ -212,7 +212,7 @@ def create_app(test_config=None):
212
212
 
213
213
  trans = g.db.query(Home).filter(Home.type == "translation", Home.language == lang).all()
214
214
 
215
- g.version = "0.13.2.1"
215
+ g.version = "0.13.3"
216
216
  g.mode = os.getenv("MODE")
217
217
  f_abs_path = os.path.abspath(__file__)
218
218
  g.mainpath = "/".join(f_abs_path.split("/")[:-1])
@@ -0,0 +1,290 @@
1
+ * {
2
+ margin: 0px;
3
+ padding: 0px;
4
+ box-sizing: border-box;
5
+ }
6
+
7
+ @font-face {
8
+ font-family: 'IBMPlexSans';
9
+ src: url('/static/IBMPlexSans-Regular.ttf') format('truetype');
10
+ }
11
+
12
+ @font-face {
13
+ font-family: 'Merriweather';
14
+ src: url('/static/Merriweather.ttf') format('truetype');
15
+ }
16
+
17
+ .container {
18
+ display: flex;
19
+ flex-direction: column;
20
+ width: 60%;
21
+ margin: 0 auto;
22
+ min-height: 60vh;
23
+ }
24
+
25
+ .container-row-fluid {
26
+ display: flex;
27
+ flex-direction: row;
28
+ width: 100%;
29
+ margin: 0 auto;
30
+ justify-content: space-between;
31
+ align-items: center;
32
+ }
33
+
34
+ .header {
35
+ display: flex;
36
+ justify-content: space-between;
37
+ align-items: center;
38
+ padding: 1rem 0;
39
+ border-bottom: 1px solid;
40
+ }
41
+
42
+ .header #logo {
43
+ background-image: url('/static/logo.png');
44
+ background-size: contain;
45
+ background-repeat: no-repeat;
46
+ width: 280px;
47
+ height: 70px;
48
+ }
49
+
50
+ .header #menu {
51
+ display: flex;
52
+ flex-wrap: wrap;
53
+ justify-content: center;
54
+ gap: 2rem;
55
+ }
56
+
57
+ .header #menu a {
58
+ text-decoration: none;
59
+ transition: 0.3s;
60
+ opacity: 0.85;
61
+ }
62
+
63
+ .header #menu a:hover {
64
+ opacity: 1;
65
+ }
66
+
67
+ .header #menu a.link-active, .link-active {
68
+ text-decoration: underline;
69
+ opacity: 1;
70
+ }
71
+
72
+ .content {
73
+ display: flex;
74
+ justify-content: space-between;
75
+ flex-direction: column;
76
+ padding: 3rem 0;
77
+ }
78
+
79
+ .content .centered {
80
+ text-align: center;
81
+ width: 100%;
82
+ display: block;
83
+ margin: 1rem;
84
+ }
85
+
86
+ h1.blog-name a {
87
+ text-decoration: none;
88
+ }
89
+
90
+ h1.post-title {
91
+ margin-bottom: 1rem;
92
+ margin-top: 1rem;
93
+ }
94
+
95
+ i.post-date.updated {
96
+ opacity: 0.5;
97
+ }
98
+
99
+ article.main-content {
100
+ padding: 3rem 0;
101
+ text-align: justify;
102
+ }
103
+
104
+ article.blog-content {
105
+ text-align: justify;
106
+ margin-bottom: 1rem;
107
+ }
108
+
109
+ article.post-content {
110
+ display: flex;
111
+ flex-direction: column;
112
+ gap: 1rem;
113
+ line-height: 30px;
114
+ margin-bottom: 1rem;
115
+ margin-top: 1rem;
116
+ }
117
+
118
+ article.post-content h1, article.post-content h2 {
119
+ margin-top: 1.5rem;
120
+ }
121
+
122
+ article.post-content blockquote {
123
+ margin-left: 2rem;
124
+ border-left: 4px solid;
125
+ padding-left: 1em;
126
+ font-style: italic;
127
+ }
128
+
129
+ article.post-content a {
130
+ text-decoration: none;
131
+ }
132
+
133
+ article.post-content a:hover {
134
+ text-decoration: underline;
135
+ }
136
+
137
+ article.post-content ol, article.post-content ul, article.post-content img {
138
+ max-width: 90%;
139
+ height: auto;
140
+ }
141
+
142
+ article.post-content ol, article.post-content ul {
143
+ padding-left: 2.5rem;
144
+ }
145
+
146
+ article.post-content p > img {
147
+ display: block;
148
+ margin: 0 auto;
149
+ }
150
+
151
+ div.postlist_item {
152
+ display: flex;
153
+ flex-direction: row;
154
+ gap: 1rem;
155
+ margin-bottom: -10px;
156
+ align-items: center;
157
+ }
158
+
159
+ .post-content#posts {
160
+ gap: 0;
161
+ }
162
+
163
+ div.bloginfo {
164
+ display: flex;
165
+ flex-direction: column;
166
+ gap: 1rem;
167
+ margin-top: 2rem;
168
+ border-bottom: 1px solid;
169
+ padding: 1.5rem;
170
+ }
171
+
172
+ footer.footer {
173
+ display: flex;
174
+ justify-content: center;
175
+ align-items: center;
176
+ flex-direction: row;
177
+ gap: 1rem;
178
+ font-family: "Merriweather";
179
+ border-top: 1px solid;
180
+ padding: 2rem 0;
181
+ color: #757575;
182
+ }
183
+
184
+ footer.blog.footer {
185
+ gap: 3px;
186
+ }
187
+
188
+ .footer a {
189
+ text-decoration: none;
190
+ color: #757575;
191
+ transition: 0.3s;
192
+ }
193
+
194
+ .footer a:hover {
195
+ text-decoration: underline;
196
+ color: #fff;
197
+ }
198
+
199
+ .flex {
200
+ display: flex;
201
+ }
202
+
203
+ .row {
204
+ flex-direction: row;
205
+ }
206
+
207
+ .column {
208
+ flex-direction: column;
209
+ }
210
+
211
+ .small-gap {
212
+ gap: 5px;
213
+ }
214
+
215
+ .medium-gap {
216
+ gap: 1rem;
217
+ }
218
+
219
+ .big-gap {
220
+ gap: 2rem;
221
+ }
222
+
223
+ .to-right {
224
+ justify-content: right;
225
+ }
226
+
227
+ .to-left {
228
+ justify-content: left;
229
+ }
230
+
231
+ .to-center {
232
+ justify-content: center;
233
+ }
234
+
235
+ .space-between {
236
+ justify-content: space-between;
237
+ }
238
+
239
+ p.column {
240
+ display: flex;
241
+ flex-direction: column;
242
+ }
243
+
244
+ i.caption {
245
+ display: block;
246
+ text-align: center;
247
+ }
248
+
249
+ .discover_post {
250
+ display: flex;
251
+ flex-direction: row;
252
+ gap: 1rem;
253
+ }
254
+
255
+ #like {
256
+ cursor: pointer;
257
+ }
258
+
259
+ @media only screen and (max-width: 850px) {
260
+ .container {
261
+ width: 80% !important;
262
+ }
263
+
264
+ .header #logo {
265
+ width: 245px !important;
266
+ }
267
+
268
+ .header {
269
+ flex-direction: column;
270
+ align-items: center;
271
+ }
272
+
273
+ .header #menu {
274
+ margin-top: 1rem;
275
+ gap: 1rem !important;
276
+ }
277
+
278
+ article.post-content {
279
+ line-height: 23px !important;
280
+ }
281
+
282
+ footer.footer {
283
+ flex-direction: column !important;
284
+ }
285
+
286
+ .discover_post {
287
+ flex-direction: column !important;
288
+ gap: unset !important;
289
+ }
290
+ }
@@ -0,0 +1,145 @@
1
+ @font-face {
2
+ font-family: 'IBMPlexSans';
3
+ src: url('/static/IBMPlexSans-Regular.ttf') format('truetype');
4
+ }
5
+
6
+ @font-face {
7
+ font-family: 'Merriweather';
8
+ src: url('/static/Merriweather.ttf') format('truetype');
9
+ }
10
+
11
+ body {
12
+ background: #18171c;
13
+ color: #e9d4ce;
14
+ }
15
+
16
+ .header {
17
+ border-bottom: 1px solid #3333333b;
18
+ font-family: "IBMPlexSans";
19
+ }
20
+
21
+ .header #menu a {
22
+ color: #eeeeee;
23
+ }
24
+
25
+ .header #menu a:hover {
26
+ color: #e9d4ce;
27
+ }
28
+
29
+ .content {
30
+ color: #dfd9d9;
31
+ }
32
+
33
+ .content h1, .content h2, .content h3 {
34
+ font-family: "Merriweather";
35
+ }
36
+
37
+ .content h1 {
38
+ font-size: 50px;
39
+ }
40
+
41
+ article.main-content {
42
+ font-size: 18px;
43
+ font-family: "IBMPlexSans";
44
+ }
45
+
46
+ article.blog-content {
47
+ font-size: 18px;
48
+ font-family: "IBMPlexSans";
49
+ }
50
+
51
+ h1.blog-name {
52
+ font-family: "Merriweather";
53
+ }
54
+
55
+ h1.blog-name a {
56
+ color: #e9d4ce;
57
+ }
58
+
59
+ h1.post-title {
60
+ font-family: "IBMPlexSans";
61
+ font-size: 40px;
62
+ }
63
+
64
+ i.post-date {
65
+ font-size: 15px;
66
+ }
67
+
68
+ article.post-content {
69
+ color: #e6e6e6;
70
+ }
71
+
72
+ article.post-content h1 {
73
+ font-size: 30px;
74
+ }
75
+
76
+ article.post-content blockquote {
77
+ color: #888;
78
+ border-left: 4px solid #888;
79
+ }
80
+
81
+ article.post-content a {
82
+ color: #af9cfb;
83
+ }
84
+
85
+ div.bloginfo {
86
+ border-bottom: 1px solid #3333333b;
87
+ }
88
+
89
+ span.bloginfo {
90
+ font-size: 20px;
91
+ font-family: "IBMSansPlex";
92
+ }
93
+
94
+ footer.footer {
95
+ font-family: "Merriweather";
96
+ border-top: 1px solid #3333333b;
97
+ color: #757575;
98
+ }
99
+
100
+ .footer a {
101
+ color: #757575;
102
+ }
103
+
104
+ .footer a:hover {
105
+ color: #fff;
106
+ }
107
+
108
+ i.caption {
109
+ color: #555;
110
+ font-size: 15px;
111
+ }
112
+
113
+ p code {
114
+ background: #282c34;
115
+ color: #abb2bf;
116
+ }
117
+
118
+ a.link {
119
+ color: #795EB5;
120
+ text-decoration: none;
121
+ }
122
+
123
+ a.link:hover {
124
+ text-decoration: underline;
125
+ }
126
+
127
+ a.action {
128
+ text-decoration: none;
129
+ color: #d2c5ff;
130
+ }
131
+
132
+ a.action:hover {
133
+ text-decoration: underline;
134
+ }
135
+
136
+ @media only screen and (max-width: 850px) {
137
+ .content h1 {
138
+ font-size: 30px !important;
139
+ }
140
+
141
+ article.main-content {
142
+ font-size: 15px !important;
143
+ }
144
+ }
145
+ @media only screen and (max-width: 850px) {
@@ -0,0 +1 @@
1
+ .emoji-picker-container{position:relative}.emoji-picker-trigger{position:absolute;top:5px;left:8px;background:0 0;box-shadow:none;border:none;opacity:.5;cursor:pointer;outline:0!important}.emoji-picker-trigger:hover{opacity:1}.emoji-picker-open .emoji-picker-trigger>svg{opacity:0;visibility:hidden}.emoji-picker-open .emoji-picker-trigger:before{content:"\00D7";position:absolute;font-size:24px;background:#fff;top:-3px;right:10px}.emoji-picker{display:none;z-index:999;width:272px;overflow:hidden;background:#fff;border-radius:5px;box-shadow:0 3px 6px rgba(0,0,0,.16),0 3px 6px rgba(0,0,0,.23);margin-top:8px;outline:0}.emoji-picker-open .emoji-picker{display:block;position:absolute;right:0;top:30px}[data-native-emoji-large]+.emoji-picker{display:block;width:100%;margin-bottom:15px;position:static!important}.emoji-picker-tabs{padding:0;margin:0;display:table;width:100%;background:#eff0f1;list-style:none}.emoji-picker-tabs>li{display:table-cell}.emoji-picker-anchor{display:block;padding:5px;text-align:center;text-decoration:none;font-size:24px;position:initial;opacity:.75}.emoji-picker-anchor:hover{background:rgba(0,0,0,.05);opacity:1}.emoji-picker-anchor.active{background:rgba(0,0,0,.15)}.emoji-picker-list{padding:10px 0;margin:0;margin-left:3%;list-style:none;text-align:left;overflow:scroll;height:200px;}.emoji-picker-list>li{display:inline-block}.emoji-picker-emoji{background:0 0;border:none;-webkit-appearance:none;padding:5px;margin:1px;font-size:24px;line-height:1;border-radius:3px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol'}.emoji-picker-emoji:hover{background:rgba(0,0,0,.07)}.emoji-picker-trigger svg {fill: #fff;}
@@ -1,3 +1,14 @@
1
+ @font-face {
2
+ font-family: 'IBMPlexSans';
3
+ src: url('/static/IBMPlexSans-Regular.ttf') format('truetype');
4
+ }
5
+
6
+ @font-face {
7
+ font-family: 'Merriweather';
8
+ src: url('/static/Merriweather.ttf') format('truetype');
9
+ }
10
+
11
+
1
12
  body {
2
13
  background: #efefef;
3
14
  color: #464646;
@@ -11,10 +22,19 @@ article.post-content a {
11
22
  color: #6834ab;
12
23
  }
13
24
 
25
+ h1.blog-name {
26
+ font-family: "Merriweather";
27
+ }
28
+
14
29
  h1.blog-name a {
15
30
  color: #6834ab;
16
31
  }
17
32
 
33
+ .header {
34
+ border-bottom: 1px solid #3333333b;
35
+ font-family: "IBMPlexSans";
36
+ }
37
+
18
38
  .header #menu a {
19
39
  color: #6834ab;
20
40
  font-weight: bold;
@@ -0,0 +1,203 @@
1
+ @font-face {
2
+ font-family: 'IBMPlexSans';
3
+ src: url('/static/IBMPlexSans-Regular.ttf') format('truetype');
4
+ }
5
+
6
+ @font-face {
7
+ font-family: 'Merriweather';
8
+ src: url('/static/Merriweather.ttf') format('truetype');
9
+ }
10
+
11
+ body {
12
+ background: #f8f8f8;
13
+ color: #1a1a1a;
14
+ }
15
+
16
+ .container {
17
+ max-width: 800px;
18
+ padding: 1rem 0.5rem;
19
+ font-family: 'Times New Roman', 'Georgia', serif;
20
+ line-height: 1.6;
21
+ }
22
+
23
+ h1.blog-name {
24
+ font-family: "Times New Roman", serif;
25
+ color: #000;
26
+ text-shadow: none;
27
+ font-weight: bold;
28
+ text-transform: uppercase;
29
+ letter-spacing: 2px;
30
+ border-bottom: 3px double #000;
31
+ padding-bottom: 0.5rem;
32
+ }
33
+
34
+ h1.blog-name a {
35
+ color: #000;
36
+ }
37
+
38
+ .header {
39
+ border-bottom: 2px solid #000;
40
+ font-family: "Times New Roman", serif;
41
+ background: #fff;
42
+ }
43
+
44
+ .header #menu a {
45
+ color: #000;
46
+ font-weight: bold;
47
+ text-transform: uppercase;
48
+ font-size: 0.9em;
49
+ letter-spacing: 1px;
50
+ }
51
+
52
+ .header #menu a:hover {
53
+ text-decoration: underline;
54
+ color: #333;
55
+ }
56
+
57
+ #menu a svg {
58
+ fill: #000;
59
+ }
60
+
61
+ article.post-content {
62
+ color: #1a1a1a;
63
+ background: #fff;
64
+ border-radius: 0;
65
+ padding: 2rem;
66
+ box-shadow: none;
67
+ border: 1px solid #ddd;
68
+ font-size: 1rem;
69
+ text-align: justify;
70
+ }
71
+
72
+ article.blog-content {
73
+ border: 2px solid #000;
74
+ padding: 2rem;
75
+ background: #fff;
76
+ border-radius: 0;
77
+ }
78
+
79
+ article.blog-content h3 {
80
+ color: #000;
81
+ font-weight: bold;
82
+ text-transform: uppercase;
83
+ letter-spacing: 1px;
84
+ }
85
+
86
+ article.post-content a {
87
+ color: #1a1a1a;
88
+ text-decoration: underline;
89
+ text-decoration-color: #1a1a1a;
90
+ font-weight: 500;
91
+ }
92
+
93
+ article.post-content a:hover {
94
+ color: #000;
95
+ text-decoration-color: #000;
96
+ }
97
+
98
+ article.post-content h1,
99
+ article.post-content h2,
100
+ article.post-content h3,
101
+ article.post-content h4,
102
+ article.post-content h5 {
103
+ color: #000;
104
+ font-weight: bold;
105
+ font-family: "Times New Roman", serif;
106
+ }
107
+
108
+ article.post-content h1 {
109
+ font-size: 1.8em;
110
+ border-bottom: 1px solid #000;
111
+ padding-bottom: 0.3em;
112
+ }
113
+
114
+ article.post-content h2 {
115
+ font-size: 1.5em;
116
+ }
117
+
118
+ article.post-content h3 {
119
+ font-size: 1.3em;
120
+ text-transform: uppercase;
121
+ letter-spacing: 1px;
122
+ }
123
+
124
+ article.post-content blockquote {
125
+ color: #333;
126
+ border-left: 4px solid #000;
127
+ background: #f5f5f5;
128
+ margin: 1.5em 0;
129
+ padding: 1em 1.5em;
130
+ font-style: italic;
131
+ font-size: 1.1em;
132
+ }
133
+
134
+ h1.post-title {
135
+ color: #000;
136
+ font-family: "Times New Roman", serif;
137
+ margin-bottom: 0.3em;
138
+ font-weight: bold;
139
+ font-size: 2.2em;
140
+ line-height: 1.2;
141
+ }
142
+
143
+ i.post-date {
144
+ color: #666;
145
+ font-size: 0.9em;
146
+ font-style: italic;
147
+ border-bottom: 1px solid #ddd;
148
+ padding-bottom: 0.5em;
149
+ margin-bottom: 1.5em;
150
+ display: block;
151
+ }
152
+
153
+ pre code.hljs {
154
+ background: #f9f9f9;
155
+ border: 1px solid #ddd;
156
+ border-radius: 0;
157
+ font-family: "Courier New", monospace;
158
+ }
159
+
160
+ p code {
161
+ background: #f0f0f0;
162
+ color: #000;
163
+ padding: 0.2em 0.4em;
164
+ border-radius: 0;
165
+ font-size: 0.9em;
166
+ font-family: "Courier New", monospace;
167
+ border: 1px solid #ccc;
168
+ }
169
+
170
+ svg {
171
+ fill: #000;
172
+ }
173
+
174
+ table {
175
+ border-collapse: collapse;
176
+ margin: 1.5em 0;
177
+ background: #fff;
178
+ width: 100%;
179
+ border: 2px solid #000;
180
+ }
181
+
182
+ table th,
183
+ table td {
184
+ border: 1px solid #000;
185
+ padding: 0.75em;
186
+ text-align: left;
187
+ }
188
+
189
+ table th {
190
+ background: #000;
191
+ color: #fff;
192
+ font-weight: bold;
193
+ text-transform: uppercase;
194
+ letter-spacing: 1px;
195
+ font-size: 0.9em;
196
+ }
197
+
198
+ hr {
199
+ border: none;
200
+ height: 2px;
201
+ background: #000;
202
+ margin: 2em 0;
203
+ }
@@ -1,5 +1,6 @@
1
1
  body {
2
2
  background: #201917;
3
+ color: #fff;
3
4
  }
4
5
 
5
6
  header.header {