@portosaur/theme 0.1.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.
Files changed (76) hide show
  1. package/README.md +13 -0
  2. package/assets/img/icon-old.png +0 -0
  3. package/assets/img/icon.png +0 -0
  4. package/assets/img/project-blank.png +0 -0
  5. package/assets/img/social-card.jpeg +0 -0
  6. package/assets/img/svg/icon-blog.svg +2 -0
  7. package/assets/img/svg/icon-close.svg +3 -0
  8. package/assets/img/svg/icon-dock.svg +4 -0
  9. package/assets/img/svg/icon-link.svg +5 -0
  10. package/assets/img/svg/icon-note.svg +2 -0
  11. package/assets/img/svg/icon-popup.svg +1 -0
  12. package/assets/img/svg/icon-save.svg +5 -0
  13. package/assets/img/svg/icon.svg +240 -0
  14. package/assets/img/svg/project-blank.svg +140 -0
  15. package/assets/sample-resume.pdf +0 -0
  16. package/package.json +41 -0
  17. package/plugins/README.md +8 -0
  18. package/src/index.d.ts +11 -0
  19. package/src/index.mjs +14 -0
  20. package/src/plugins/theme.mjs +13 -0
  21. package/theme/DocCategoryGeneratedIndexPage/index.jsx +15 -0
  22. package/theme/MDXComponents.jsx +19 -0
  23. package/theme/README.md +9 -0
  24. package/theme/Root.jsx +11 -0
  25. package/theme/components/AboutSection/index.jsx +264 -0
  26. package/theme/components/AboutSection/styles.module.css +309 -0
  27. package/theme/components/ContactSection/index.jsx +188 -0
  28. package/theme/components/ContactSection/styles.module.css +343 -0
  29. package/theme/components/ExperienceSection/index.jsx +119 -0
  30. package/theme/components/ExperienceSection/styles.module.css +183 -0
  31. package/theme/components/HeroSection/index.jsx +198 -0
  32. package/theme/components/HeroSection/styles.module.css +484 -0
  33. package/theme/components/NavArrow/index.jsx +124 -0
  34. package/theme/components/NavArrow/styles.module.css +107 -0
  35. package/theme/components/NoteIndex/index.jsx +182 -0
  36. package/theme/components/NoteIndex/styles.module.css +167 -0
  37. package/theme/components/Preview/components/FeedbackStates.jsx +200 -0
  38. package/theme/components/Preview/components/FileTabs.jsx +41 -0
  39. package/theme/components/Preview/components/PreviewContent.jsx +104 -0
  40. package/theme/components/Preview/components/PreviewHeader.jsx +411 -0
  41. package/theme/components/Preview/components/Triggers/Pv.jsx +253 -0
  42. package/theme/components/Preview/components/Triggers/SrcPv.jsx +55 -0
  43. package/theme/components/Preview/components/Triggers/index.jsx +2 -0
  44. package/theme/components/Preview/components/ViewerWindow.jsx +489 -0
  45. package/theme/components/Preview/hooks/useAdaptiveSizing.jsx +90 -0
  46. package/theme/components/Preview/hooks/useDeepLinkHash.jsx +24 -0
  47. package/theme/components/Preview/hooks/useDockLayout.jsx +86 -0
  48. package/theme/components/Preview/hooks/useFileFetch.jsx +38 -0
  49. package/theme/components/Preview/hooks/useTouchZoom.jsx +98 -0
  50. package/theme/components/Preview/index.jsx +3 -0
  51. package/theme/components/Preview/renderers/CodeRenderer.jsx +124 -0
  52. package/theme/components/Preview/renderers/ImageRenderer.jsx +74 -0
  53. package/theme/components/Preview/renderers/PdfRenderer.jsx +93 -0
  54. package/theme/components/Preview/renderers/WebRenderer.jsx +59 -0
  55. package/theme/components/Preview/state/index.jsx +177 -0
  56. package/theme/components/Preview/styles.module.css +776 -0
  57. package/theme/components/Preview/utils/index.jsx +62 -0
  58. package/theme/components/ProjectsSection/index.jsx +790 -0
  59. package/theme/components/ProjectsSection/styles.module.css +900 -0
  60. package/theme/components/SocialLinks/index.jsx +115 -0
  61. package/theme/components/SocialLinks/styles.module.css +57 -0
  62. package/theme/components/Tooltip/index.jsx +104 -0
  63. package/theme/components/Tooltip/styles.module.css +168 -0
  64. package/theme/config/iconMappings.jsx +427 -0
  65. package/theme/config/prism.jsx +72 -0
  66. package/theme/config/sidebar.jsx +11 -0
  67. package/theme/css/bootstrap.css +5 -0
  68. package/theme/css/catppuccin.css +618 -0
  69. package/theme/css/custom.css +253 -0
  70. package/theme/css/tasks.css +874 -0
  71. package/theme/hooks/useScrollReveal.jsx +20 -0
  72. package/theme/pages/index.jsx +104 -0
  73. package/theme/pages/notes.jsx +131 -0
  74. package/theme/pages/tasks.jsx +989 -0
  75. package/theme/utils/HashNavigation.jsx +185 -0
  76. package/theme/utils/updateTitle.jsx +65 -0
