Skip to content

WebUI collection of interface components and designed like matrix, based on web technologies.

License

Notifications You must be signed in to change notification settings

ll1ness/TechOne-UI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

33 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

TechOne UI ⚑️

Version License PRs Welcome

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° соврСмСнных UI ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π½Π° чистом HTML, CSS ΠΈ JavaScript. Π‘Π΅Π· зависимостСй, лСгкая ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ. Π‘Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π° с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ нСйросСтСй.

✨ ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ

  • 🎯 100% чистый ΠΊΠΎΠ΄ - HTML, CSS, JavaScript Π±Π΅Π· Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ²
  • πŸ“¦ 60+ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² - всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ элСмСнты интСрфСйса
  • 🎨 ВСмная Ρ‚Π΅ΠΌΠ° - встроСнная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‚Π΅ΠΌ
  • πŸ“± ΠΠ΄Π°ΠΏΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ - Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° всСх устройствах
  • ⚑ ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ - ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€, Π½ΠΈΠΊΠ°ΠΊΠΈΡ… зависимостСй
  • πŸ”§ Π“ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ - ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ

πŸ“¦ Установка

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" href="https://raw.githubusercontent.com/ll1ness/TechOne-UI/refs/heads/com.techone.build/techon-ui.min.js">
</head>
<!-- ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠ΄ -->

πŸš€ Быстрый старт

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" href="https://raw.githubusercontent.com/ll1ness/TechOne-UI/refs/heads/com.techone.build/techon-ui.min.js">
</head>
<body>
    <!-- Кнопка -->
    <button class="to-button" data-variant="primary">НаТми мСня</button>
    
    <!-- АккордСон -->
    <div class="to-accordion" data-open="true">
        <div class="to-accordion-header">
            <button class="to-accordion-trigger">
                <span>Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ</span>
                <span class="to-accordion-icon">β–Ό</span>
            </button>
        </div>
        <div class="to-accordion-content">
            <div class="to-accordion-content-inner">
                Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ Π°ΠΊΠΊΠΎΡ€Π΄Π΅ΠΎΠ½Π°
            </div>
        </div>
    </div>
    
    <!-- Π‘Π΅ΠΉΠ΄ΠΆ -->
    <span class="to-badge" data-variant="success">УспСх</span>
    
    <script src="https://raw.githubusercontent.com/ll1ness/TechOne-UI/refs/heads/com.techone.build/techon-ui.min.js"></script>
</body>
</html>

🎯 ИспользованиС

АвтоматичСская Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°

// ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ скрипт - ΠΎΠ½ сам Π½Π°ΠΉΠ΄Π΅Ρ‚ ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹
// ВСхнология MutationObserver автоматичСски ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ динамичСски 

Ручная Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°

// Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚
TechOnUI.load('button').then(() => {
    console.log('Кнопки Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Ρ‹');
});

// Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ всС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹
TechOnUI.loadAll();

// ΠŸΡ€ΠΎΡΠΊΠ°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΡƒΠΆΠ½Ρ‹Π΅
TechOnUI.scan();

Настройка ΠΏΡƒΡ‚Π΅ΠΉ

// Если Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π»Π΅ΠΆΠ°Ρ‚ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅
TechOnUI.setBasePath('/assets/techon/');

// Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ
TechOnUI.enableDebug();

🎨 ВСмизация

БвСтлая Ρ‚Π΅ΠΌΠ° (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ)
<body data-theme="light">
    <!-- ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Π² свСтлой Ρ‚Π΅ΠΌΠ΅ -->
</body>
Вёмная Ρ‚Π΅ΠΌΠ°
<body data-theme="dark">
    <!-- ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Π² Ρ‚Ρ‘ΠΌΠ½ΠΎΠΉ Ρ‚Π΅ΠΌΠ΅ -->
</body>
ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΌΡ‹
// ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ
document.body.setAttribute('data-theme', 'dark');

// Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ThemeSwitcher
<div class="to-theme-switcher" data-type="buttons"></div>
// ΠΈΠ»ΠΈ
<div class="to-theme-switcher" data-type="dropdown"></div>

βš™οΈ API

Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚
// Доступ Ρ‡Π΅Ρ€Π΅Π· TechOnUI ΠΈΠ»ΠΈ to
TechOnUI.load('button');
to.load('button');

// ВСрсия
console.log(TechOnUI.version); // "1.01.2"

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ API

ΠœΠ΅Ρ‚ΠΎΠ΄ ОписаниС ΠŸΡ€ΠΈΠΌΠ΅Ρ€
load(componentName) Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ TechOnUI.load('accordion')
loadAll() Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ всС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ TechOnUI.loadAll()
scan() Найти ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ TechOnUI.scan()
setBasePath(path) Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ для Ρ„Π°ΠΉΠ»ΠΎΠ² TechOnUI.setBasePath('/ui/')
enableDebug() Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ TechOnUI.enableDebug()
Бобытия
// Π‘Π»ΡƒΡˆΠ°Ρ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°
document.addEventListener('DOMContentLoaded', () => {
    console.log('TechOn UI Π³ΠΎΡ‚ΠΎΠ²');
});

