import { useState } from 'react' import { motion, useMotionValueEvent, useScroll } from "motion/react" import TypingEffect from './components/TypingEffect' import CardsSection from './components/CardsSection' import Section from './components/Section' import Marquee from './components/Marquee' import Navbar from './components/Navbar' import ServicesSection from './components/ServicesSection' import ProductsSection from './components/ProductsSection' import CaseSection from './components/CaseSection' import Footer from './components/Footer' import AboutSection from './components/AboutSection' import LicenseSection from './components/LicenseSection' import MissionSection from './components/MissionSection' import { TypingSpan } from './components/TypingSpan' import DirectorSection from './components/DirectorSection' function App() { const { scrollY } = useScroll() const [hidden, setHidden] = useState(false) const [isAtTop, setIsAtTop] = useState(true) useMotionValueEvent(scrollY, "change", (current) => { const previous = scrollY.getPrevious() ?? 0 setIsAtTop(current === 0) if (current > previous && current > 150) { setHidden(true) } else { setHidden(false) } }) const partners = [ { src: '/xkvadrat.svg' }, { src: '/rcit-BccMYqhE.svg' }, { src: '/vodokanal.svg' }, { src: '/tesaldan.svg' }, { src: '/tehnopark.svg' }, { src: '/sakhaspectrans-xe6pCR8Q.svg' }, { src: '/jkhsakha.svg' }, ] const handleLink = () => { const modal = document.getElementById('my_modal_2') if (modal) { (modal as HTMLDialogElement).close() } } const languages = ['/python.svg', '/csharp.svg', '/js.svg', '/1c.svg'] const programs = ['/1c_franch.svg', '/astralinux.svg', '/drweb.svg', '/kasperskylab.svg'] return (
О компании Программные продукты Услуги Главный кейс Контакты
Все наши специалисты имеют профессиональное образование и опыт более 15 лет работы
Программное обеспечение
{/* — полный цикл разработки и технической поддержки */}
Берём ответственность за ваши ИТ-решения, снимая риски и операционную нагрузку, выступая надёжным технологическим партнёром по разработке и сопровождению
✳︎ Работаем с такими языками программирования, как:
{languages.map((lang, index) => (
))}
✳︎ Работаем с такими программами, как:
{programs.map((lang, index) => (
))}