@@ -0,0 +1,253 @@
1
+ /* Catppuccin colors */
2
+ @import url("./catppuccin.css");
3
+
4
+ /* Bootstrap (some prebuilt) */
5
+ @import url(./bootstrap.css);
6
+
7
+ /* === Component overrides === */
8
+
9
+ html {
10
+ scroll-behavior: smooth;
11
+ color: var(--ifm-font-color-base);
12
+ background-color: var(--ifm-footer-background-color) !important;
13
+ }
14
+
15
+ .main-wrapper {
16
+ background-color: var(--ifm-background-color) !important;
17
+ }
18
+
19
+ .navbar {
20
+ background-color: var(--ifm-navbar-background-color) !important;
21
+ }
22
+
23
+ /* Reduce gap between navbar items */
24
+ .navbar__items .navbar__item {
25
+ padding-left: 0.5rem;
26
+ padding-right: 0.5rem;
27
+ margin-left: 0;
28
+ margin-right: 0;
29
+ }
30
+
31
+ .navbar__link {
32
+ font-size: 0.95rem;
33
+ }
34
+
35
+ ._navbar-more-items {
36
+ padding-left: 8px;
37
+ margin-left: -7px;
38
+ border-left: 1.5px solid var(--ifm-background-surface-color) !important;
39
+ }
40
+
41
+ ._nav-protosaurus-version {
42
+ opacity: 64%;
43
+ margin-top: 10px;
44
+ border-top: 1.2px solid var(--ifm-background-color) !important;
45
+ }
46
+
47
+ @media (max-width: 768px) {
48
+ ._navbar-more-items {
49
+ border-left: 0 !important;
50
+ padding-left: 13px !important;
51
+ margin-left: 0 !important;
52
+ }
53
+ }
54
+
55
+ /* Search local styles */
56
+ :root {
57
+ --search-local-modal-background: var(--ifm-background-color);
58
+ --search-local-modal-shadow: 0 2px 8px 0 var(--ifm-shadow-color);
59
+ --search-local-hit-background: var(--ifm-card-background-color);
60
+ --search-local-hit-shadow: 0 1px 3px 0 var(--ifm-shadow-color);
61
+ --search-local-hit-color: var(--ifm-font-color-base);
62
+ --search-local-highlight-color: var(--ifm-color-primary);
63
+ --search-local-muted-color: var(--ifm-font-color-base);
64
+ --search-local-hit-active-color: var(--ifm-background-color);
65
+ --search-local-input-active-border-color: var(--ifm-color-primary);
66
+ }
67
+
68
+ /* Hide keyboard shortcut hint */
69
+ .searchHintContainer_Pkmr {
70
+ display: none !important;
71
+ }
72
+
73
+ .navbar__search-input {
74
+ width: 130px;
75
+ font-size: 0.85rem;
76
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23cdd6f4' d='M6.02945,10.20327a4.17382,4.17382,0,1,1,4.17382-4.17382A4.15609,4.15609,0,0,1,6.02945,10.20327Zm9.69195,4.2199L10.8989,9.59979A5.88021,5.88021,0,0,0,12.058,6.02856,6.00467,6.00467,0,1,0,9.59979,10.8989l4.82338,4.82338a.89729.89729,0,0,0,1.29912,0,.89749.89749,0,0,0-.00087-1.29909Z'/%3E%3C/svg%3E");
77
+ }
78
+
79
+ [data-theme="light"] .navbar__search-input {
80
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%234c4f69' d='M6.02945,10.20327a4.17382,4.17382,0,1,1,4.17382-4.17382A4.15609,4.15609,0,0,1,6.02945,10.20327Zm9.69195,4.2199L10.8989,9.59979A5.88021,5.88021,0,0,0,12.058,6.02856,6.00467,6.00467,0,1,0,9.59979,10.8989l4.82338,4.82338a.89729.89729,0,0,0,1.29912,0,.89749.89749,0,0,0-.00087-1.29909Z'/%3E%3C/svg%3E");
81
+ }
82
+
83
+ .footer {
84
+ background-color: var(--ifm-footer-background-color) !important;
85
+ padding-top: 0rem !important;
86
+ padding-bottom: 0.15rem !important;
87
+ margin: 0 !important;
88
+ }
89
+
90
+ .footer__copyright {
91
+ margin-top: 0 !important;
92
+ padding-top: 0 !important;
93
+ font-size: 0.8rem;
94
+ }
95
+
96
+ .cardDescription_PWke {
97
+ color: var(--ifm-font-color-base) !important;
98
+ opacity: 0.6;
99
+ }
100
+
101
+ .hide-this {
102
+ display: none !important;
103
+ }
104
+
105
+ /* Docs Styling */
106
+
107
+ /* .docs-wrapper {
108
+ background-color:darksalmon !important;
109
+ } article {
110
+ background-color: red !important;
111
+ } .markdown {
112
+ background-color: blue !important;
113
+ } .hide-this {
114
+ display: none !important;
115
+ }
116
+ */
117
+
118
+ .breadcrumbs__link {
119
+ font-size: 0.7rem;
120
+ padding: 0.1rem 0.2rem !important;
121
+ opacity: 76%;
122
+ }
123
+
124
+ .breadcrumbs__item--active .breadcrumbs__link {
125
+ border: none !important;
126
+ background-color: transparent !important;
127
+ }
128
+
129
+ .markdown h1 {
130
+ text-align: center;
131
+ color: var(--ifm-color-primary);
132
+ margin-top: 0.3rem;
133
+ margin-bottom: 2.7rem !important;
134
+ }
135
+
136
+ .markdown h2 {
137
+ color: var(--ifm-color-primary);
138
+ }
139
+
140
+ .markdown img {
141
+ display: block;
142
+ margin: 0 auto;
143
+ padding: 1px;
144
+ border: 2px solid var(--ifm-background-surface-color);
145
+ border-radius: 14px;
146
+ }
147
+
148
+ mark {
149
+ background-color: rgba(var(--ctp-peach-rgb), 0.2);
150
+ color: var(--ifm-font-color-base);
151
+ padding: 0.17rem 0.27rem;
152
+ border-radius: 0.2rem;
153
+ border-bottom: 1px solid var(--ifm-color-primary);
154
+ }
155
+
156
+ .pagination-nav__link {
157
+ border: 1px solid var(--ifm-background-color);
158
+ background-color: var(--ifm-background-surface-color);
159
+ }
160
+
161
+ .pagination-nav__link:hover {
162
+ border: 1px solid var(--ifm-color-primary);
163
+ border-color: var(--ifm-color-primary);
164
+ }
165
+
166
+ .table-of-contents__link--active {
167
+ font-weight: bold;
168
+ }
169
+
170
+ /* Reduced motion preferences */
171
+ @media (prefers-reduced-motion: reduce) {
172
+ html {
173
+ scroll-behavior: auto;
174
+ }
175
+ }
176
+
177
+ .center {
178
+ display: flex;
179
+ justify-content: center;
180
+ align-items: center;
181
+ }
182
+
183
+ /* === Global Entrance Animations === */
184
+
185
+ @keyframes fadeIn {
186
+ from {
187
+ opacity: 0;
188
+ }
189
+ to {
190
+ opacity: 1;
191
+ }
192
+ }
193
+
194
+ @keyframes slideUp {
195
+ from {
196
+ opacity: 0;
197
+ transform: translateY(30px);
198
+ }
199
+ to {
200
+ opacity: 1;
201
+ transform: translateY(0);
202
+ }
203
+ }
204
+
205
+ @keyframes slideInLeft {
206
+ from {
207
+ opacity: 0;
208
+ transform: translateX(-40px);
209
+ }
210
+ to {
211
+ opacity: 1;
212
+ transform: translateX(0);
213
+ }
214
+ }
215
+
216
+ @keyframes slideInRight {
217
+ from {
218
+ opacity: 0;
219
+ transform: translateX(40px);
220
+ }
221
+ to {
222
+ opacity: 1;
223
+ transform: translateX(0);
224
+ }
225
+ }
226
+
227
+ @keyframes scaleIn {
228
+ from {
229
+ opacity: 0;
230
+ transform: scale(0.95);
231
+ }
232
+ to {
233
+ opacity: 1;
234
+ transform: scale(1);
235
+ }
236
+ }
237
+
238
+ @keyframes skillAppear {
239
+ to {
240
+ opacity: 1;
241
+ transform: translateY(0);
242
+ }
243
+ }
244
+
245
+ /* Base reveal state */
246
+ .reveal-on-scroll {
247
+ opacity: 0;
248
+ transition: opacity 0.3s ease;
249
+ }
250
+
251
+ .reveal-on-scroll.isVisible {
252
+ opacity: 1;
253
+ }