браузерная песочница для React

Вайбим

Cloud.ru onlySandpack preview

Код и превью

Стартовый экран для сервиса записи в барбершоп с русской локализацией.

4 файлов4 пакетов
const slots = [
  { time: "10:30", master: "Илья", service: "Стрижка и борода" },
  { time: "13:10", master: "Марат", service: "Классическая стрижка" },
  { time: "18:40", master: "Роман", service: "Тонирование" }
];

export default function App() {
  return (
    <main className="shell">
      <section className="hero">
        <p className="eyebrow">Барбершоп рядом с метро</p>
        <h1>Запись без звонков за тридцать секунд</h1>
        <p className="lead">
          Клиенты видят свободные окна, выбирают мастера и получают подтверждение сразу в браузере.
        </p>
        <button>Записаться</button>
      </section>
      <section className="panel">
        <h2>Сегодня</h2>
        {slots.map((slot) => (
          <article key={slot.time} className="slot">
            <strong>{slot.time}</strong>
            <span>{slot.master}</span>
            <small>{slot.service}</small>
          </article>
        ))}
      </section>
    </main>
  );
}

Этапы сборки

Разбираем задачу

Выделяем цель, аудиторию и основные экраны.

Планируем файлы

Готовим структуру React-приложения для песочницы.

Проверяем пакеты

Собираем список публичных npm-зависимостей для браузерного превью.

Пишем код

Генерируем компоненты, стили и данные демо-приложения.

Запускаем песочницу

Передаем файлы и зависимости в CodeSandbox Sandpack.

Превью готово

Можно смотреть результат, править код и отправлять уточнения.

Зависимости превью

Sandpack загружает их внутри браузерной песочницы.

@vitejs/plugin-reactlatest
vitelatest
reactlatest
react-domlatest