Налаштування та кастомізація теми Docusaurus

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Пропоновані послуги
Показано 1 з 1 послугУсі 2065 послуг
Налаштування та кастомізація теми Docusaurus
Проста
від 1 робочого дня до 3 робочих днів
Часті питання

Наші компетенції:

Етапи розробки
Останні роботи
  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    874
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851

Налаштування та кастомізація теми Docusaurus

Docusaurus надає механізм swizzling — переопределення вбудованих компонентів. Можна змінити будь-який елемент: навігацію, footer, карточки документів, кольори.

CSS-змінні для кольорової схеми

/* src/css/custom.css */
:root {
  --ifm-color-primary: #2563eb;
  --ifm-color-primary-dark: #1d4ed8;
  --ifm-color-primary-darker: #1e40af;
  --ifm-color-primary-darkest: #1e3a8a;
  --ifm-color-primary-light: #3b82f6;
  --ifm-color-primary-lighter: #60a5fa;
  --ifm-color-primary-lightest: #93c5fd;
  --ifm-code-font-size: 90%;
  --docusaurus-highlighted-code-line-bg: rgba(0, 0, 255, 0.1);
}

[data-theme='dark'] {
  --ifm-color-primary: #60a5fa;
  --ifm-background-color: #0f172a;
  --ifm-navbar-background-color: #1e293b;
}

Swizzle: кастомний Footer

npm run swizzle @docusaurus/theme-classic Footer -- --eject --typescript
# Створює src/theme/Footer/index.tsx
// src/theme/Footer/index.tsx
import React from 'react';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';

export default function Footer(): JSX.Element {
  const { siteConfig } = useDocusaurusContext();
  return (
    <footer className="footer">
      <div className="container">
        <div className="footer__links">
          <a href="https://github.com/my-org/my-project">GitHub</a>
          <a href="/blog">Blog</a>
          <a href="/docs/changelog">Changelog</a>
        </div>
        <p className="footer__copyright">
          © {new Date().getFullYear()} {siteConfig.title}
        </p>
      </div>
    </footer>
  );
}

Swizzle: кастомна домашня сторінка

# Wrap (безпечніше ніж eject)
npm run swizzle @docusaurus/theme-classic DocCard -- --wrap

Кастомна домашня сторінка

// src/pages/index.tsx
import React from 'react';
import Layout from '@theme/Layout';
import Link from '@docusaurus/Link';

export default function Home(): JSX.Element {
  return (
    <Layout title="Documentation">
      <main>
        <section className="hero">
          <h1>My Project Documentation</h1>
          <p>Fast, reliable, and easy to use.</p>
          <div>
            <Link className="button button--primary button--lg" to="/docs/intro">
              Get Started →
            </Link>
            <Link className="button button--secondary button--lg" to="/docs/api">
              API Reference
            </Link>
          </div>
        </section>
      </main>
    </Layout>
  );
}

Прагми у Markdown

<!-- Приховати сторінку з sidebar, але залишити по URL -->
---
hide_table_of_contents: true
hide_title: false
pagination_prev: null
pagination_next: null
---

<!-- Підсвічування рядків у коді -->
```js
function hello() {
  // highlight-next-line
  console.log('highlighted');
  // highlight-start
  const x = 1;
  const y = 2;
  // highlight-end
}

Кастомізація теми з переопределенням 3–5 компонентів та кастомною домашною сторінкою — 2–4 дні.