CRITHIT LAUNCHER

CRITHIT DESIGN SYSTEM & EMBED SDK

WEB INTEGRATION & EMBED BUTTONS

Official Pill Button guidelines, React + TypeScript components, downloadable brand assets, JS fallbacks, and Brand Regulations.

1. Live Interactive Web Buttons

Signature pill buttons matching the CritHit Launcher download button. Select a style, test the launcher trigger live, and copy the snippet.

Launcher Card (Recommended)
1-Click Launch
Paid / Store Page

2. Link & Protocol Specification (crithit://)

CritHit Launcher registers a custom URI scheme crithit:// in the OS. Use it for 1-click launcher triggers:

Direct Modpack Card Protocol (Recommended)

crithit://modpack/YOUR_MODPACK_ID

Commands CritHit Launcher to bring the app to focus and open the modpack card. The user inspects build details and confirms installation. Fully backward-compatible with all versions.

Direct 1-Click Game Launch

crithit://play/YOUR_MODPACK_ID

Instantly starts Minecraft with the modpack if already installed, or triggers modpack installation if missing.

Launcher Focus

crithit://open

Restores and focuses CritHit Launcher from system tray without changing tabs.

Official CritHit Web Store Link

https://crithitlauncher.com/ru/store/YOUR_MODPACK_ID

Official web store URL on crithitlauncher.com. Ensures secure monetization via CritHit Pay API, protects creator copyrights, and delivers a verified installer.

Security & Catalog Policy

All modpacks must be registered and verified in the official CritHit catalog. Launch and store deep-links function exclusively with registered project IDs. External unverified installation links are restricted to guarantee user security and protect creator monetization.

3. CSS Stylesheet for Web Integration

/* Подключение фирменного шрифта Unbounded для внешних сайтов */
@import url('https://fonts.googleapis.com/css2?family=Unbounded:wght@400;600;700;800&display=swap');

/* Официальная кнопка CritHit (1-в-1 как на странице разработчиков CritHit) */
.crithit-play-btn, .crithit-store-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: min(585px, 100%);
  height: 60px;
  padding: 0 28px;
  border-radius: 70px;
  background: rgba(13, 138, 220, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(16px) saturate(180%);
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37);
  color: #ffffff;
  font-family: 'Unbounded', system-ui, -apple-system, sans-serif;
  font-size: clamp(15px, 1.5vw, 20px);
  font-weight: 400;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  outline: none;
  transition: background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, transform 0.2s ease;
}

.crithit-play-btn:hover, .crithit-store-btn:hover {
  background: rgba(13, 138, 220, 0.35);
  border-color: rgba(255, 255, 255, 0.3);
  box-shadow: 0 12px 40px 0 rgba(13, 138, 220, 0.4);
  transform: translateY(-2px);
}

.crithit-btn-icon {
  width: 26px;
  height: 26px;
  border-radius: 6px;
  object-fit: contain;
  flex-shrink: 0;
}

.crithit-btn-text {
  font-family: 'Unbounded', system-ui, -apple-system, sans-serif;
  font-size: clamp(15px, 1.5vw, 20px);
  font-weight: 400;
  text-transform: uppercase;
  color: #ffffff;
  letter-spacing: 0;
}

4. Download Logos & Brand Assets

Official graphics for reviewers, content creators, designers, and site owners. Download individual assets as needed.

CritHit Launcher Logos & Icons

LogoBar (В одну строку)
CritHit Launcher LogoBar
LogoBar-CritHit-Launcher.pngDownload PNG
Logo (Вертикальный)
Logo-CritHit-Launcher.pngDownload PNG
Icon (Иконка 1:1)
CritHit Launcher Icon
Icon-CritHit-Launcher.pngDownload PNG

CritHit Cloud Logos & Icons

LogoBar (В одну строку)
CritHit Cloud LogoBar
LogoBar-CritHit-Cloud.pngDownload PNG
Logo (Вертикальный)
Logo-CritHit-Cloud.pngDownload PNG
Icon (Иконка 1:1)
CritHit Cloud Icon
Icon-CritHit-Cloud.pngDownload PNG

5. Brand Colors

