This website requires JavaScript.
6e2d60df48
Merge pull request 'Fix/css tweaks and bugs' (#11 ) from fix/css-tweaks-and-bugs into main
main
ilia
2026-07-14 15:19:16 +00:00
fcc90e7a87
refactor(ImageLightbox): pin close button via a fixed wrapper
Ilia Mashkov
2026-07-14 18:02:37 +03:00
611a9c1a5a
refactor(Button): distinct solid/outline variants, drop redundant secondary
Ilia Mashkov
2026-07-14 18:02:21 +03:00
d479f3aabf
fix(theme): render btn-shadow via box-shadow so light fills aren't tinted
Ilia Mashkov
2026-07-14 18:02:10 +03:00
f1d488ae4f
feat(Footer): icon-only CV download below sm
Ilia Mashkov
2026-07-14 17:33:55 +03:00
3131f846b7
fix(theme): shrink mobile footer to match its compact icon row
Ilia Mashkov
2026-07-14 17:33:44 +03:00
702be45ce3
refactor: rename section item to SectionPanel, list to SectionAccordion
Ilia Mashkov
2026-07-14 17:05:31 +03:00
c3e8e38a58
fix(theme): fluid nav-title size and section rhythm off clamp tokens
Ilia Mashkov
2026-07-14 16:59:48 +03:00
c0aab42e6c
refactor(Card): drive sidebar border off lg: utilities not a media query
Ilia Mashkov
2026-07-14 16:19:22 +03:00
e09fc467ba
docs(theme): trim verbose CSS comments to their point
Ilia Mashkov
2026-07-14 15:59:48 +03:00
d95840e127
fix(theme): give footer its own view-transition group
Ilia Mashkov
2026-07-14 15:59:32 +03:00
21c771cf24
fix(theme): center list bullets on text optical centre
Ilia Mashkov
2026-07-14 15:59:19 +03:00
0353315953
fix(theme): clamp h3 so it never overtakes the nav h1
Ilia Mashkov
2026-07-14 15:59:05 +03:00
b63e34413d
fix(theme): clip overflow-x at root, not body
Ilia Mashkov
2026-07-14 15:58:51 +03:00
e21d378f21
Merge pull request 'Feature/brutalism overhaul' (#10 ) from feature/brutalism-overhaul into main
ilia
2026-07-14 07:40:18 +00:00
e66114ce23
chore: pin turbopack root
Ilia Mashkov
2026-07-14 10:36:14 +03:00
03c51e2e8a
docs: rewrite README for real stack and rendering model
Ilia Mashkov
2026-07-14 10:36:11 +03:00
f8d13193ea
refactor(Badge): forward native span props via spread
Ilia Mashkov
2026-07-14 10:36:08 +03:00
fd15374134
feat(Link): tertiary variant with reversed hover
Ilia Mashkov
2026-07-14 10:35:57 +03:00
7c6da0ca73
feat(Stagger): staggered slide-in for list items
Ilia Mashkov
2026-07-14 10:35:49 +03:00
59304f4ae3
feat(theme): golden-ratio width cap for tag groups
Ilia Mashkov
2026-07-14 10:35:35 +03:00
1bd76d7061
fix(theme): squircle list markers, keep CMS li text inline
Ilia Mashkov
2026-07-14 10:35:23 +03:00
44abc362bc
refactor(theme): muted offset shadows over hard brutalist stamp
Ilia Mashkov
2026-07-14 10:34:24 +03:00
48bd15533c
fix: drop page grain behind content so cards and badges cover it
Ilia Mashkov
2026-07-13 17:55:36 +03:00
d439e81236
Merge pull request 'fix: ul styles for rich text' (#9 ) from fixes/visuals into main
ilia
2026-05-26 12:40:28 +00:00
615f4afc2d
fix: ul styles for rich text
Ilia Mashkov
2026-05-26 15:36:29 +03:00
e5f5c7b82e
Merge pull request 'Feature/image dialog' (#8 ) from feature/image-dialog into main
ilia
2026-05-23 10:16:54 +00:00
e16b88ba7e
chore: remove outdated code
Ilia Mashkov
2026-05-23 13:14:06 +03:00
83ddd2724f
chore: enforce common prop typing style
Ilia Mashkov
2026-05-23 13:06:56 +03:00
7e87cbc3ae
chore: experience card responsive style tweak
Ilia Mashkov
2026-05-23 13:00:56 +03:00
521aa7d05c
feat: create new grain-pattern utility and use it for body
Ilia Mashkov
2026-05-23 12:53:37 +03:00
532f93d896
fix: disable lightbox animation in firefox since it isnt supported yet
Ilia Mashkov
2026-05-23 12:52:16 +03:00
9ebb515032
feat(projects): prioritize LCP image, fix View Project button on mobile
Ilia Mashkov
2026-05-23 09:54:43 +03:00
cd59766f92
feat(ImageLightbox): morph to dialog via View Transitions, fix sizing and stacking
Ilia Mashkov
2026-05-23 09:54:20 +03:00
ecbb76312b
refactor(section): snap-out old section-body on navigation
Ilia Mashkov
2026-05-23 09:53:26 +03:00
82933dedf8
feat(shared): add Modal component
Ilia Mashkov
2026-05-23 09:50:42 +03:00
c4002ebb4f
chore: use node:path protocol in vitest config
Ilia Mashkov
2026-05-23 09:50:29 +03:00
a31cf4deec
fix: opt Next.js out of smooth scroll for route transitions
Ilia Mashkov
2026-05-22 15:30:42 +03:00
5b686ad87c
fix: SectionAccordion animation misbehave
Ilia Mashkov
2026-05-22 14:07:26 +03:00
43242c3bed
refactor: swap Button ghost/outline semantics, clean up ImageLightbox thumbnail
Ilia Mashkov
2026-05-22 13:30:28 +03:00
7a06d42d20
feat: add icon components and update ImageLightbox with icons and Button
Ilia Mashkov
2026-05-22 12:46:47 +03:00
eeb7d6b4a6
feat: use ImageLightbox in ProjectCard
Ilia Mashkov
2026-05-22 12:18:00 +03:00
eb13328f9a
feat: add lightbox backdrop CSS and export ImageLightbox
Ilia Mashkov
2026-05-22 12:05:42 +03:00
bfb0b46a37
feat: implement ImageLightbox with tests
Ilia Mashkov
2026-05-22 12:01:08 +03:00
c7ed458c8e
test: ImageLightbox failing tests
Ilia Mashkov
2026-05-22 10:14:53 +03:00
49cafe7161
feat: ImageLightbox placeholder
Ilia Mashkov
2026-05-21 20:28:28 +03:00
58eae96791
Merge pull request 'Features/visual improvements' (#7 ) from features/visual-improvements into main
ilia
2026-05-21 15:16:16 +00:00
1b0ffd41a2
chore: changes for deployment to get the pocketbase public url variable value
Ilia Mashkov
2026-05-21 18:15:16 +03:00
3e520f6abb
fix: use https protocol in next config
Ilia Mashkov
2026-05-21 18:01:03 +03:00
4d54947a91
fix: tweak slide section animation
Ilia Mashkov
2026-05-21 18:00:12 +03:00
f121443e52
fix: add footer z index in transition group to stay above main content during transitions
Ilia Mashkov
2026-05-21 17:59:40 +03:00
df4526cabd
chore: remove unused favicon.ico
Ilia Mashkov
2026-05-21 17:07:58 +03:00
bf36a40bb5
chore: swap the favicon
Ilia Mashkov
2026-05-21 16:57:30 +03:00
886cf4b5c4
feat: add spring slide animation for section content
Ilia Mashkov
2026-05-21 16:36:00 +03:00
fc588f9e66
feat: set page title and description
Ilia Mashkov
2026-05-21 16:01:42 +03:00
f08ee51332
chore: remove unused files
Ilia Mashkov
2026-05-21 15:58:48 +03:00
9ded41db3c
feat: set the favicon
Ilia Mashkov
2026-05-21 15:58:11 +03:00
0697e9ad72
feat: add error handling and tests for client.ts
Ilia Mashkov
2026-05-21 15:57:43 +03:00
caff3fe7e3
fix: align footer paddings with main ones
Ilia Mashkov
2026-05-21 15:55:47 +03:00
56f3f94e41
Merge pull request 'feat: add PBHttpError and try/catch in getFirstRecord' (#6 ) from fix/get-first-record into main
ilia
2026-05-21 10:08:04 +00:00
9deefaf3fc
feat: add PBHttpError and try/catch in getFirstRecord
Ilia Mashkov
2026-05-21 13:05:31 +03:00
a54963091c
Merge pull request 'fix: require PB_URL in production, fall back to localhost in dev only' (#5 ) from fix/pocketbase into main
ilia
2026-05-19 16:28:43 +00:00
6b15a0e658
fix: gracefully handle PocketBase unreachable during static generation
Ilia Mashkov and Claude Sonnet 4.6
2026-05-19 19:27:04 +03:00
93b8adf55d
fix: require PB_URL in production, fall back to localhost in dev only
Ilia Mashkov and Claude Sonnet 4.6
2026-05-19 19:26:58 +03:00
03a90e1cf0
Merge pull request 'fix: old palette purged from stories and stories purged from production build' (#4 ) from fixes/storybook into main
ilia
2026-05-19 15:58:13 +00:00
06d69a860e
fix: add css and json to biome check, set yarn version in package.json
Ilia Mashkov
2026-05-19 18:57:16 +03:00
181cfdebdf
fix: old palette purged from stories and stories purged from production build
Ilia Mashkov
2026-05-19 18:50:45 +03:00
e0565d6ddc
fix: yarn instead of npm for dockerfile
Ilia Mashkov
2026-05-19 18:37:58 +03:00
598d566487
Merge pull request 'feat: add route-level error page and per-section error boundary' (#3 ) from feature/error-handling into main
ilia
2026-05-19 15:27:17 +00:00
dd9cc766d5
feat: add route-level error page and per-section error boundary
Ilia Mashkov and Claude Sonnet 4.6
2026-05-19 18:20:53 +03:00
d1b4452867
Merge pull request 'chore: add .dockerignore' (#2 ) from fixes/responsive into main
ilia
2026-05-19 15:11:13 +00:00
d62c0ad501
chore: add Gitea Actions deploy workflow
Ilia Mashkov
2026-05-19 18:09:59 +03:00
cf2f1bc7f3
chore: unignore .gitea directory
Ilia Mashkov
2026-05-19 18:09:26 +03:00
7f6e6369ff
fix: reduce padding and spacing for mobile
Ilia Mashkov
2026-05-19 18:06:51 +03:00
d0f09f0dbd
feat: social links with inline SVG icons from CMS
Ilia Mashkov
2026-05-19 18:06:20 +03:00
41af0b90a0
feat: add Link secondary variant with border-bottom at sm+
Ilia Mashkov
2026-05-19 18:06:10 +03:00
954b17d824
fix: reduce Button sm padding on mobile
Ilia Mashkov
2026-05-19 18:05:57 +03:00
906ec3b805
feat: fixed footer with responsive height tokens
Ilia Mashkov
2026-05-19 18:05:46 +03:00
4d6d78a528
chore: add .dockerignore
Ilia Mashkov
2026-05-19 18:05:37 +03:00
f40e9f54a3
chore: add dockerfile
Ilia Mashkov
2026-05-19 09:46:35 +03:00
7829f81d1a
chore: add dockerfile
Ilia Mashkov
2026-05-19 09:46:35 +03:00
cd9da6dd26
Merge pull request 'fix: storybook font rendering and shared fonts module' (#1 ) from feat/portfolio-setup into main
ilia
2026-05-18 18:45:21 +00:00
d5ba77b4ce
feat: add poweredByHeader: false
Ilia Mashkov
2026-05-18 21:40:10 +03:00
5c00f8e8a0
feat: add /api/revalidate webhook for on-demand ISR
Ilia Mashkov
2026-05-18 21:34:51 +03:00
cb3bdce24a
feat: tag all PocketBase fetches for ISR cache invalidation
Ilia Mashkov
2026-05-18 21:34:43 +03:00
42ca683c65
feat: add tags/revalidate options to PocketBase fetch client
Ilia Mashkov
2026-05-18 21:34:34 +03:00
fea6682024
feat: switch to standalone output with PocketBase remotePatterns
Ilia Mashkov
2026-05-18 21:34:25 +03:00
540df57f8d
feat: add 404 page with centered layout
Ilia Mashkov
2026-05-18 20:46:22 +03:00
b88263a65a
fix: DetailedProjectCard — render description as RichText
Ilia Mashkov
2026-05-18 20:46:13 +03:00
06e39b58c6
refactor: ProjectsSection — use shared buildFileUrl, pass url prop, switch to stacked layout
Ilia Mashkov
2026-05-18 20:46:02 +03:00
ac9ee0eb4e
feat: ProjectCard — add url prop, RichText description, open link in new tab
Ilia Mashkov
2026-05-18 20:45:54 +03:00
2ae5ae3210
feat: wire Footer to PocketBase site_settings
Ilia Mashkov
2026-05-18 20:45:44 +03:00
f159c6e861
feat: add SocialRecord, ContactsRecord, SiteSettingsRecord API types
Ilia Mashkov
2026-05-18 20:45:32 +03:00
b33b9f328c
feat: add Link shared component
Ilia Mashkov
2026-05-18 20:45:17 +03:00
c9631f9905
feat: add buildFileUrl utility with tests
Ilia Mashkov
2026-05-18 20:45:06 +03:00
ba7395cb32
feat: make Button polymorphic — renders <a> when href is provided
Ilia Mashkov
2026-05-18 20:44:50 +03:00
7e542597d0
feat: Footer widget with email link and CV download, added to root layout
Ilia Mashkov
2026-05-18 14:15:25 +03:00
0552a2a8e5
refactor: register text-section-title in @theme inline, use as plain utility class
Ilia Mashkov
2026-05-18 14:06:01 +03:00
d955aeb628
refactor: replace inline style with Tailwind class and font-wonk utility
Ilia Mashkov
2026-05-18 14:04:56 +03:00
b40ff4f588
fix: fluid section title with clamp() to prevent wrapping below 900px
Ilia Mashkov
2026-05-18 14:02:03 +03:00