Skip to content

angryscan/angryscan.org

Repository files navigation

Angry Data Scanner Website

This repository contains the source code for the Angry Data Scanner website.

Project Structure

.
├── src/              # Source files for the static website
│   ├── assets/       # Images, icons, screenshots
│   ├── css/          # Stylesheets
│   ├── js/           # JavaScript files (i18n, config, components, script)
│   └── *.html        # HTML pages
├── static/           # Static files (robots.txt, BingSiteAuth.xml, etc.)
├── docs/             # Minimal MkDocs documentation (required for build)
├── hooks.py          # MkDocs build hook (replaces site with src content)
├── mkdocs.yml        # MkDocs configuration
└── requirements.txt  # Python dependencies

Local Development

  1. Clone this repository:

    git clone https://github.com/angryscan/angryscan.org.git
    cd angryscan.org
  2. Install dependencies:

    pip install -r requirements.txt
  3. Generate HTML pages from templates (optional, done automatically during build):

    # Generate pages for all languages from templates and config.json
    python3 generate_html.py

    This creates pages in /src/ for all languages (/ru/, /de/, /fr/, /es/) using translations from config.json.

  4. Build the site:

    mkdocs build

    This will copy files from src/ and static/ to site/ directory, including language-specific pages.

  5. Start local development server:

    mkdocs serve

    Or use a simple HTTP server with URL rewrite support:

    python3 dev_server.py

    This server supports clean URLs (without .html extension):

    • /discoverydiscovery.html
    • /featuresfeatures.html
    • /ru/discoveryru/discovery.html
    • etc.

    Or use a basic HTTP server (without rewrite support):

    cd src && python3 -m http.server 8000

Features

  • Multi-language support:
    • English (root pages: /, /index.html, etc.)
    • Russian with custom translations (/ru/)
    • German with Google Translate (/de/)
    • French with Google Translate (/fr/)
    • Spanish with Google Translate (/es/)
  • Analytics: Yandex Metrika, Google Tag Manager, and Bing verification
  • Modern design: Responsive, dark/light theme support
  • Static site: Fast, SEO-friendly static HTML

Deployment

Автоматический деплой (GitHub Pages)

Сайт автоматически деплоится на GitHub Pages при каждом push в ветку main:

  1. Настройка GitHub Pages (один раз):

    • Перейдите в Settings → Pages
    • Source: выберите "GitHub Actions"
    • Сохраните настройки
  2. Процесс деплоя:

    • При push в main запускается GitHub Actions workflow
    • Устанавливаются зависимости (pip install -r requirements.txt)
    • Запускается сборка (mkdocs build)
    • hooks.py копирует файлы из src/ и static/ в site/
    • Содержимое site/ деплоится на GitHub Pages
    • Сайт доступен по адресу: https://<username>.github.io/<repository>/ или https://angryscan.org/
  3. Ручной запуск деплоя:

    • Перейдите в Actions → Deploy documentation
    • Нажмите "Run workflow" → "Run workflow"

Ручной деплой на сервер

Если нужно задеплоить на другой сервер:

# 1. Собрать сайт
mkdocs build

# 2. Скопировать содержимое папки site/ на сервер
# Например, через rsync:
rsync -avz --delete site/ user@server:/var/www/html/

# Или через scp:
scp -r site/* user@server:/var/www/html/

Альтернативные варианты хостинга

  • Netlify: подключите репозиторий, укажите build command: mkdocs build, publish directory: site
  • Vercel: аналогично Netlify
  • Cloudflare Pages: подключите репозиторий, укажите build command и output directory
  • Любой статический хостинг: просто загрузите содержимое папки site/ после сборки

About

Angry Data Scanner Site

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 2

  •  
  •