CryptoIkra — Sklep Telegram + landing page + WebApp “Koło fortuny”
CryptoIkra — kompleksowy system sprzedaży i mechanik promocyjnych „pod klucz”: bot Telegram + strona docelowa + aplikacja internetowa + API + baza danych + wdrożenie produkcyjne. Użytkownik składa zamówienie w Telegramie (katalog → koszyk → zamówienie), a mechanika promocyjna „Koło fortuny” działa jako aplikacja internetowa Telegram z rejestracją wyników na serwerze w PostgreSQL (nie tylko losowość na froncie). Wszystkie części są uruchomione na VPS pod jedną domeną z HTTPS i automatycznym uruchamianiem usług.
Co zostało zrealizowane
1) Bot Telegram (Python / Aiogram + PostgreSQL)
Katalog produktów według kategorii, karty produktów, wybór wariantów/gramatur.
Koszyk: dodawanie/usuwanie, zmiana ilości, ochrona przed błędami (przechodzenie „na minus”, powtarzające się kliknięcia).
Składanie zamówienia: zbieranie danych klienta, zapis zamówienia i jego składu w bazie danych.
System bonusowy (monety): naliczanie/odliczanie, wyświetlanie salda, zdarzenia.
Wsparcie mediów: zdjęcia + tekst + przyciski inline (jednolity styl wiadomości).
Funkcje administracyjne: wysyłki i zarządzanie, stabilizacja struktury projektu i importów.
2) Strona docelowa (React + TypeScript + Vite)
Strona marketingowa projektu na domenie.
Sekcje: opis produktu, zalety, scenariusze użycia, CTA-przejście do Telegramu.
Kompilacja i wdrożenie statyki, poprawne działanie pamięci podręcznej dla aktualizacji.
3) Aplikacja internetowa „Koło fortuny” (React + TypeScript + Vite)
Mini aplikacja Telegram: koło nagród, UI wyników, modale.
Integracja z API/Bazą danych — rejestracja wyników spinów i naliczanie nagród/bonusów.
Przygotowana logika pod prawdopodobieństwa wypadających nagród (wagi).
4) Usługa API (FastAPI + Uvicorn)
Backend dla aplikacji internetowej: punkty końcowe do pobierania danych i zapisywania spinów.
Połączenie z PostgreSQL (jedna baza z botem).
Uruchomiona jako oddzielna usługa i proxy przez Nginx pod /api/.
5) Infrastruktura i wdrożenie (VPS / Ubuntu)
Domena i DNS, HTTPS przez Certbot (Let’s Encrypt) + automatyczne odnawianie.
Nginx reverse-proxy na jednej domenie:
/ — strona docelowa
/wheel/ — aplikacja internetowa
/api/ — API
Autostart przez systemd: bot Telegram i API.
PostgreSQL: schemat/prawa/połączenia usług.
Skonfigurowana pamięć podręczna: HTML bez pamięci podręcznej, statyka (JS/CSS) z długą pamięcią podręczną i wersjonowaniem.
Trudności i rozwiązania
Stabilizacja logiki koszyka i zamówienia (zamówienie poprawnie się kończy, koszyk nie ginie).
Ochrona przed typowymi błędami API Telegram (wiadomość nie jest modyfikowana), powtarzającymi się działaniami i niepoprawnymi stanami.
Jedna domena dla kilku aplikacji bez konfliktów (strona docelowa + aplikacja internetowa + API).
Rzeczywista serwerowa rejestracja wyników promocyjnych w bazie danych.
Stos
Python, Aiogram, FastAPI, asyncpg/SQLAlchemy (async), PostgreSQL, React, TypeScript, Vite, Nginx, Certbot, systemd, Ubuntu VPS.
#telegrambot #aiogram #fastapi #react #typescript #postgresql #nginx #vps #webapp #landing #ecommerce #devops
Co zostało zrealizowane
1) Bot Telegram (Python / Aiogram + PostgreSQL)
Katalog produktów według kategorii, karty produktów, wybór wariantów/gramatur.
Koszyk: dodawanie/usuwanie, zmiana ilości, ochrona przed błędami (przechodzenie „na minus”, powtarzające się kliknięcia).
Składanie zamówienia: zbieranie danych klienta, zapis zamówienia i jego składu w bazie danych.
System bonusowy (monety): naliczanie/odliczanie, wyświetlanie salda, zdarzenia.
Wsparcie mediów: zdjęcia + tekst + przyciski inline (jednolity styl wiadomości).
Funkcje administracyjne: wysyłki i zarządzanie, stabilizacja struktury projektu i importów.
2) Strona docelowa (React + TypeScript + Vite)
Strona marketingowa projektu na domenie.
Sekcje: opis produktu, zalety, scenariusze użycia, CTA-przejście do Telegramu.
Kompilacja i wdrożenie statyki, poprawne działanie pamięci podręcznej dla aktualizacji.
3) Aplikacja internetowa „Koło fortuny” (React + TypeScript + Vite)
Mini aplikacja Telegram: koło nagród, UI wyników, modale.
Integracja z API/Bazą danych — rejestracja wyników spinów i naliczanie nagród/bonusów.
Przygotowana logika pod prawdopodobieństwa wypadających nagród (wagi).
4) Usługa API (FastAPI + Uvicorn)
Backend dla aplikacji internetowej: punkty końcowe do pobierania danych i zapisywania spinów.
Połączenie z PostgreSQL (jedna baza z botem).
Uruchomiona jako oddzielna usługa i proxy przez Nginx pod /api/.
5) Infrastruktura i wdrożenie (VPS / Ubuntu)
Domena i DNS, HTTPS przez Certbot (Let’s Encrypt) + automatyczne odnawianie.
Nginx reverse-proxy na jednej domenie:
/ — strona docelowa
/wheel/ — aplikacja internetowa
/api/ — API
Autostart przez systemd: bot Telegram i API.
PostgreSQL: schemat/prawa/połączenia usług.
Skonfigurowana pamięć podręczna: HTML bez pamięci podręcznej, statyka (JS/CSS) z długą pamięcią podręczną i wersjonowaniem.
Trudności i rozwiązania
Stabilizacja logiki koszyka i zamówienia (zamówienie poprawnie się kończy, koszyk nie ginie).
Ochrona przed typowymi błędami API Telegram (wiadomość nie jest modyfikowana), powtarzającymi się działaniami i niepoprawnymi stanami.
Jedna domena dla kilku aplikacji bez konfliktów (strona docelowa + aplikacja internetowa + API).
Rzeczywista serwerowa rejestracja wyników promocyjnych w bazie danych.
Stos
Python, Aiogram, FastAPI, asyncpg/SQLAlchemy (async), PostgreSQL, React, TypeScript, Vite, Nginx, Certbot, systemd, Ubuntu VPS.
#telegrambot #aiogram #fastapi #react #typescript #postgresql #nginx #vps #webapp #landing #ecommerce #devops