import React, { useState } from 'react';
const ArchekodSite = () => {
const [showTest, setShowTest] = useState(false);
const [currentQuestion, setCurrentQuestion] = useState(0);
const [answers, setAnswers] = useState([]);
const [result, setResult] = useState(null);
const [showFullDescription, setShowFullDescription] = useState(false);
const questions = [
{
question: "Какая цветовая гамма вас больше привлекает?",
options: [
{ text: "Черный, белый, серый - классические оттенки", type: "minimalist" },
{ text: "Яркие, сочные цвета - красный, оранжевый, фуксия", type: "dramatic" },
{ text: "Пастельные, нежные тона - розовый, бежевый, лавандовый", type: "romantic" },
{ text: "Элегантные, глубокие цвета - темно-синий, изумрудный, бордовый", type: "classic" },
{ text: "Неоновые, футуристические - электрик, лайм, космические оттенки", type: "artist" }
]
},
{
question: "Как вы предпочитаете организовывать пространство?",
options: [
{ text: "Минимум предметов, максимум свободного места", type: "minimalist" },
{ text: "Яркие акценты, которые сразу бросаются в глаза", type: "dramatic" },
{ text: "Уютно и мягко, много текстур и декора", type: "romantic" },
{ text: "Все на своих местах, качественные классические вещи", type: "classic" },
{ text: "Креативный хаос, необычные предметы и эксперименты", type: "artist" }
]
},
{
question: "Какой стиль одежды вам ближе?",
options: [
{ text: "Простые линии, базовые цвета, качественные ткани", type: "minimalist" },
{ text: "Яркие принты, смелые сочетания, выделяющиеся детали", type: "dramatic" },
{ text: "Женственные силуэты, мягкие ткани, романтичные детали", type: "romantic" },
{ text: "Классические фасоны, дорогие материалы, элегантность", type: "classic" },
{ text: "Авангардные формы, необычные материалы, арт-объекты", type: "artist" }
]
},
{
question: "Какое настроение должен передавать ваш визуальный контент?",
options: [
{ text: "Спокойствие, ясность, профессионализм", type: "minimalist" },
{ text: "Энергию, силу, уверенность", type: "dramatic" },
{ text: "Теплоту, нежность, вдохновение", type: "romantic" },
{ text: "Статус, качество, надежность", type: "classic" },
{ text: "Креативность, инновации, неожиданность", type: "artist" }
]
},
{
question: "Какой тип композиции вам нравится больше?",
options: [
{ text: "Симметрия, много воздуха, фокус на главном", type: "minimalist" },
{ text: "Контрастные элементы, динамичные диагонали", type: "dramatic" },
{ text: "Мягкие переходы, плавные линии, органические формы", type: "romantic" },
{ text: "Сбалансированные пропорции, проверенные правила", type: "classic" },
{ text: "Асимметрия, неожиданные ракурсы, игра с формами", type: "artist" }
]
},
{
question: "Какой образ жизни вам ближе?",
options: [
{ text: "Осознанное потребление, качество превыше количества", type: "minimalist" },
{ text: "Активная жизнь, яркие впечатления, лидерство", type: "dramatic" },
{ text: "Гармония, красота в деталях, забота о близких", type: "romantic" },
{ text: "Стабильность, традиции, проверенные ценности", type: "classic" },
{ text: "Творчество, эксперименты, поиск нового", type: "artist" }
]
}
];
const archetypes = {
minimalist: {
name: "МИНИМАЛИСТ",
emoji: "⚪️",
miniDescription: "Ты — про ясность, суть и фокус. Тебе важно не просто «красиво», а точно, чисто, без шума. Твой визуал как вдох: светлый, понятный, глубокий. Он создаёт ощущение порядка и спокойствия. Ты не распыляешься. Ты знаешь, зачем пришла — и ведёшь за собой взгляд.",
description: "Минималист — это про лаконичность, эстетику простоты и силу в молчании. Ты умеешь отсеивать всё лишнее и оставлять главное. Твоя визуальность — как архитектура: чистые линии, пространство, смысл. Ты не просто редактируешь визуал — ты упрощаешь мышление зрителя. Твоя сила — в контроле, фокусе и ощущении чистоты.",
emotions: ["Чистота", "Спокойствие", "Уверенность", "Структура", "Статус", "Свобода", "Осознанность"],
visualStyle: {
composition: "Симметрия или выверенное асимметричное равновесие, много воздуха, центрированный объект, один акцент — всё остальное подчинено ему",
color: "Белый, чёрный, серый, беж. Один цвет-акцент (можно глубокий). Монохромные палитры",
texture: "Матовые поверхности, камень, стекло, ткань с чёткой фактурой, мягкий контраст",
light: "Естественный дневной, мягкие тени, боковой или рассеянный свет"
},
midjourney: {
general: "minimalist aesthetic, white space, centered composition, soft shadows, clean design, modern editorial, architectural photography style",
light: "soft natural lighting, daylight through sheer curtains, gentle side light, diffuse shadows",
colors: "pure white, warm beige, matte black, dove gray, stone taupe"
},
imageIdeas: [
"Один предмет на белом фоне, тень строго сбоку",
"Вид сверху: кофе, книга, ткань",
"Минималистичный портрет на нейтральном фоне",
"Архитектурный силуэт на фоне неба",
"Рука в луче света на фоне стены"
],
mjTips: "Ставь одну точку фокуса и максимум воздуха вокруг. Старайся убирать детали — каждый пиксель должен быть на своём месте. Используй строгую геометрию и повтор. Делай свет частью композиции. Добавляй небольшие шумы, пыль, текстуру бумаги — чтобы не было стерильности.",
blogStyle: "Белые или однотонные фоны, одинаковая композиция постов, много свободного пространства, короткие тексты, читаемые шрифты, акцент — на форме, шрифте, структуре, ритм и повтор — главный инструмент",
mistakes: "Перестараться со стерильностью (становится безжизненно), использовать слишком много белого без ритма, боязнь использовать один яркий акцент, прятать себя за безэмоциональностью",
advice: "Минимализм — это не скучно. Это мощно. Твоя тишина звучит громко. Когда ты очищаешь пространство, зритель начинает видеть себя.",
visualCode: "clear. calm. intentional.",
colors: ["#FFFFFF", "#000000", "#F5F5F5", "#8E8E8E", "#D3D3D3"],
colorNames: ["Чистый белый", "Глубокий черный", "Светло-серый", "Графитовый", "Серебристый"],
bgStyle: "bg-gradient-to-br from-slate-400 via-gray-500 to-blue-400"
},
dramatic: {
name: "ДРАМАТИК",
emoji: "????",
miniDescription: "Ты — человек-эффект. Твоя визуальность — это не просто стиль, это заявка. Ты не хочешь быть как все, ты хочешь врезаться в память. Ты чувствуешь силу образа, власть цвета, магию резкого света. Ты можешь одним кадром сказать: «Смотри на меня. Сейчас будет что-то важное». Тебя узнают с первого взгляда. Ты вдохновляешь — и взрываешь шаблоны.",
description: "«Драматик» — это выразительность, резкость, уверенность. Это стиль, который не умоляет, а требует внимания. Он про лидерство, дерзость, энергию и напряжение. Ты не боишься быть сильной, громкой, прямой. Ты визуализируешь мощь, страсть, борьбу, контроль и красоту через контраст и форму.",
emotions: ["напряжение", "мощь", "сексуальность", "решительность", "магнетизм", "вызов", "торжество"],
visualStyle: {
composition: "Симметрия, прямые линии, жёсткие формы, взгляд прямо в камеру, контраст света и тени, чёткий фокус, минимум «шума»",
color: "Алый, чёрный, белый, огненный оранжевый, золотой, глубокий винный. Часто — тёмный фон + яркий акцент. Высокий контраст, отсутствие «припудренности»",
texture: "Металл, кожа, стекло, глянец, блестящие поверхности, чёткие грани",
light: "Жёсткий свет сбоку, сильные тени, силуэты, контровой свет, красный, золотой, белый акценты света"
},
midjourney: {
general: "high contrast, cinematic portrait, spotlight lighting, dramatic fashion, strong shadows, glossy textures, intense gaze, powerful presence, cover of fashion magazine",
light: "hard light, golden glow, spotlight from side, red backlight, dramatic high shadow, chiaroscuro",
colors: "crimson red, jet black, pure white, gold, deep burgundy, fiery orange"
},
imageIdeas: [
"Женщина в пиджаке с мокрыми волосами и тенью на стене",
"Алый шёлк, развевающийся на фоне мрамора",
"Взгляд сквозь затемнённое стекло",
"Черно-белый кадр с одной яркой деталью (например, губы или платье)",
"Портрет с блестящей кожей и золотыми аксессуарами",
"Силуэт на фоне огня или прожектора"
],
mjTips: "Строи кадр как кадр из рекламной кампании или обложки журнала. Добавляй свет, который «режет» пространство. Используй жёсткие линии и формы. Контраст — всегда твой друг: свет/тень, тепло/холод, нежность/жесткость. Не бойся драматических поз, открытых плеч, прямого взгляда.",
blogStyle: "Минимум текста — максимум эффекта, визуал как заявление: «Я пришла», обложки — крупный план, жёсткий свет, текст по центру, эффекты: zoom-in, slow motion, вспышка, динамика, цвета — чёткие, сильные, без полутонов",
mistakes: "Смягчать визуал, чтобы «не переборщить». Прятать себя за нейтральными образами. Использовать сложные фоны — они мешают эффекту. Бояться пафоса. Тебе он идёт.",
advice: "Драматик — это не про «мне нравится». Это про «я делаю ВПЕЧАТЛЕНИЕ». Твой блог и визуал должны «кричать» твоими смыслами. Не скромничай — заяви. Пусть смотрят, пусть чувствуют, пусть запоминают.",
visualCode: "bold. sharp. magnetic.",
colors: ["#FF0000", "#000000", "#FFFFFF", "#FF6B35", "#FFD700"],
colorNames: ["Алый красный", "Черный", "Белый", "Огненный оранжевый", "Золотой"],
bgStyle: "bg-gradient-to-br from-red-900 via-red-800 to-black"
},
romantic: {
name: "РОМАНТИК",
emoji: "????",
miniDescription: "Ты — душа, создающая уют через визуальные прикосновения. Твой блог — как чашка чая в тишине. Он согревает, трогает и даёт ощущение «дома». Ты создаёшь не контент, а атмосферу. Вдохновляешь жить с чувством и тонко ощущать красоту.",
description: "Романтик — это визуальный комфорт, прикосновение, душевность. Ты видишь красоту в малом: складке ткани, тёплом свете, нежном цвете. Твой стиль мягкий, органичный, глубокий — как дыхание. Это не «слащавость». Это зрелая чувственность, гармония и забота. Ты умеешь передавать любовь, мечту, утешение — и делать это эстетично.",
emotions: ["Нежность", "Тепло", "Уют", "Мечтательность", "Эстетика прикосновения", "Личное, интимное", "Вдохновение"],
visualStyle: {
composition: "Мягкие формы, текстуры: ткань, керамика, цветы, элементы будто случайны, но сбалансированы, свет и тени как часть композиции",
color: "Пастельные палитры, пыльные и припылённые оттенки, беж, розовый, лавандовый, персик, сливочный, мятный",
texture: "Ткань, шерсть, вуаль, дерево, зерно, мягкие шумы, чуть винтаж, «плёночная» неидеальность",
light: "Тёплый, мягкий, золотистый, лучи солнца сквозь занавеску, закатное сияние, свечи, бликовый расфокус"
},
midjourney: {
general: "soft pastel colors, natural light, cozy textures, warm tones, delicate mood, romantic cinematic shot, vintage lens glow, soft film grain",
light: "sunlight through window, golden hour lighting, soft haze, ambient glow, flickering candlelight",
colors: "dusty rose, creamy beige, lavender mist, peach blush, warm ivory"
},
imageIdeas: [
"Чашка чая с книгой на льняной скатерти",
"Девушка на балконе в закатном свете",
"Поля цветов, ткань развивается на ветру",
"Букет в вазе на винтажном столе",
"Улыбка сквозь запотевшее стекло"
],
mjTips: "Используй фразы, связанные с атмосферой: «уютное утро», «луч солнца на щеке», «тишина в движении». Включай предметы, которые хочется потрогать — кружки, книги, ткань. Добавляй лёгкое зерно и расфокус. Работай с кадрами, в которых «ощущение важнее сюжета». Делай визуалы как кадры из душевного фильма.",
blogStyle: "Мягкие, светлые фото, единый теплый фильтр, личность и душевность — сквозит во всём, уютные заголовки: каллиграфия, шрифты с засечками, лента — как рассказ о жизни, эмоциях, красоте повседневности",
mistakes: "Слишком «зефирный» визуал без глубины. Перегруз текстурами и деталями. Отсутствие акцентов и смыслов. Много милоты, но мало идеи.",
advice: "Ты не просто красиво оформляешь — ты лечишь визуалом. Твоя мягкость может быть сильнее громкости. Дай зрителю почувствовать, что он в безопасности и его понимают.",
visualCode: "warm. tender. poetic.",
colors: ["#F8BBD0", "#E1BEE7", "#FFCDD2", "#FFF9C4", "#E8F5E8"],
colorNames: ["Нежно-розовый", "Лавандовый", "Персиковый", "Ванильный", "Мятный"],
bgStyle: "bg-gradient-to-br from-pink-500 via-rose-500 to-orange-500"
},
classic: {
name: "КЛАССИК",
emoji: "????",
miniDescription: "Ты — про основу, структуру и качество. Твой стиль говорит: «Я знаю, кто я. И что стоит за мной». Ты создаёшь визуал, который вызывает доверие, респект и уважение. Ты не нуждаешься в лишнем. Ты говоришь стилем, в котором всё точно.",
description: "Классик — это фундамент, стиль вне времени. Ты ценишь традиции, симметрию, сдержанность и эстетику уверенности. Всё, что ты создаёшь, транслирует надежность, авторитет и вкус. Твой визуал говорит: «Это работает. Это проверено. Это красиво».",
emotions: ["Статус", "Стабильность", "Глубина", "Доверие", "Уверенность", "Качество", "Точность"],
visualStyle: {
composition: "Симметрия, чёткие линии и пропорции, умеренные визуальные акценты, много структуры и логики в построении",
color: "Глубокие оттенки: бордо, тёмно-синий, изумруд, нейтральные цвета: слоновая кость, серый, тёмный беж, палитры, которые ассоциируются с премиум-брендами",
texture: "Кожа, дерево, мрамор, дорогая ткань, матовые или слегка глянцевые поверхности, лаконичные фоновые элементы",
light: "Чистый и уверенный свет, контровой или фронтальный, подчёркивающий форму, без резких контрастов, но с глубиной"
},
midjourney: {
general: "classic editorial photography, premium design, deep shadows, muted tones, elegant framing, refined composition, luxury aesthetic",
light: "soft spotlight, classic film lighting, golden tone, controlled shadows, clean studio light",
colors: "navy blue, emerald green, ivory, wine red, charcoal gray"
},
imageIdeas: [
"Портрет в классическом костюме на тёмном фоне",
"Интерьер с колоннами и симметрией",
"Бюст в мягком боковом свете",
"Книга, перо, часы, винтажный стол",
"Силуэт в вечернем освещении"
],
mjTips: "Подбирай свет так, чтобы подчёркивал форму, структуру. Используй предметы, которые транслируют статус (дерево, кожа, золото, атлас). Работай с классическими позами, пропорциями. Уходи от трендов — работай с тем, что переживает время. Визуал должен «дышать достоинством», а не пестрить.",
blogStyle: "Чёткая сетка, элегантная типографика (с засечками или классическим гротом), цветовая палитра — глубокая, нейтральная, чёткие заголовки, премиум-атмосфера, подписи и шрифты как в журнале: стильные, деловые, структурированный и предсказуемый, но не скучный ритм",
mistakes: "Чрезмерная строгость — теряется тепло. Отсутствие живых деталей. Слишком много «правильного» без харизмы. Желание быть идеальным вместо интересного.",
advice: "Ты не следуешь моде — ты её переживаешь. Твоя миссия — показать, как выглядят фундамент и стиль. Не бойся добавить тёплой эмоции в выверенную картинку. Стабильность — это тоже эстетика.",
visualCode: "deep. refined. timeless.",
colors: ["#1A365D", "#2D5A27", "#8B4513", "#800020", "#2F4F4F"],
colorNames: ["Темно-синий", "Изумрудный", "Шоколадный", "Бордовый", "Серо-зеленый"],
bgStyle: "bg-gradient-to-br from-slate-800 via-slate-700 to-blue-900"
},
artist: {
name: "АРТИСТ",
emoji: "????",
miniDescription: "Ты — визуальный экспериментатор и ищущий новатор. Тебе важно не просто «нравится — не нравится», а чтобы в образе был вызов, идея, неожиданный поворот. Твой блог — это арт-перформанс. Он цепляет, интригует и разрушает шаблоны. Ты не просто создаёшь визуал — ты ставишь зрителя перед вопросом: «Что это?» и «Почему это так красиво и странно одновременно?»",
description: "«Артист» — это про игру, экспрессию, внутреннюю свободу и визуальный бунт. Ты не подстраиваешься — ты создаёшь новое. Твоя эстетика может быть абстрактной, парадоксальной, сюрреалистичной — но всегда заряженной смыслом и эмоцией. Ты не боишься сломать шаблон, ошибиться, показать уязвимость или странность. В этом твоя сила.",
emotions: ["восторг", "изумление", "лёгкий дискомфорт", "ощущение магии", "интрига", "вау-эффект", "что это было?!"],
visualStyle: {
composition: "асимметрия, необычные ракурсы, элементы вне фокуса, кадры с обрезанными деталями (часть лица, половина предмета), калейдоскопичность, отражения, накладки, двойные экспозиции",
color: "кислотные и неоновые оттенки, неожиданные сочетания: лайм + лавандовый, янтарный + кобальт, перетекающие переливы, глитч-градиенты",
texture: "глитч, царапины, цифровой шум, гранж, плёнка, сжатые изображения, текстуры, будто изображение сломано или рассыпается",
light: "резкие вспышки, контровой с туманом, направленный цветной свет: cyan, фиолетовый, лимонный, «грязный свет» — как через старое стекло"
},
midjourney: {
general: "cinematic shot, surreal composition, glitch effect, grainy texture, asymmetric framing, abstract shapes, dramatic neon light, vibrant color contrast, art magazine cover style, futuristic surrealism, inspired by Bauhaus + vaporwave",
light: "dramatic colored lighting, spotlight effect, cinematic neon glow, moody backlight, sharp shadow play, prism reflections",
colors: "neon pink, electric blue, cyber lime, holographic purple, vibrant cyan, orange glitch"
},
imageIdeas: [
"Лицо, распадающееся на геометрические фрагменты",
"Человек с зеркалом вместо лица",
"Трон из проводов и света",
"Капля воды, зависшая в воздухе в цветном тумане",
"Силуэт, «глюкнувший» на фоне кислотного неба",
"Девушка в балетной пачке в постапокалиптической пустыне",
"Коллаж эмоций в одном лице"
],
mjTips: "Метафоры: «перепрошивка сознания», «ожидание невозможного», «восторг от странности». Миксы стилей: киберпанк + бохо, ретро + glitch. Контрасты: плавность и резкость, чёткость и распад. Элементы ошибок: баги, цифровые сломы, «неправильные» формы. Двойные эмоции: радость + тревожность, красота + искажение.",
blogStyle: "Формат Reels и постов — как кино: рваные кадры, перемотка, zoom, split screen, неочевидные обложки: засвеченные, глитч, символические предметы, коллажи, искажения, фрагменты фото + видео, тексты — как визуальная поэзия: с намёками, пустотами, смыслами между строк, музыка: замедленная, шумы, полусонные голоса, неоновые звуки",
mistakes: "Стараться быть «нормальной». Брать тренды, которые не вызывают чувств. Упрощать визуал ради понятности. Пытаться «понравиться всем».",
advice: "Будь резкой, странной, непонятной, дерзкой. Твоя гениальность — в эффекте «Что это было?.. Я хочу ещё.» Ты не продукт — ты процесс. Не маскируй свою уникальность под шаблон — усили её.",
visualCode: "experimental. bold. surreal.",
colors: ["#9C27B0", "#00BCD4", "#CDDC39", "#FF5722", "#FFC107"],
colorNames: ["Фиолетовый", "Циан", "Лайм", "Оранжевый", "Янтарный"],
bgStyle: "bg-gradient-to-br from-purple-900 via-purple-800 to-cyan-800"
}
};
const handleAnswer = (option) => {
const newAnswers = [...answers, option.type];
setAnswers(newAnswers);
if (currentQuestion < questions.length - 1) {
setCurrentQuestion(currentQuestion + 1);
} else {
calculateResult(newAnswers);
}
};
const calculateResult = (allAnswers) => {
const counts = {};
allAnswers.forEach(answer => {
counts[answer] = (counts[answer] || 0) + 1;
});
const dominantType = Object.keys(counts).reduce((a, b) =>
counts[a] > counts[b] ? a : b
);
setResult(archetypes[dominantType]);
};
const resetTest = () => {
setShowTest(false);
setCurrentQuestion(0);
setAnswers([]);
setResult(null);
setShowFullDescription(false);
};
const formatText = (text) => {
if (!text) return '';
return text.replace(/\*\*(.*?)\*\*/g, '$1');
};
// РЕЗУЛЬТАТ ТЕСТА
if (result) {
return (
Примерь свой архетип на практике! Присоединяйся к бесплатному Telegram-челленджу:
создавай визуалы в своем стиле, получи готовые промпты и собери первую визуальную серию.
{/* ПАЛИТРА НА БЕЛОМ ФОНЕ */}
???? Ваша цветовая палитра
{result.colors.map((color, index) => (
{result.colorNames[index]}
{color}
))}
???? Используйте эти цвета в промптах для создания контента в вашем стиле
{/* ДИСКЛЕЙМЕР */}
⚖️ Результаты теста носят рекомендательный характер и предназначены для вдохновения в создании визуального контента. Вы можете использовать данные советы по своему усмотрению.
)}
);
}
// СТРАНИЦА ТЕСТА
if (showTest) {
return (
Тест на архетип
Определите свой визуальный стиль
Вопрос {currentQuestion + 1} из {questions.length}