Skip to content

Latest commit

 

History

102 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎉 Joke Generator

Joke Generator — це інтерактивний веб-додаток, який дозволяє користувачам генерувати випадкові жарти, додавати свої власні, зберігати улюблені та керувати ними через адмін-панель.

Проєкт складається з Frontend на React та Backend на Node.js/Express, з базою даних MongoDB для зберігання жартів. Також інтегрований TelegramBot, який сповіщає про нові жарті, що додаються користувачами.


🚀 Основні можливості

Генерація жартів

  • На головній сторінці є кнопка Generate, яка отримує випадковий жарт із бази даних через бекенд.
  • Жарти зберігаються у MongoDB і постійно оновлюються.

Додавання власних жартів

  • Користувач може додати свій жарт на сторінці Add Joke.
  • Після відправки жарту надходить повідомлення на TelegramBot, де адміністратор може його перевірити та прийняти.
  • Жарти можна легко модерувати через адмін-панель.

Адмін-панель

  • Прийом нових жартів від користувачів.
  • Редагування та видалення існуючих жартів.
  • Додавання жартів вручну безпосередньо через панель.
  • Система логінізації для безпечного доступу адміністратора.

Улюблені жарти

  • Кожен згенерований жарт має іконку-зірочку ⭐.
  • Натиснувши на неї, жарт додається у LocalStorage браузера.
  • На сторінці Favorite Jokes можна переглянути та видалити всі збережені жарти.

🛠 Технології

  • Frontend:
    • React
    • Tailwind CSS
    • React Router
  • Backend:
    • Node.js
    • Express
    • MongoDB (Mongoose)
  • Додатково:
    • TelegramBot API для повідомлень про нові жарті
    • LocalStorage для збереження улюблених жартів

⚡ Функціонал користувача

  1. Генерувати випадкові жарти на головній сторінці.
  2. Додавати власні жарти та отримувати сповіщення через TelegramBot.
  3. Зберігати улюблені жарти у LocalStorage.
  4. Переглядати та видаляти свої улюблені жарти на сторінці Favorites.

🔧 Функціонал адміністратора

  1. Перегляд та прийом нових жартів від користувачів.
  2. Редагування та видалення жартів у базі даних.
  3. Додавання нових жартів вручну.
  4. Логінізація для безпечного доступу до адмін-панелі.

📦 Встановлення та запуск

  1. Клонувати репозиторій:
git clone https://github.com/yourusername/random-joke-generator.git

2. Встановити залежності:
# Для фронтенду
npm install

# Для бекенду
cd server
npm install

3. Налаштувати .env файл для бекенду:

MONGO_URI=your_mongodb_connection_string
TOKENBOT=your_telegram_bot_token
ADMIN_CHAT_ID=your_admin_password
JWT_SECRET=your_jwt_secret
API_URL=http://your_domain:port/api
PORT=server_port

3. Налаштувати .env файл для фронтенду:

VITE_API_URL=http://your_domain:port/api

5. Запуск проекту:

# Запуск фронтенду
npm run dev

# Запуск бекенду
cd server
npm run dev

About

A full-stack Joke Generator app with Express, MongoDB, and React. Supports joke submission, validation, and admin approval via Telegram bot.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages