Docusaurus рдореЗрдВ Asyntai AI рдЪреИрдЯрдмреЙрдЯ рдХреИрд╕реЗ рдЬреЛрдбрд╝реЗрдВ
Docusaurus рдкреНрд░рд▓реЗрдЦрди рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдЪрд░рдг-рджрд░-рдЪрд░рдг рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛
рдЪрд░рдг 1: рдЕрдкрдирд╛ рдПрдореНрдмреЗрдб рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЕрдкрдиреЗ Asyntai рдбреИрд╢рдмреЛрд░реНрдб рдкрд░ рдЬрд╛рдПрдБ рдФрд░ рдиреАрдЪреЗ "Embed Code" рдЕрдиреБрднрд╛рдЧ рддрдХ рд╕реНрдХреНрд░реЙрд▓ рдХрд░реЗрдВред рдЕрдкрдирд╛ рдпреВрдирд┐рдХ рдПрдореНрдмреЗрдб рдХреЛрдб рдХреЙрдкреА рдХрд░реЗрдВ, рдЬреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:
<script>(function(){var l=function(){var s=document.createElement("script");s.src="https://widget.asyntai.com/static/js/chat-widget.js";s.async=true;s.setAttribute("data-asyntai-id","YOUR_WIDGET_ID");document.head.appendChild(s)};if(document.readyState==="complete"){l()}else{window.addEventListener("load",l)}})();</script>
рдиреЛрдЯ: рдКрдкрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдХреЛрдб рдХреЗрд╡рд▓ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИред рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдбреИрд╢рдмреЛрд░реНрдб рд╕реЗ рдЕрдкрдирд╛ рдЕрджреНрд╡рд┐рддреАрдп рдПрдореНрдмреЗрдб рдХреЛрдб рдХреЙрдкреА рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рдЖрдкрдХреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд┐рдЬреЗрдЯ ID рд╣реЛрддреА рд╣реИред
рдЪрд░рдг 2: docusaurus.config.js рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛрдбрд╝реЗрдВ (рдЕрдиреБрд╢рдВрд╕рд┐рдд)
рдЕрдкрдиреА Docusaurus рд╕рд╛рдЗрдЯ рдХреЗ рд╕рднреА рдкреГрд╖реНрдареЛрдВ рдкрд░ рдЪреИрдЯрдмреЙрдЯ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣реИ:
- рдЕрдкрдиреЗ рдХреЛрдб рдПрдбрд┐рдЯрд░ рдореЗрдВ рдЕрдкрдирд╛ Docusaurus рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЦреЛрд▓реЗрдВ
- рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реВрдЯ рдореЗрдВ docusaurus.config.js рдлрд╝рд╛рдЗрд▓ рдЦреЛрдЬреЗрдВ рдФрд░ рдЦреЛрд▓реЗрдВ
- const config = { } рдСрдмреНрдЬреЗрдХреНрдЯ рдЦреЛрдЬреЗрдВ
- рдЕрдкрдиреЗ Asyntai рд╡рд┐рдЬреЗрдЯ рдХреЗ рд╕рд╛рде scripts рдлрд╝реАрд▓реНрдб рдЬреЛрдбрд╝реЗрдВ рдпрд╛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ:
const config = {
// ... other config options
scripts: [
// Other scripts if any
{
src: 'https://asyntai.com/static/js/chat-widget.js',
'data-asyntai-id': 'YOUR_WIDGET_ID',
async: true,
},
],
// ... rest of config
};
- docusaurus.config.js рдлрд╝рд╛рдЗрд▓ рд╕рд╣реЗрдЬреЗрдВ
- npm run build рдпрд╛ yarn build рдЪрд▓рд╛рдХрд░ рдЕрдкрдиреА рд╕рд╛рдЗрдЯ рдкреБрдирдГ рдмрдирд╛рдПрдБ
- рдпрджрд┐ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдЪрд▓рд╛ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рд╕рд░реНрд╡рд░ рдкреБрдирдГ рд╢реБрд░реВ рдХрд░реЗрдВ
рд╕реБрдЭрд╛рд╡: scripts рдлрд╝реАрд▓реНрдб JavaScript рд╕реНрд░реЛрддреЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреА рд╣реИред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреИрдЧ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╣рд░ рдкреГрд╖реНрда рдХреЗ HTML рд╣реЗрдб рдореЗрдВ рдбрд╛рд▓рд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ Docusaurus рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕рд╛рдл рдФрд░ рд╕рдмрд╕реЗ рд░рдЦрд░рдЦрд╛рд╡ рдпреЛрдЧреНрдп рд╡рд┐рдзрд┐ рд╣реИред
рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд┐рдзрд┐ 1: рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рд╛рд░реВрдк (рд╕рд░рд▓ рд╕рд┐рдВрдЯреИрдХреНрд╕)
рдпрджрд┐ рдЖрдк рд╕рд░рд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк scripts рд╕рд░рдгреА рдореЗрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
const config = {
scripts: [
'https://asyntai.com/static/js/chat-widget.js',
],
};
рдиреЛрдЯ: рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ URL рдХреЛ рдЕрдкрдиреА рд╡рд┐рдЬреЗрдЯ ID рдХреЛ рдХреНрд╡реЗрд░реА рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдпрд╛ рдЪрд░рдг 2 рдореЗрдВ рджрд┐рдЦрд╛рдП рдЧрдП рдСрдмреНрдЬреЗрдХреНрдЯ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдЬреЛ рдЖрдкрдХреЛ рд╕реАрдзреЗ data-asyntai-id рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд┐рдзрд┐ 2: рдХрд╕реНрдЯрдо рд╣реЗрдб рдЯреИрдЧ
рдЖрдк docusaurus.config.js рдореЗрдВ headTags рдлрд╝реАрд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ:
const config = {
headTags: [
{
tagName: 'script',
attributes: {
src: 'https://asyntai.com/static/js/chat-widget.js',
'data-asyntai-id': 'YOUR_WIDGET_ID',
async: true,
},
},
],
};
рд╕реБрдЭрд╛рд╡: headTags рдлрд╝реАрд▓реНрдб <head> рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдбрд╛рд▓реЗ рдЧрдП рд╕рдЯреАрдХ HTML рдЯреИрдЧ рдкрд░ рдЕрдзрд┐рдХ рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред рдпрд╣ рд╡рд┐рдзрд┐ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд░реВрдк рд╕реЗ scripts рдлрд╝реАрд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд╕рдордХрдХреНрд╖ рд╣реИред
рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд┐рдзрд┐ 3: рдХрд╕реНрдЯрдо HTML рдЯреЗрдореНрдкрд▓реЗрдЯ (рдЙрдиреНрдирдд)
рдЙрдиреНрдирдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдиреНрд╣реЗрдВ HTML рдЯреЗрдореНрдкрд▓реЗрдЯ рдкрд░ рдкреВрд░реНрдг рдирд┐рдпрдВрддреНрд░рдг рдЪрд╛рд╣рд┐рдП:
- рдПрдХ рдирдИ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдмрдирд╛рдПрдБ: src/theme (рдпрджрд┐ рдпрд╣ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ)
- рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ: src/theme/Root.js
- рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдЬреЛрдбрд╝реЗрдВ:
import React, { useEffect } from 'react';
export default function Root({children}) {
useEffect(() => {
const script = document.createElement('script');
script.src = 'https://asyntai.com/static/js/chat-widget.js';
script.setAttribute('data-asyntai-id', 'YOUR_WIDGET_ID');
script.async = true;
document.head.appendChild(script);
return () => {
// Cleanup when component unmounts
document.head.removeChild(script);
};
}, []);
return <>{children}</>;
}
- рдлрд╝рд╛рдЗрд▓ рд╕рд╣реЗрдЬреЗрдВ рдФрд░ рдЕрдкрдиреА рд╕рд╛рдЗрдЯ рдкреБрдирдГ рдмрдирд╛рдПрдБ
рдорд╣рддреНрд╡рдкреВрд░реНрдг: Root.js рдХрдВрдкреЛрдиреЗрдВрдЯ рдЖрдкрдХреЗ рдкреВрд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд░реИрдк рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЙрдиреНрдирдд рд╡рд┐рдзрд┐ рдХреЗрд╡рд▓ рддрднреА рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдП рдЬрдм рдЖрдкрдХреЛ рдХрд╕реНрдЯрдо JavaScript рд▓реЙрдЬрд┐рдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рдпрд╛ рдРрд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ рд╣реЛрдВ рдЬреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдкреВрд░реА рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреАрдВред
рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд┐рдзрд┐ 4: рдлреБрдЯрд░ рдХрдВрдкреЛрдиреЗрдВрдЯ рд╕реНрд╡рд┐рдЬрд╝рд▓ рдХрд░реЗрдВ
рдЖрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлреБрдЯрд░ рдХреЛ рдХрд╕реНрдЯрдорд╛рдЗрдЬрд╝ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
- рд╕реНрд╡рд┐рдЬрд╝рд▓ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ: npm run swizzle @docusaurus/theme-classic Footer -- --eject
- рдпрд╣ src/theme/Footer/ рдореЗрдВ Footer рдХрдВрдкреЛрдиреЗрдВрдЯ рдХреА рдПрдХ рдкреНрд░рддрд┐ рдмрдирд╛рддрд╛ рд╣реИ
- рдЕрдкрдирд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреИрдЧ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Footer рдХрдВрдкреЛрдиреЗрдВрдЯ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ
- рдлреБрдЯрд░ рдХреЗ рдХреНрд▓реЛрдЬрд╝рд┐рдВрдЧ рдЯреИрдЧ рд╕реЗ рдкрд╣рд▓реЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛрдбрд╝реЗрдВ
- рдЕрдкрдиреА рд╕рд╛рдЗрдЯ рд╕рд╣реЗрдЬреЗрдВ рдФрд░ рдкреБрдирдГ рдмрдирд╛рдПрдБ
рдиреЛрдЯ: рд╕реНрд╡рд┐рдЬрд╝рд▓рд┐рдВрдЧ рдЖрдкрдХреЛ Docusaurus рдХрдВрдкреЛрдиреЗрдВрдЯ рдкрд░ рдкреВрд░реНрдг рдирд┐рдпрдВрддреНрд░рдг рджреЗрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЙрд╕ рдХрдВрдкреЛрдиреЗрдВрдЯ рдХреЛ рд╕реНрд╡рдпрдВ рдмрдирд╛рдП рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред Docusaurus рдХреЗ рдЕрдкрдбреЗрдЯ рд╕реНрд╡рд┐рдЬрд╝рд▓ рдХрд┐рдП рдЧрдП рдХрдВрдкреЛрдиреЗрдВрдЯ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред
рдЪрд░рдг 3: рдмрдирд╛рдПрдБ рдФрд░ рдбрд┐рдкреНрд▓реЙрдп рдХрд░реЗрдВ
рдХреЛрдб рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдЕрдкрдиреА Docusaurus рд╕рд╛рдЗрдЯ рдмрдирд╛рдПрдБ рдФрд░ рдбрд┐рдкреНрд▓реЙрдп рдХрд░реЗрдВ:
# Build the site
npm run build
# Or with Yarn
yarn build
# Deploy to your hosting platform
# (Vercel, Netlify, GitHub Pages, etc.)
рд╕реБрдЭрд╛рд╡: рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди, рдЕрдкрдиреЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП npm start рдпрд╛ yarn start рдЪрд▓рд╛рдПрдБред рдЪреИрдЯрдмреЙрдЯ рд╕рднреА рдкреГрд╖реНрдареЛрдВ рдкрд░ рдиреАрдЪреЗ рджрд╛рдПрдБ рдХреЛрдиреЗ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЪрд░рдг 4: рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реЗрдВ
рдЕрдкрдиреЗ рдкрд░рд┐рд╡рд░реНрддрди рдбрд┐рдкреНрд▓реЙрдп рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЕрдкрдиреА рдкреНрд░рд▓реЗрдЦрди рд╕рд╛рдЗрдЯ рдХреЛ рдПрдХ рдирдП рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЯреИрдм рдореЗрдВ рдЦреЛрд▓реЗрдВред рдЖрдкрдХреЛ рдиреАрдЪреЗ рджрд╛рдПрдБ рдХреЛрдиреЗ рдореЗрдВ рдЪреИрдЯ рд╡рд┐рдЬреЗрдЯ рдмрдЯрди рджрд┐рдЦрд╛рдИ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдХрд┐ рдпрд╣ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЦреБрд▓рддрд╛ рдФрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рд╡рд┐рдЬреЗрдЯ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗ рд░рд╣рд╛? рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдиреЗ рдЕрдкрдиреА рд╕рд╛рдЗрдЯ рдкреБрдирдГ рдмрдирд╛рдИ рд╣реИред рдЬрд╛рдБрдЪреЗрдВ рдХрд┐ рдЖрдкрдиреЗ YOUR_WIDGET_ID рдХреЛ рдбреИрд╢рдмреЛрд░реНрдб рд╕реЗ рдЕрдкрдиреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд┐рдЬреЗрдЯ ID рд╕реЗ рдмрджрд▓рд╛ рд╣реИред рдЕрдкрдирд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреИрд╢ рд╕рд╛рдлрд╝ рдХрд░реЗрдВ рдпрд╛ рдЗрдирдХреЙрдЧреНрдирд┐рдЯреЛ рдореЛрдб рдореЗрдВ рджреЗрдЦреЗрдВред рдХрд┐рд╕реА рднреА JavaScript рддреНрд░реБрдЯрд┐ рдХреЗ рд▓рд┐рдП рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрдВрд╕реЛрд▓ (F12) рдЦреЛрд▓реЗрдВред
Weebly