core-maugli 1.1.9 → 1.2.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 (69) hide show
  1. package/package.json +1 -1
  2. package/src/components/ArticleMeta.astro +1 -1
  3. package/src/components/AuthorCard.astro +1 -1
  4. package/src/components/Avatar.astro +1 -1
  5. package/src/config/maugli.config.ts +5 -5
  6. package/src/content/authors/daria-zorina.md +3 -3
  7. package/src/content/authors/default-autor.md +3 -3
  8. package/src/content/authors/igor-sokolov.md +3 -3
  9. package/src/content/authors/john-walker.md +3 -3
  10. package/src/content/blog/jsonld-guide.md +3 -3
  11. package/src/content/blog/post-0.md +1 -1
  12. package/src/content/blog/post-1-avtomatizaciya-marketinga-kak-ii-osvobozhdaet-predprinimatelei-ot-cifrovogo-rabstva.md +1 -1
  13. package/src/content/blog/post-agent-experience-mcp-biznes-v-epohu-ii-agentov.md +1 -1
  14. package/src/content/blog/test-post-2025-07-11.md +1 -1
  15. package/src/content/pages/blog.mdx +1 -1
  16. package/src/content/products/maugli-editor.md +1 -1
  17. package/src/content/products/maugli-freeblog.md +2 -2
  18. package/src/content/projects/project-1.md +1 -1
  19. package/src/content/projects/project-2.md +1 -1
  20. package/src/content/tags/ai-business.mdx +1 -1
  21. package/src/content/tags/automation.mdx +1 -1
  22. package/src/content/tags/content-strategy.mdx +1 -1
  23. package/src/content/tags/growth-marketing.mdx +1 -1
  24. package/src/content/tags/industry-reviews.mdx +1 -1
  25. package/src/content/tags/interesting.mdx +1 -1
  26. package/src/content/tags/seo-ai-seo.mdx +1 -1
  27. package/src/pages/authors/[...page].astro +1 -1
  28. package/src/pages/authors/[id].astro +2 -2
  29. package/src/img/default/autor_default.webp +0 -0
  30. package/src/img/default/rubric_default.webp +0 -0
  31. package/src/img/examples/authors/anna.webp +0 -0
  32. package/src/img/examples/authors/carlos.webp +0 -0
  33. package/src/img/examples/authors/daria.webp +0 -0
  34. package/src/img/examples/authors/dmitry.webp +0 -0
  35. package/src/img/examples/authors/igor.webp +0 -0
  36. package/src/img/examples/authors/john.webp +0 -0
  37. package/src/img/examples/blog/post-1-avtomatizaciya-marketinga-kak-ii-osvobozhdaet-predprinimatelei-ot-cifrovogo-rabstva.webp +0 -0
  38. package/src/img/examples/blog/post_1_jsonld_guide.webp +0 -0
  39. package/src/img/examples/blog/tr-post-1.webp +0 -0
  40. /package/{src/assets → public}/img/default/autor_default.webp +0 -0
  41. /package/{src/assets → public}/img/default/blog_default.webp +0 -0
  42. /package/{src → public}/img/default/default.webp +0 -0
  43. /package/{src/assets → public}/img/default/product_default.webp +0 -0
  44. /package/{src/assets → public}/img/default/project_default.webp +0 -0
  45. /package/{src/assets → public}/img/default/rubric_default.webp +0 -0
  46. /package/{src → public}/img/default/test.webp +0 -0
  47. /package/{src → public}/img/default/test2.webp +0 -0
  48. /package/{src/assets → public}/img/examples/authors/anna.webp +0 -0
  49. /package/{src/assets → public}/img/examples/authors/carlos.webp +0 -0
  50. /package/{src/assets → public}/img/examples/authors/daria.webp +0 -0
  51. /package/{src/assets → public}/img/examples/authors/dmitry.webp +0 -0
  52. /package/{src/assets → public}/img/examples/authors/igor.webp +0 -0
  53. /package/{src/assets → public}/img/examples/authors/john.webp +0 -0
  54. /package/{src/assets → public}/img/examples/blog/post-1-avtomatizaciya-marketinga-kak-ii-osvobozhdaet-predprinimatelei-ot-cifrovogo-rabstva.webp +0 -0
  55. /package/{src → public}/img/examples/blog/post-2-avtomatizaciya-kontenta-kak-neiroseti-ubivayut-perfekcionizm-v-biznese.webp +0 -0
  56. /package/{src → public}/img/examples/blog/post-3-laik-ne-valyuta-kak-avtomatizaciya-marketinga-spasaet-ot-lozhnyh-metrik.webp +0 -0
  57. /package/{src → public}/img/examples/blog/post-5-5-fatalnyh-oshibok-marketinga-kotorye-ubivayut-startapy-na-starte.webp +0 -0
  58. /package/{src → public}/img/examples/blog/post-6-5-strategii-kontent-marketinga-dlya-startapov-avtomatizaciya-i-revolyuciya.webp +0 -0
  59. /package/{src → public}/img/examples/blog/post-7-viralnyi-kontent-ne-udacha-a-strategiya-avtomatizaciya-marketinga.webp +0 -0
  60. /package/{src → public}/img/examples/blog/post-agent-experience-mcp-biznes-v-epohu-ii-agentov.webp +0 -0
  61. /package/{src/assets → public}/img/examples/blog/post_11.webp +0 -0
  62. /package/{src/assets → public}/img/examples/blog/post_12.webp +0 -0
  63. /package/{src/assets → public}/img/examples/blog/post_1_jsonld_guide.webp +0 -0
  64. /package/{src/assets → public}/img/examples/blog/test-post.webp +0 -0
  65. /package/{src/assets → public}/img/examples/blog/tr-post-1.webp +0 -0
  66. /package/{src/assets → public}/img/examples/products/product_1.webp +0 -0
  67. /package/{src/assets → public}/img/examples/products/product_2.webp +0 -0
  68. /package/{src/assets → public}/img/examples/projects/project_1.webp +0 -0
  69. /package/{src/assets → public}/img/examples/projects/project_2.webp +0 -0
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "core-maugli",
3
3
  "description": "Astro & Tailwind CSS blog theme for Maugli.",
