Initial commit: MVP+ wish board with FastAPI + Tailwind
This commit is contained in:
commit
cd945a6128
2277 files changed
+843095
No files matched your search
@@ -0,0 +1,160 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Generate random cards from a predefined list."""
|
||||
|
||||
import random
|
||||
import json
|
||||
from datetime import datetime
|
||||
|
||||
# Predefined list of card options
|
||||
CARD_OPTIONS = [
|
||||
"Изучить React и TypeScript",
|
||||
"Написать мобильное приложение",
|
||||
"Запустить свой SaaS-продукт",
|
||||
"Собрать первый миллион на крипто",
|
||||
"Путешествие в Японию",
|
||||
"Купить дом в деревне",
|
||||
"Научиться играть на гитаре",
|
||||
"Прочитать 50 книг за год",
|
||||
"Запустить YouTube канал",
|
||||
"Создать AI-бота для бизнеса",
|
||||
"Собрать свой первый ПК",
|
||||
"Выучить английский на C1",
|
||||
"Написать книгу",
|
||||
"Открыть кофейню",
|
||||
"Сделать татуировку",
|
||||
"Прыгнуть с парашютом",
|
||||
"Пройти марафон",
|
||||
"Выучить Python с нуля",
|
||||
"Собрать сервер для дома",
|
||||
"Запустить Telegram-бот",
|
||||
"Создать свой дизайн-систему",
|
||||
"Написать игру на Unity",
|
||||
"Собрать умный дом",
|
||||
"Выучить три языка",
|
||||
"Построить баню",
|
||||
"Купить машину мечты",
|
||||
"Собрать коллекцию винила",
|
||||
"Пройти курс по UX/UI",
|
||||
"Создать подкаст",
|
||||
"Написать приложение для заметок",
|
||||
"Собрать свой первый drone",
|
||||
"Выучить JavaScript",
|
||||
"Создать свой сайт-портфолио",
|
||||
"Научиться фотографировать",
|
||||
"Собрать свой первый сервер",
|
||||
"Запустить свой блог",
|
||||
"Создать свой мессенджер",
|
||||
"Выучить Rust",
|
||||
"Собрать свой первый VR-шлем",
|
||||
"Написать свой фреймворк",
|
||||
"Создать свою операционную систему",
|
||||
"Выучить машинное обучение",
|
||||
"Собрать свой первый робот",
|
||||
"Написать свой компилятор",
|
||||
"Создать свою базу данных",
|
||||
"Выучить ассемблер",
|
||||
"Собрать свой первый суперкомпьютер",
|
||||
"Написать свой процессор",
|
||||
"Создать свою криптовалюту",
|
||||
"Выучить квантовые вычисления",
|
||||
"Собрать свой первый квантовый компьютер",
|
||||
"Написать свой AI-модель",
|
||||
"Создать свою нейросеть",
|
||||
"Выучить нейронные сети",
|
||||
"Собрать свой первый GPU-кластер",
|
||||
"Написать свой GPU-драйвер",
|
||||
"Создать свою операционную систему для GPU",
|
||||
"Выучить FPGA-программирование",
|
||||
"Собрать свой первый FPGA-ускоритель",
|
||||
"Написать свой ASIC",
|
||||
"Создать свою квантовую программу",
|
||||
"Выучить квантовую физику",
|
||||
"Собрать свой первый квантовый датчик",
|
||||
"Написать свой квантовый алгоритм",
|
||||
"Создать свою квантовую сеть",
|
||||
"Выучить квантовую криптографию",
|
||||
"Собрать свой первый квантовый ретранслятор",
|
||||
"Написать свой квантовый протокол",
|
||||
"Создать свою квантовую облачную платформу",
|
||||
"Выучить квантовое машинное обучение",
|
||||
"Собрать свой первый квантовый симулятор",
|
||||
"Написать свой квантовый компилятор",
|
||||
"Создать свою квантовую IDE",
|
||||
"Выучить квантовое программирование",
|
||||
"Собрать свой первый квантовый отладчик",
|
||||
"Написать свой квантовый тестер",
|
||||
"Создать свою квантовую документацию",
|
||||
"Выучить квантовую математику",
|
||||
"Собрать свой первый квантовый калькулятор",
|
||||
"Написать свой квантовый solver",
|
||||
"Создать свою квантовую оптимизацию",
|
||||
"Выучить квантовую статистику",
|
||||
"Собрать свой первый квантовый генератор случайных чисел",
|
||||
"Написать свой квантовый шифр",
|
||||
"Создать свою квантовую стеганографию",
|
||||
"Выучить квантовую теорию игр",
|
||||
"Собрать свой первый квантовый аукцион",
|
||||
"Написать свой квантовый консенсус",
|
||||
"Создать свою квантовую блокчейн",
|
||||
"Выучить квантовую криптографию",
|
||||
"Собрать свой первый квантовый ретранслятор",
|
||||
"Написать свой квантовый протокол",
|
||||
"Создать свою квантовую облачную платформу",
|
||||
"Выучить квантовое машинное обучение",
|
||||
"Собрать свой первый квантовый симулятор",
|
||||
"Написать свой квантовый компилятор",
|
||||
"Создать свою квантовую IDE",
|
||||
"Выучить квантовое программирование",
|
||||
"Собрать свой первый квантовый отладчик",
|
||||
"Написать свой квантовый тестер",
|
||||
"Создать свою квантовую документацию",
|
||||
"Выучить квантовую математику",
|
||||
"Собрать свой первый квантовый калькулятор",
|
||||
"Написать свой квантовый solver",
|
||||
"Создать свою квантовую оптимизацию",
|
||||
"Выучить квантовую статистику",
|
||||
"Собрать свой первый квантовый генератор случайных чисел",
|
||||
"Написать свой квантовый шифр",
|
||||
"Создать свою квантовую стеганографию",
|
||||
"Выучить квантовую теорию игр",
|
||||
"Собрать свой первый квантовый аукцион",
|
||||
"Написать свой квантовый консенсус",
|
||||
"Создать свою квантовую блокчейн",
|
||||
]
|
||||
|
||||
def generate_random_cards(count=None):
|
||||
"""Generate random cards from the predefined list."""
|
||||
if count is None:
|
||||
count = random.randint(1, 10)
|
||||
|
||||
selected_cards = random.sample(CARD_OPTIONS, min(count, len(CARD_OPTIONS)))
|
||||
|
||||
result = {
|
||||
"generated_at": datetime.now().isoformat(),
|
||||
"count": len(selected_cards),
|
||||
"cards": selected_cards
|
||||
}
|
||||
|
||||
return result
|
||||
|
||||
def print_cards(cards_data):
|
||||
"""Print cards in a formatted way."""
|
||||
print(f"\n📋 Сгенерировано карточек: {cards_data['count']}")
|
||||
print(f"🕐 Время генерации: {cards_data['generated_at']}")
|
||||
print("-" * 50)
|
||||
|
||||
for i, card in enumerate(cards_data['cards'], 1):
|
||||
print(f"{i}. {card}")
|
||||
|
||||
print("-" * 50)
|
||||
print(f"💡 Всего в списке: {len(CARD_OPTIONS)} вариантов")
|
||||
|
||||
if __name__ == "__main__":
|
||||
# Generate random number of cards
|
||||
cards_data = generate_random_cards()
|
||||
print_cards(cards_data)
|
||||
|
||||
# Save to JSON
|
||||
with open('/tmp/wish_cards.json', 'w') as f:
|
||||
json.dump(cards_data, f, indent=2, ensure_ascii=False)
|
||||
print(f"\n💾 Сохранено в /tmp/wish_cards.json")
|
||||
Reference in new issue
Block a user