A personal digital business card — one HTML file, more craft than that usually implies.
📖 About ·
🔗 Try it ·
✨ Features ·
📄 License ·
·
🏛️ Partners ·
🐛 Issues ·
🇷🇺 RU
📑 Table of contents
- About
- Screenshots
- Try it
- Features
- Built with
- Want to build your own?
- Security
- FAQ
- License
- Support
- For Organizations & Partners
- 🐛 Report an issue ↗
Most personal landing pages reach for a framework, a build step, and a handful of dependencies before they've said a single word about the person behind them.
kda2210.github.io simply asks one question:
"How much care can fit into one HTML file?"
See for yourself: kda2210.github.io
Free. No ads. No subscriptions. Works offline. Open Source.
These aren't marketing slogans.
They're the principles behind every project I build.
If you're curious why I deliberately choose this approach, this page explains both the site and the philosophy behind it.
I believe useful software should remain accessible to everyone. That's why every application I build follows the same handful of principles, no matter what the app itself does.
| Principle | In short | |
|---|---|---|
| 💸 | Free | You never pay to use it. |
| 🚫 | No ads | Nothing competes for your attention. |
| 🔁 | No subscriptions | Install once, use it for as long as you like. |
| 📴 | Works offline | No server — nothing leaves your device. |
| 🔓 | Open Source | Nothing hidden. Read it, verify it, build on it. |
Read the full reasoning behind each principle
You never have to pay to use my apps. Useful tools should be available regardless of someone's financial situation.
Advertisements distract, break concentration, and make software less pleasant to use. I believe an application should solve a problem — not compete for your attention.
Subscriptions have become the default business model for almost everything. For small personal tools, I believe people should be able to install an app once and simply use it, without adding another monthly payment to their lives.
That's why my applications are designed so all core features work completely offline: no server dependency, faster performance, better privacy, use the app anywhere. On this particular page, the very first visit still needs a connection to load the Google Fonts typeface and the avatar image — once your browser has cached them, everything keeps working without one.
Every project is open source from day one, so you can see exactly how it works, verify there are no hidden mechanisms, learn from the code, contribute, and know the project can keep existing long after I stop maintaining it.
kda2210.github.io is my personal digital business card: an avatar, a short line about me, and ways to reach me. It's a single static HTML file — no build step, no dependencies — but with more attention to detail than that description usually implies: an ambient light that follows your cursor or finger and slowly drifts on its own when you're not touching anything, a card that responds when you tilt your phone, and a few smaller touches most one-file pages skip entirely.
It isn't trying to be a template or a starter kit — it's simply the page I use for myself, published because there was no reason to keep it closed.
A short GIF would show it even better — the ambient light and gyroscope parallax are motion, not layout. That's still coming.
Live: kda2210.github.io
Or run it locally — clone the repo and open index.html in a browser. Nothing to install, nothing to build.
A language switch that remembers your choice between visits.
A soft light follows your cursor or finger; when you're not moving it, it drifts slowly on its own.
Tilt your phone and the background, the light, and the card itself all respond — a small parallax effect, in the smallest amount of code that could produce it.
Generates a vCard right in the browser, no server involved.
Shows the owner's local time, always current.
Every animation switches off cleanly for anyone who'd rather not see them.
👀 A hidden easter egg
Not telling. Find it yourself.
Plain HTML, CSS, and JavaScript in a single file — nothing to install, build, or keep updated.
Vanilla HTML, CSS, and JavaScript — no frameworks, no build tools. A few browser platform APIs used directly: the Web Audio API (sound), the Device Orientation API (gyroscope), and CSS custom properties with @keyframes for the animations.
index.html — the card itself (this page)
supporters/index.html — the shared Hall of Supporters page
fioletovyj.jpeg — background image
docs/ — screenshots used in this README
LICENSE — MIT license (code only, see below)
SECURITY.md — how to report a security issue
The code is open — fork it and make it yours. The main things worth changing:
- the Telegram / email / VK / phone links
- the avatar and background image
- the timezone, in the
TIMEZONEvariable - the details in the vCard generator
- the tagline and the text underneath it
Found something that looks like an actual security issue — not just "you could minify this CSS"? See SECURITY.md rather than opening a public issue.
Why not React / a static site generator / some build tool?
A landing page someone looks at for five seconds doesn't need a build pipeline. One file is easier to read, easier to trust, and easier to fork.
Can I use your photo or contact details if I fork this?
No — see the note in License. Swap them for your own; that's the whole point of forking it.
Does it track or analyze visitors?
No analytics, no cookies, no tracking of any kind. It's a static file — nobody's watching who opens it.
What's the easter egg?
👀
Released under the MIT License — for the code.
Use it. Study it. Fork it. Build your own version.
One exception: the personal content in this repository — the photo, phone number, email, and social links — isn't covered by that license. That's not code, it's one specific person's contact information, and there's no reason for anyone but me to reuse it. If you fork this, swap it all out for your own — see Want to build your own?.
Creating applications like this takes a great deal of time. I keep doing it because I genuinely enjoy building tools that make everyday life a little better.
If my projects help people, voluntary support lets me spend more time improving existing apps and building new ones. None of it changes how the apps work, for anyone.
Note
Support is entirely optional, and the amount is entirely up to you — there's no suggested figure, and no amount is "too small." It doesn't unlock any features, and it changes nothing about how the apps work. It's simply a way of saying "thank you." ❤️
If even one of my applications has been useful to you, then all the hours spent building it were worth it. Thank you for using my projects.
If you'd like to support the development of current and future projects, pick whatever's easiest for you. The amount is always yours to choose.
💳 Show all ways to support
One-time — card (Russia)
Ongoing — monthly support
Called "monthly support," not a subscription — same as a one-time donation, it unlocks nothing and can be cancelled anytime.
Crypto
₮ USDT (TRC20)
TJXTxpVagstdhLoZqigZsvyP2CLRzwdgiF
₿ Bitcoin
bc1q4p4zesf49zsufnwj3c3ux77fcxzslha4djukwp
◈ ETH (ERC20) / USDC (Base) / BNB (BEP20)
0x997250d092b4c2DF645BaA9CA512891f7C3DD351
☀️ SOL (Solana)
KidCphzsH8FwNqirSKidVJUEE8ehN8g2WQtNBmuMhPi
💎 TON
UQBHfMPQ2zQWno06shSoYWTxZHVl6zGPctfqBnsRQf4r0U4X
✕ XRP (Ripple)
r3e3iyezjaGAsB64aNEfGDgrPYmachHZyc
★ XLM (Stellar)
GBVZ3TMMJLWJ7RUCM2X6QQZADWHFLHEGDDVOT3TPLVLJFQOCEGVLUCU4
Prefer another method?
Hall of Supporters — a shared thank-you page across all of my projects. Being listed there is entirely opt-in and off by default: supporting a project never adds your name anywhere unless you explicitly ask for it.
Everything above is for individuals, and none of it changes here: this project stays 100% free, ad-free, and fully functional for anyone who downloads it. This section doesn't add a paid tier — it just describes a different kind of supporter.
Organizations — companies, foundations, employers, NGOs — sometimes want to support this work in ways an individual can't, or need to put a project in front of a group of people at once. A few ways that works:
- Sponsorship credit. A contribution gets a static "Supported by [name]" line here and on the Hall of Supporters — not a banner, not a pop-up, nothing shown inside the app itself.
- Organizational deployment. If you want to roll this project out to your employees, members, or users, I can work out a license covering your organization. Each person still gets it free, exactly like everyone else — the organization is the one paying, not them.
Sponsor a concrete addition — a new language, a specific capability — and get named, permanent credit for it once it ships. It's released free to everyone regardless, same as everything else.
- You propose a feature — or, if this project keeps a public roadmap, pick one from there.
- We agree on scope, timeline, and price.
- You fund it — in full, or split with other sponsors.
- It ships free for everyone.
- You get a "Funded by [name]" credit in the changelog and here.
Rough pricing depends on scope — a translation might run a couple hundred dollars, a small feature more, something larger more still. Always discussed and agreed before any work starts, never a fixed price list.
Currently seeking sponsors
| Feature | Status |
|---|---|
| — open slot — | seeking a sponsor |
(This table only lists something once there's a real feature to fund — an honest empty slot beats a made-up percentage.)
This particular page doesn't have an obvious organizational use case on its own — it's my personal card, not a tool. But it's also the canonical home of these principles, so if you'd rather sponsor the whole lineup of projects instead of one specific tool, this is the right place to reach out.
Interested? kda2210@duck.com — put "Partnership" in the subject line.
Does "free" still apply if my organization is paying?
Yes. Organizational licensing pays for a deployment at scale — it never turns a feature on or off for anyone. Every individual gets the exact same free, full version whether they found it themselves or got it through an organization.
Thank you for reading this far.
Whether or not you decide to support these projects, I'm sincerely grateful to everyone who uses them. You're the reason they continue to grow. ❤️
Личная цифровая визитка — один HTML-файл и куда больше внимания к деталям, чем можно ожидать.
📖 О проекте ·
🔗 Посмотреть ·
✨ Функции ·
📄 Лицензия ·
·
🏛️ Партнёрам ·
🐛 Баги ·
🇬🇧 EN
📑 Содержание
Большинство личных лендингов первым делом тянут за собой фреймворк, сборку и десяток зависимостей — ещё до того, как скажут хоть слово о человеке за ними.
kda2210.github.io просто отвечает на один вопрос:
«Сколько внимания к деталям поместится в один HTML-файл?»
Посмотреть можно здесь: kda2210.github.io
Бесплатно. Без рекламы. Без подписок. Работает офлайн. Открытый код.
Это не рекламные лозунги.
Это принципы, которым я следую в каждом своём проекте.
Если вам интересно, почему я осознанно выбираю именно такой подход — эта страница объясняет и саму страницу, и философию за ней.
Я считаю, что полезные программы должны оставаться доступными каждому. Поэтому все мои приложения следуют одним и тем же принципам — независимо от того, что делает конкретная программа.
| Принцип | Коротко | |
|---|---|---|
| 💸 | Бесплатно | Вы никогда не платите за использование. |
| 🚫 | Без рекламы | Ничто не отвлекает и не борется за ваше внимание. |
| 🔁 | Без подписок | Установили один раз — пользуетесь сколько угодно. |
| 📴 | Работает офлайн | Ни одного сервера — ничего не покидает устройство. |
| 🔓 | Открытый код | Ничего не скрыто. Читайте, проверяйте, дорабатывайте. |
Подробнее о каждом принципе
Вам никогда не придётся платить за использование моих приложений. Полезные инструменты должны быть доступны независимо от финансового положения человека.
Реклама отвлекает, сбивает концентрацию и делает использование программы менее приятным. Я считаю, что приложение должно решать задачу, а не бороться за ваше внимание.
Для небольших личных инструментов я считаю, что человек должен иметь возможность один раз установить приложение и просто пользоваться им — не добавляя себе ещё один ежемесячный платёж.
Поэтому все мои приложения спроектированы так, чтобы все основные функции работали полностью офлайн: никакой зависимости от сервера, выше скорость, больше приватности, можно пользоваться где угодно. На этой конкретной странице первый заход всё же требует соединения — чтобы подгрузить шрифт Google Fonts и аватар; после того как браузер их закэширует, всё продолжает работать без сети.
Каждый проект открыт с самого начала — вы можете увидеть, как устроено приложение, убедиться, что в нём нет скрытых механизмов, изучать код, вносить улучшения и быть уверены, что проект сможет жить дальше, даже если я перестану его поддерживать.
(⬆ наверх)
kda2210.github.io — моя личная цифровая визитка: аватар, короткая подпись и способы связи. Это один статический HTML-файл — без сборки, без зависимостей — но с куда большим вниманием к деталям, чем обычно подразумевает такое описание: мягкая подсветка следует за курсором или пальцем и медленно дрейфует сама, когда её не трогаешь, карточка реагирует на наклон телефона, и есть ещё несколько мелочей, которые в странице из одного файла обычно просто не делают.
Это не попытка сделать шаблон или стартовый набор — это просто страница, которой я пользуюсь сам, и опубликована она потому, что не было причин держать её закрытой.
Онлайн: kda2210.github.io
Или локально — клонируйте репозиторий и откройте index.html в браузере. Собирать и устанавливать ничего не нужно.
Переключение языка с запоминанием выбора между визитами.
Мягкий свет следует за курсором или пальцем; в покое медленно дрейфует сам.
При наклоне телефона реагируют фон, подсветка и сама карточка — небольшой параллакс-эффект, реализованный минимальным количеством кода.
Генерация vCard прямо в браузере, без сервера.
Показывают местное время владельца, всегда актуальное.
Все анимации корректно отключаются для тех, кто не хочет их видеть.
Не скажу. Найдите сами.
Чистые HTML, CSS и JavaScript в одном файле — ничего не нужно устанавливать, собирать или обновлять.
(⬆ наверх)
Vanilla HTML, CSS и JavaScript — без фреймворков и сборщиков. Из платформенных API используются напрямую: Web Audio API (звук), Device Orientation API (гироскоп), CSS custom properties и @keyframes для анимаций.
index.html — сама визитка (эта страница)
supporters/index.html — общая страница «Стена поддержавших»
fioletovyj.jpeg — фоновое изображение
docs/ — скриншоты, используемые в этом README
LICENSE — лицензия MIT (только на код, см. ниже)
SECURITY.md — как сообщить о проблеме безопасности
Код открыт, можно форкнуть и подстроить под себя. Основное, что стоит поменять:
- ссылки на Telegram / почту / VK / телефон
- аватар и фоновое изображение
- часовой пояс в переменной
TIMEZONE - данные в генераторе vCard
- фразу-девиз и текст под ней
Нашли что-то похожее на настоящую проблему безопасности — не просто «можно было бы минифицировать CSS»? См. SECURITY.md, а не публичный issue.
Почему не React / генератор статики / хоть какая-то сборка?
Лендинг, на который смотрят пять секунд, не нуждается в сборочном пайплайне. Один файл проще прочитать, проще проверить и проще форкнуть.
Можно использовать твоё фото или контакты, если я форкну репозиторий?
Нет — см. примечание в разделе Лицензия. Замените на свои — в этом весь смысл форка.
Есть отслеживание или аналитика посетителей?
Никакой аналитики, куки или трекинга. Это статичный файл — никто не следит, кто его открывает.
Что за пасхалка?
👀
(⬆ наверх)
Код распространяется под лицензией MIT.
Используйте. Изучайте. Форкайте. Делайте свою версию.
Одно исключение: личные данные в этом репозитории — фото, номер телефона, почта, ссылки на соцсети — этой лицензией не покрываются. Это не код, а контактные данные конкретного человека, и смысла переиспользовать их кому-то, кроме меня, нет. Если форкаете — замените всё на своё, см. «Хочешь сделать себе такую же?».
Разработка таких приложений отнимает очень много времени. Я продолжаю этим заниматься, потому что мне искренне нравится создавать инструменты, которые делают повседневную жизнь немного лучше.
Если мои проекты кому-то помогают, добровольная поддержка позволяет мне уделять больше времени доработке существующих приложений и созданию новых. Это никак не меняет, как работают приложения — ни для кого.
Note
Поддержка полностью добровольна, а сумму вы выбираете сами — нет ни рекомендованной суммы, ни «слишком маленького» вклада. Она не открывает никаких дополнительных функций и никак не меняет работу приложений — это просто способ сказать «спасибо». ❤️
Если хотя бы одно из моих приложений оказалось вам полезным — значит, все часы, потраченные на его создание, того стоили. Спасибо, что пользуетесь моими проектами.
Если хотите поддержать разработку текущих и будущих проектов — выберите любой удобный для вас способ. Сумму всегда выбираете вы.
💳 Показать все способы поддержки
Разово — оплата картой (Россия)
Регулярно — ежемесячная поддержка
Это «ежемесячная поддержка», не подписка — как и разовый донат, она ничего не открывает и её можно остановить в любой момент.
Криптовалюта
₮ USDT (TRC20)
TJXTxpVagstdhLoZqigZsvyP2CLRzwdgiF
₿ Bitcoin
bc1q4p4zesf49zsufnwj3c3ux77fcxzslha4djukwp
◈ ETH (ERC20) / USDC (Base) / BNB (BEP20)
0x997250d092b4c2DF645BaA9CA512891f7C3DD351
☀️ SOL (Solana)
KidCphzsH8FwNqirSKidVJUEE8ehN8g2WQtNBmuMhPi
💎 TON
UQBHfMPQ2zQWno06shSoYWTxZHVl6zGPctfqBnsRQf4r0U4X
✕ XRP (Ripple)
r3e3iyezjaGAsB64aNEfGDgrPYmachHZyc
★ XLM (Stellar)
GBVZ3TMMJLWJ7RUCM2X6QQZADWHFLHEGDDVOT3TPLVLJFQOCEGVLUCU4
Другой способ?
Стена поддержавших — общая страница благодарности для всех моих проектов. Попадание туда — только по явному согласию и по умолчанию выключено: поддержка проекта сама по себе никогда никуда не добавляет ваше имя.
(⬆ наверх)
Всё написанное выше — про частных пользователей, и здесь ничего не меняется: проект остаётся на 100% бесплатным, без рекламы и полностью рабочим для любого, кто его скачает. Этот раздел не добавляет платный уровень — он просто описывает другой тип поддержки.
Организации — компании, фонды, работодатели, НКО — иногда хотят поддержать эту работу способом, недоступным частному человеку, или показать проект сразу большой группе людей. Вот как это может выглядеть:
- Спонсорское упоминание. Взнос даёт статичную строку «Поддержано [название]» здесь и на Стене поддержавших — не баннер, не всплывающее окно, ничего внутри самого приложения.
- Развёртывание для организации. Если хотите раздать проект своим сотрудникам, участникам или пользователям — можем оформить лицензию на организацию. Каждый человек по-прежнему получает его бесплатно, как и все остальные — платит организация, а не он.
Профинансируйте конкретное дополнение — новый язык, отдельную возможность — и получите постоянное именное упоминание за этот вклад после релиза. Функция всё равно выходит бесплатно для всех, как и всё остальное.
- Вы предлагаете фичу — или, если для этого проекта ведётся дорожная карта, выбираете её оттуда.
- Договариваемся об объёме, сроках и цене.
- Вы финансируете её — полностью или в складчину с другими спонсорами.
- Она выходит бесплатно для всех.
- Вы получаете упоминание «Профинансировано [название]» в changelog и здесь.
Примерная цена зависит от объёма — перевод обычно стоит немного, небольшая фича больше, что-то крупное — ещё больше. Всегда обсуждается и согласуется до начала работы, никакого фиксированного прайс-листа.
Сейчас ищем спонсоров
| Фича | Статус |
|---|---|
| — свободный слот — | ищем спонсора |
(Эта таблица заполняется, только когда появляется реальная фича для финансирования — честный пустой слот лучше выдуманного процента.)
У этой конкретной страницы нет очевидного применения для организаций — это моя личная визитка, а не инструмент. Но именно здесь живёт объяснение всех принципов целиком, так что если хочется спонсировать не один конкретный проект, а всю линейку сразу — пишите сюда.
Заинтересовало? kda2210@duck.com — укажите «Партнёрство» в теме письма.
(⬆ наверх)
«Бесплатно» всё ещё действует, если платит моя организация?
Да. Лицензия для организации оплачивает развёртывание в масштабе — она никогда не включает и не выключает функции для кого-либо. Каждый человек получает одну и ту же бесплатную полную версию — нашёл он проект сам или получил через организацию.
(⬆ наверх)
Спасибо, что дочитали до конца.
Независимо от того, решите вы поддержать проекты или нет, я искренне благодарен каждому, кто ими пользуется. Именно вы — причина, по которой они продолжают развиваться. ❤️