CritHit Blue (Accent)#0D8ADC
Glass Tintrgba(13, 138, 220, 0.2)
Dark Panel#060C14

6. Fallback Script for Deep-Links

If the user does not have CritHit Launcher installed, clicking crithit:// won't trigger an app. Use these fallback scripts for Vanilla JS or React + TypeScript.

Option A: Vanilla JavaScript

function openCritHit(modpackId, action = 'modpack') {
  // action: 'modpack' (карточка сборки / установка) или 'play' (1-click запуск)
  const protocolUrl = `crithit://${action}/${modpackId}`;
  const downloadUrl = `https://crithitlauncher.com/en/download`;

  let hasBlurred = false;
  const onBlur = () => { hasBlurred = true; };
  window.addEventListener('blur', onBlur);
  document.addEventListener('visibilitychange', onBlur);

  // Вызываем кастомный протокол лаунчера
  window.location.href = protocolUrl;

  // Если окно браузера не потеряло фокус — лаунчер, вероятно, не установлен
  setTimeout(() => {
    window.removeEventListener('blur', onBlur);
    document.removeEventListener('visibilitychange', onBlur);
    if (!hasBlurred && !document.hidden) {
      window.location.href = downloadUrl;
    }
  }, 2500);
}

Option B: React + TypeScript Component

import React, { useCallback } from 'react';

interface CritHitButtonProps {
  modpackId: string;
  action?: 'modpack' | 'play' | 'store';
  className?: string;
  children?: React.ReactNode;
}

export const CritHitButton: React.FC<CritHitButtonProps> = ({
  modpackId,
  action = 'modpack',
  className = "crithit-play-btn",
  children,
}) => {
  const handleClick = useCallback(
    (e: React.MouseEvent<HTMLAnchorElement>) => {
      if (action === 'store') return; // Обычный переход в веб-магазин

      e.preventDefault();
      const protocolUrl = `crithit://${action}/${modpackId}`;
      const downloadUrl = `https://crithitlauncher.com/en/download`;

      let hasBlurred = false;
      const onBlur = () => { hasBlurred = true; };
      window.addEventListener('blur', onBlur);
      document.addEventListener('visibilitychange', onBlur);

      window.location.href = protocolUrl;

      setTimeout(() => {
        window.removeEventListener('blur', onBlur);
        document.removeEventListener('visibilitychange', onBlur);
        if (!hasBlurred && !document.hidden) {
          window.location.href = downloadUrl;
        }
      }, 2500);
    },
    [modpackId, action]
  );

  const href = action === 'store'
    ? `https://crithitlauncher.com/en/store/${modpackId}`
    : `crithit://${action}/${modpackId}`;

  const defaultText = action === 'store'
    ? 'BUY ON CRITHIT STORE'
    : action === 'play'
    ? 'PLAY VIA CRITHIT'
    : 'OPEN IN CRITHIT';

  return (
    <a
      href={href}
      onClick={handleClick}
      className={className}
      target={action === 'store' ? '_blank' : undefined}
      rel="noopener noreferrer"
    >
      <img src="https://crithitlauncher.com/apple-touch-icon.png" alt="CritHit Logo" className="crithit-btn-icon" />
      <span className="crithit-btn-text">
        {children || defaultText}
      </span>
    </a>
  );
};

7. Brand Guidelines & Regulations

By using CritHit web widgets, buttons, and brand assets on third-party websites, you automatically agree to the following rules:

1. Preservation of Proportions & Colors

Modifying logo proportions, recoloring official icons, applying unapproved gradients, or altering button capsule geometry is strictly prohibited.

2. Anti-Scam & Misleading Prohibition

Using CritHit branding to style websites distributing malicious software, cheats, pirated copies, or modifications violating Mojang / Microsoft EULA is forbidden.

3. Requirements for Action Buttons

Buttons must link exclusively to registered IDs/Slugs inside the official CritHit ecosystem. Using phishing redirects disguised as CritHit buttons results in immediate account and project termination.

4. Trademarks & Copyrights

Minecraft is a registered trademark of Mojang AB / Microsoft Corporation. CritHit Launcher is not affiliated directly with Mojang AB, but fully complies with commercial Java Edition policies.