4
4
  "type": "module",
5
- "version": "1.1.9",
5
+ "version": "1.2.0",
6
6
  "license": "GPL-3.0-or-later OR Commercial",
7
7
  "repository": {
8
8
  "type": "git",
@@ -57,7 +57,7 @@ if (!authorData) {
57
57
  authorId = defaultAuthorData.id;
58
58
  }
59
59
  let authorName = authorData.data.name;
60
- let authorImg = authorData.data.avatar || 'src/img/default/autor_default.webp';
60
+ let authorImg = authorData.data.avatar || '/img/default/autor_default.webp';
61
61
  ---
62
62
 
63
63
  <!-- Метаинформация сверху -->
@@ -46,7 +46,7 @@ const postCount = getPostsByAuthor(posts, slug).length;
46
46
  <div class="flex flex-row items-start gap-4">
47
47
  <!-- Аватар автора слева -->
48
48
  <Avatar
49
- src={avatar || maugliConfig.defaultAuthorImage || 'src/img/default/autor_default.webp'}
49
+ src={avatar || maugliConfig.defaultAuthorImage || '/img/default/autor_default.webp'}
50
50
  alt={name}
51
51
  size="clamp(70px, 15vw, 100px)"
52
52
  class="no-border"
@@ -13,7 +13,7 @@ const avatarSize = typeof size === 'number' ? `${size}px` : size;
13
13
  ---
14
14
 
15
15
  <div class:list={['avatar-container', className]} style={`width: ${avatarSize}; height: ${avatarSize};`}>
16
- <img src={src || 'src/img/default/autor_default.webp'} alt={alt} loading="lazy" class="w-full h-full object-cover" />
16
+ <img src={src || '/img/default/autor_default.webp'} alt={alt} loading="lazy" class="w-full h-full object-cover" />
17
17
  </div>
18
18
 
19
19
  <style>
@@ -162,11 +162,11 @@ export const maugliConfig: MaugliConfig = {
162
162
  }
163
163
  }
164
164
  },