// ΠšΠ°ΡΡ‚ΠΎΠΌΠ½Ρ‹Π΅ события ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²
document.querySelector('.to-dropdown').addEventListener('dropdown-select', (e) => {
    console.log('Π’Ρ‹Π±Ρ€Π°Π½ΠΎ:', e.detail.value);
});

🌟 ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

Π€ΠΎΡ€ΠΌΠ° Π²Ρ…ΠΎΠ΄Π° с Ρ‚Π΅ΠΌΠ½ΠΎΠΉ Ρ‚Π΅ΠΌΠΎΠΉ
<div data-theme="dark" style="padding: 40px;">
    <div class="to-card" style="max-width: 400px; margin: 0 auto;">
        <div class="to-card-header">
            <h2 class="to-card-title">Π’Ρ…ΠΎΠ΄</h2>
        </div>
        <div class="to-card-content">
            <input type="email" placeholder="Email" style="width: 100%; padding: 10px; margin-bottom: 16px; border: 1px solid var(--to-border); border-radius: var(--to-radius);">
            <input type="password" placeholder="ΠŸΠ°Ρ€ΠΎΠ»ΡŒ" style="width: 100%; padding: 10px; margin-bottom: 24px; border: 1px solid var(--to-border); border-radius: var(--to-radius);">
            <button class="to-button" data-variant="primary" data-fill-width="true">Π’ΠΎΠΉΡ‚ΠΈ</button>
        </div>
    </div>
</div>
Π”Π°ΡˆΠ±ΠΎΡ€Π΄ с ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ
<div class="to-grid" data-columns="3" data-gap="m">
    <div class="to-card" data-variant="elevated">
        <div class="to-card-header">
            <h3 class="to-card-title">ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ</h3>
            <span class="to-badge" data-variant="info">+12%</span>
        </div>
        <div class="to-card-content">
            <div style="font-size: 32px; font-weight: bold;">1,234</div>
        </div>
    </div>
    
    <div class="to-card" data-variant="elevated">
        <div class="to-card-header">
            <h3 class="to-card-title">Π—Π°ΠΊΠ°Π·Ρ‹</h3>
            <span class="to-badge" data-variant="success">+5%</span>
        </div>
        <div class="to-card-content">
            <div style="font-size: 32px; font-weight: bold;">567</div>
        </div>
    </div>
    
    <div class="to-card" data-variant="elevated">
        <div class="to-card-header">
            <h3 class="to-card-title">Π”ΠΎΡ…ΠΎΠ΄</h3>
            <span class="to-badge" data-variant="warning">-2%</span>
        </div>
        <div class="to-card-content">
            <div style="font-size: 32px; font-weight: bold;">$12.3K</div>
        </div>
    </div>
</div>

πŸ›  Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°

# ΠšΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ
git clone https://github.com/techon-ui/techon-ui.git

# Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ зависимости (для сборки)
npm install

# Π‘ΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚
npm run build

# Π—Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ dev сСрвСр
npm run dev

🀝 УчастиС Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅

ΠœΡ‹ привСтствуСм любой Π²ΠΊΠ»Π°Π΄ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚!

Π€ΠΎΡ€ΠΊΠ½ΠΈΡ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ
Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π²Π΅Ρ‚ΠΊΡƒ для Ρ„ΠΈΡ‡ΠΈ (git checkout -b feature/amazing-feature)
Π—Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΡŒΡ‚Π΅ измСнСния (git commit -m 'Add amazing feature')
Π—Π°ΠΏΡƒΡˆΡŒΡ‚Π΅ Π² Π²Π΅Ρ‚ΠΊΡƒ (git push origin feature/amazing-feature)
ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Pull Request

πŸ‘₯ Contributors

Π‘Π»Π°Π³ΠΎΠ΄Π°Ρ€ΠΈΠΌ всСх, ΠΊΡ‚ΠΎ сдСлал Π²ΠΊΠ»Π°Π΄ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚:

DeepSeek - deepseek.com - АрхитСктура ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², оптимизация ΠΊΠΎΠ΄Π°
ll1ness - github.com/ll1ness - Π”ΠΈΠ·Π°ΠΉΠ½ систСма, тСмизация
Lorant One - lorant.one - ДокумСнтация, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования

πŸ“„ ЛицСнзия

MIT Β© TechOn UI. ΠŸΠΎΠ»Π½Ρ‹ΠΉ тСкст Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ доступСн Π² Ρ„Π°ΠΉΠ»Π΅ LICENSE. 🌟 ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°

ΠŸΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ Π·Π²Π΅Π·Π΄Ρƒ Π½Π° GitHub ⭐
РасскаТитС ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π΄Ρ€ΡƒΠ·ΡŒΡΠΌ
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π² своих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…
Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡ‚Π΅ issue с Π±Π°Π³Π°ΠΌΠΈ ΠΈ идСями

πŸ“ž ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹

GitHub: github.com/ll1ness
Email: majezxctoy6799@outlook.com
БдСлано с ❀️
  • ll1ness

About

WebUI collection of interface components and designed like matrix, based on web technologies.

Topics

Resources

License

Stars

Watchers

Forks

Languages