165
- defaultBlogImage: 'src/assets/img/default/blog_default.webp', // Default blog image
166
- defaultProductImage: 'src/assets/img/default/product_default.webp', // Default product image
167
- defaultProjectImage: 'src/assets/img/default/project_default.webp', // Default project/case image
168
- defaultAuthorImage: 'src/assets/img/default/autor_default.webp', // Default author image
169
- defaultRubricImage: 'src/assets/img/default/rubric_default.webp', // Default rubric/category image
165
+ defaultBlogImage: '/img/default/blog_default.webp', // Default blog image
166
+ defaultProductImage: '/img/default/product_default.webp', // Default product image
167
+ defaultProjectImage: '/img/default/project_default.webp', // Default project/case image
168
+ defaultAuthorImage: '/img/default/autor_default.webp', // Default author image
169
+ defaultRubricImage: '/img/default/rubric_default.webp', // Default rubric/category image
170
170
  features: {
171
171
  enableSubscribe: true, // Enable subscribe block
172
172
  enableMultiLang: false, // Enable multilingual support
@@ -2,7 +2,7 @@
2
2
  name: 'Дарья Зорина'
3
3
  position: 'Founder, CEO'
4
4
  description: 'Основатель и креативный директор Maugli AI Editorial System. Эксперт в AI-контенте, GPT-SEO и многоканальных стратегиях'
5
- avatar: 'src/img/examples/authors/daria.webp'
5
+ avatar: '/img/examples/authors/daria.webp'
6
6
  socials:
7
7
  telegram: 'https://t.me/darrrina'
8
8
  linkedin: 'https://www.linkedin.com/in/dariazorina'
@@ -23,7 +23,7 @@ seo:
23
23
  - контент-стратегии
24
24
  - AI content
25
25
  image:
26
- src: 'src/img/examples/authors/daria.webp'
26
+ src: '/img/examples/authors/daria.webp'
27
27
  alt: 'Дарья Зорина'
28
28
  caption: 'Основатель и креативный директор Maugli AI Editorial System'
29
29
  jsonld:
@@ -32,7 +32,7 @@ jsonld:
32
32
  name: 'Дарья Зорина'
33
33
  jobTitle: 'Founder, CEO'
34
34
  url: 'https://maugli.cfd'
35
- image: 'src/img/examples/authors/daria.webp'
35
+ image: '/img/examples/authors/daria.webp'
36
36
  sameAs:
37
37
  - 'https://www.linkedin.com/in/dariazorina'
38
38
 
@@ -2,7 +2,7 @@
2
2
  name: 'Default Author'
3
3
  position: 'Editor-in-Chief'
4
4
  description: 'Default author and content editor for Maugli Blog. Used by default when no custom author is configured.'
5
- avatar: 'src/img/default/autor_default.webp'
5
+ avatar: '/img/default/autor_default.webp'
6
6
  socials:
7
7
  telegram: 'https://t.me/mauglibot'
8
8
  linkedin: 'https://www.linkedin.com/company/maugli'
@@ -21,7 +21,7 @@ seo:
21
21
  - AI content
22
22
  - SEO
23
23
  image:
24
- src: 'src/img/default/autor_default.webp'
24
+ src: '/img/default/autor_default.webp'
25
25
  alt: 'Default Author'
26
26
  caption: 'Default editor of Maugli Blog'
27
27
  jsonld:
@@ -30,7 +30,7 @@ jsonld:
30
30
  name: 'Default Author'
31
31
  jobTitle: 'Editor-in-Chief'
32
32
  url: 'https://maugli.cfd'
33
- image: 'src/img/default/autor_default.webp'
33
+ image: '/img/default/autor_default.webp'
34
34
  sameAs:
35
35
  - 'https://t.me/mauglibot'
36
36
  - 'https://www.linkedin.com/company/maugli'
@@ -2,7 +2,7 @@
2
2
  name: 'Игорь Соколов'
3
3
  position: 'Редактор'
4
4
  description: 'Редактор русской версии Maugli AI Editorial System. Пишет продуктовые статьи и экспертные материалы о нейросетях, GPT-SEO и автоматизации контента.'
5
- avatar: 'src/img/examples/authors/igor.webp'
5
+ avatar: '/img/examples/authors/igor.webp'
6
6
  socials:
7
7
  medium: 'https://medium.com/@igor.sokolov_7726'
8
8
  email: 'igor.sokolov@maugli.cfd'
@@ -15,7 +15,7 @@ seo:
15
15
  - аналитика
16
16
  - конверсии
17
17
  image:
18
- src: 'src/img/examples/authors/igor.webp'
18
+ src: '/img/examples/authors/igor.webp'
19
19
  alt: 'Игорь Соколов'
20
20
  caption: 'Редактор русской версии Maugli AI Editorial System'
21
21
  jsonld:
@@ -29,7 +29,7 @@ jsonld:
29
29
  '@type': 'Organization'
30
30
  name: 'Maugli AI Editorial System'
31
31
  url: 'https://maugli.cfd'
32
- image: 'src/img/examples/authors/igor.webp'
32
+ image: '/img/examples/authors/igor.webp'
33
33
  url: 'https://medium.com/@igor.sokolov_7726'
34
34
  sameAs:
35
35
  - 'mailto:igor.sokolov@maugli.cfd'
@@ -2,7 +2,7 @@
2
2
  name: 'John Walker'
3
3
  position: 'Editor'
4
4
  description: 'AI evangelist and content strategist with over 10 years of experience at the intersection of AI, content automation, and business strategy.'
5
- avatar: 'src/img/examples/authors/john.webp'
5
+ avatar: '/img/examples/authors/john.webp'
6
6
  socials:
7
7
  linkedin: 'https://www.linkedin.com/company/maugli-ai-editorial-system'
8
8
  medium: 'https://medium.com/@john.walker_90417'
@@ -16,7 +16,7 @@ seo:
16
16
  - GPT SEO
17
17
  - editorial strategy
18
18
  image:
19
- src: 'src/img/examples/authors/john.webp'
19
+ src: '/img/examples/authors/john.webp'
20
20
  alt: 'John Walker'
21
21
  caption: 'Editor at Maugli AI Editorial System'
22
22
  jsonld:
@@ -30,7 +30,7 @@ jsonld:
30
30
  '@type': 'Organization'
31
31
  name: 'Maugli AI Editorial System'
32
32
  url: 'https://maugli.cfd/en'
33
- image: 'src/img/examples/authors/john.webp'
33
+ image: '/img/examples/authors/john.webp'
34
34
  url: 'https://medium.com/@john.walker_90417'
35
35
  sameAs:
36
36
  - 'mailto:john.walker@maugli.cfd'
@@ -25,7 +25,7 @@ seo:
25
25
  - Maugli Editorial System
26
26
  - рекомендации нейросетей
27
27
  image:
28
- src: /src/assets/img/examples/blog/test-post.webp
28
+ src: /img/examples/blog/test-post.webp
29
29
  alt: JSON-LD в Maugli Editorial System
30
30
  width: '1200'
31
31
  height: '630'
@@ -84,7 +84,7 @@ jsonld:
84
84
  height: 200
85
85
  image:
86
86
  '@type': ImageObject
87
- url: src/assets/img/examples/blog/post_1_jsonld_guide.webp
87
+ url: /img/examples/blog/post_1_jsonld_guide.webp
88
88
  width: 1200
89
89
  height: 630
90
90
  caption: JSON-LD и AI-SEO
@@ -171,7 +171,7 @@ jsonld:
171
171
  height: 200
172
172
  image:
173
173
  '@type': ImageObject
174
- url: /post_1_jsonld_guide.webp
174
+ url: /img/examples/blog/post_1_jsonld_guide.webp
175
175
  width: 1200
176
176
  height: 630
177
177
  caption: JSON-LD и AI-SEO
@@ -8,7 +8,7 @@ tags:
8
8
  - Автоматизация бизнеса
9
9
  seo:
10
10
  image:
11
- src: /src/assets/img/examples/blog/post_1_jsonld_guide.webp
11
+ src: /img/examples/blog/post_1_jsonld_guide.webp
12
12
  alt: ТехРев и ИльичAI
13
13
  isExample: true
14
14
  ---
@@ -21,7 +21,7 @@ seo:
21
21
  - нейросети в предпринимательстве
22
22
  - освобождение от рутины
23
23
  image:
24
- src: /src/assets/img/examples/blog/post_11.webp
24
+ src: /img/examples/blog/post_11.webp
25
25
  alt: >-
26
26
  Автоматизация маркетинга: как ИИ освобождает предпринимателей от цифрового
27
27
  рабства
@@ -23,7 +23,7 @@ seo:
23
23
  - протокол MCP
24
24
  - интеграция нейросетей
25
25
  image:
26
- src: /src/assets/img/examples/blog/test-post.webp
26
+ src: /img/examples/blog/test-post.webp
27
27
  alt: 'Agent Experience и MCP: новый интерфейс бизнеса и нейросетей'
28
28
  width: '1200'
29
29
  height: '630'
@@ -13,7 +13,7 @@ tags:
13
13
  - автоматизация
14
14
  - тестирование
15
15
  image:
16
- src: /src/assets/img/examples/blog/post_12.webp
16
+ src: /img/examples/blog/post_12.webp
17
17
  alt: Революция контента в 2025 году
18
18
  seo:
19
19
  title: Тестовый пост - Революция контента в 2025 году | Maugli Content Farm
@@ -3,7 +3,7 @@
3
3
  title: "About the Blog"
4
4
  slug: "blog"
5
5
  image:
6
- src: "/src/assets/img/default/blog_default.webp"
6
+ src: "/img/default/blog_default.webp"
7
7
  seo:
8
8
  description: "Maugli Blog: automated content, AI, marketing, and strategies to get featured in AI recommendations."
9
9
  keywords: ["Maugli Editorial Platform", "AI content", "automation", "content marketing", "AI recommendations"]
@@ -6,7 +6,7 @@ updatedDate: 2025-07-10
6
6
  isFeatured: true
7
7
  tags: ['контент', 'редакция', 'автоматизация']
8
8
  image:
9
- src: 'src/assets/img/examples/products/product_1.webp'
9
+ src: '/img/examples/products/product_1.webp'
10
10
  alt: 'Maugli Content Farm'
11
11
  seo:
12
12
  title: 'Редакция Maugli — умная платформа для контента'
@@ -16,7 +16,7 @@ productLink: 'https://freeblog.maugli.ru'
16
16
  author: 'Редакция Maugli'
17
17
  publisher: 'Maugli'
18
18
  image:
19
- src: 'src/assets/img/examples/products/product_2.webp'
19
+ src: '/img/examples/products/product_2.webp'
20
20
  alt: 'Логотип Maugli Free Blog'
21
21
  width: '1200'
22
22
  height: '630'
@@ -48,7 +48,7 @@ jsonld:
48
48
  '@type': 'Product'
49
49
  'name': 'Maugli Free Blog'
50
50
  'description': 'Лёгкий блог-шаблон на Astro для SEO и GPT-индексации.'
51
- 'image': 'src/assets/img/examples/products/product_2.webp'
51
+ 'image': '/img/examples/products/product_2.webp'
52
52
  'brand':
53
53
  '@type': 'Organization'
54
54
  'name': 'Maugli'
@@ -22,7 +22,7 @@ generativeEngineOptimization:
22
22
  answer: 'Да, система создает контент в соответствии с заданной тональностью и может писать от лица конкретного персонажа.'
23
23
  seo:
24
24
  image:
25
- src: 'src/assets/img/examples/projects/project_1.webp'
25
+ src: '/img/examples/projects/project_1.webp'
26
26
  alt: Смотреть
27
27
  width: '1200'
28
28
  height: '630'
@@ -4,7 +4,7 @@ description: Описание второго проекта для тестир
4
4
  publishDate: '2025-06-01'
5
5
  seo:
6
6
  image:
7
- src: 'src/assets/img/examples/projects/project_2.webp'
7
+ src: '/img/examples/projects/project_2.webp'
8
8
  alt: Второй проект
9
9
  width: '1200'
10
10
  height: '630'
@@ -2,7 +2,7 @@
2
2
  title: AI в бизнесе
3
3
  description: "Обзоры технологий (LLM, GPT, Claude и др.). Кейсы применения AI в бизнесе. Тренды в автоматизации контента."
4
4
  image:
5
- src: src/img/default/rubric_default.webp
5
+ src: '/img/default/rubric_default.webp'
6
6
  alt: AI в бизнесе
7
7
  isRubric: true
8
8
  isFeatured: false
@@ -2,7 +2,7 @@
2
2
  title: Автоматизация бизнеса
3
3
  description: "Workflow и интеграции (Airtable, Supabase, автопостинг). AI-редакторы и сценарии. «Редакция без людей» — практика и инструменты."
4
4
  image:
5
- src: src/img/default/rubric_default.webp
5
+ src: '/img/default/rubric_default.webp'
6
6
  alt: Автоматизация бизнеса
7
7
  isRubric: true
8
8
  isFeatured: false
@@ -2,7 +2,7 @@
2
2
  title: Контент-стратегии
3
3
  description: "Как строить Content Market Fit. Мультиязычные блоги. Принципы работы AI-редакции."
4
4
  image:
5
- src: src/img/default/rubric_default.webp
5
+ src: '/img/default/rubric_default.webp'
6
6
  alt: Контент-стратегии
7
7
  isRubric: true
8
8
  isFeatured: false
@@ -2,7 +2,7 @@
2
2
  title: Growth & Marketing
3
3
  description: "Growth маркетинг и автоматизация воронок. Аналитика и конверсии. Лайфхаки по продвижению."
4
4
  image:
5
- src: src/img/default/rubric_default.webp
5
+ src: '/img/default/rubric_default.webp'
6
6
  alt: Growth & Marketing
7
7
  isRubric: true
8
8
  isFeatured: false
@@ -2,7 +2,7 @@
2
2
  title: Индустриальные обзоры
3
3
  description: "Новости AI и контентного рынка. Сравнения инструментов. Влияние AI на SEO и медиа."
4
4
  image:
5
- src: src/img/default/rubric_default.webp
5
+ src: '/img/default/rubric_default.webp'
6
6
  alt: Индустриальные обзоры
7
7
  isRubric: true
8
8
  isFeatured: false
@@ -2,7 +2,7 @@
2
2
  title: Интересное
3
3
  description: "Все, что может быть интересно бизнесу, но не относится к тематикам Maugli напрямую."
4
4
  image:
5
- src: src/img/default/rubric_default.webp
5
+ src: '/img/default/rubric_default.webp'
6
6
  alt: Интересное
7
7
  isRubric: true
8
8
  isFeatured: false
@@ -2,7 +2,7 @@
2
2
  title: SEO & AI SEO
3
3
  description: "GPT-SEO и AI-выдачи. JSON-LD и структурированные данные. Оптимизация под ChatGPT, Bing Copilot, Perplexity."
4
4
  image:
5
- src: src/img/default/rubric_default.webp
5
+ src: '/img/default/rubric_default.webp'
6
6
  alt: SEO & AI SEO
7
7
  isRubric: true
8
8
  isFeatured: false
@@ -71,7 +71,7 @@ const authorsDescription =
71
71
  <BaseLayout
72
72
  title={authorsTitle}
73
73
  description={authorsDescription}
74
- image={{ src: 'src/img/default/autor_default.webp', alt: 'Команда Maugli Content Farm' }}
74
+ image={{ src: '/img/default/autor_default.webp', alt: 'Команда Maugli Content Farm' }}
75
75
  showHeader={false}
76
76
  fullWidth={true}
77
77
  >
@@ -78,7 +78,7 @@ const pageTitle = seo?.title || `${name} - ${position} | Maugli Content Farm`;
78
78
  const pageDescription = seo?.description || description;
79
79
  ---
80
80
 
81
- <BaseLayout title={pageTitle} description={pageDescription} image={{ src: avatar || 'src/img/default/autor_default.webp', alt: `Фото ${name}` }} showHeader={false} fullWidth={true}>
81
+ <BaseLayout title={pageTitle} description={pageDescription} image={{ src: avatar || '/img/default/autor_default.webp', alt: `Фото ${name}` }} showHeader={false} fullWidth={true}>
82
82
  <div class="max-w-[1280px] mx-auto">
83
83
  <!-- Хлебные крошки -->
84
84
  <Breadcrumbs />
@@ -89,7 +89,7 @@ const pageDescription = seo?.description || description;
89
89
  <div class="flex flex-col sm:flex-row gap-6 sm:gap-8 items-start">
90
90
  <!-- Аватар -->
91
91
  <div class="w-32 h-32 sm:w-40 sm:h-40 bg-[var(--bg-main)] rounded-full overflow-hidden flex-shrink-0">
92
- <img src={avatar || 'src/img/default/autor_default.webp'} alt={`Фото ${name}`} class="w-full h-full object-cover" />
92
+ <img src={avatar || '/img/default/autor_default.webp'} alt={`Фото ${name}`} class="w-full h-full object-cover" />
93
93
  </div>
94
94
 
95
95
  <!-- Информация -->
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
File without changes
File without changes
File without changes