- 💬 Чат в реальном времени с отображением онлайн
- ⭐ Избранное с сохранением и быстрым доступом
- ➕🗑️ Добавление, удаление товаров
- 📰 Просмотр и сортировка по категориям
- 🔢 Подсчёт просмотров товаров и постов
- 🔒 Вход по почте с подтверждением через код
- 🔔 Email-уведомления о новых сообщениях
- 🎞 Красивые и адаптивные слайдеры изображений
- 🏷️ Мета-теги
🅰️ Angular 19- 🌐 Angular Router
- 🎭 Ngx Emoji Mart + emoji-picker-element
- 📡 Axios
- 🔔 Ngx Sonner
- 🔊 Socket.IO Client
- 🧠 RxJS
- 🧪 Jasmine + Karma
- 🚂 Express.js
- 💾 MongoDB + Mongoose
- 🔐 JWT (jsonwebtoken)
- 🛡 Express Rate Limit
- 📩 Nodemailer
- 🧱 Multer (загрузка файлов)
- 🔄 Nodemon
- 🧂 bcrypt
- 🔌 Socket.IO
- 🆔 UUID
- 🌍 CORS + dotenv
-
Установите Node.js (рекомендуется версия 18+).
-
Склонируйте репозиторий:
git clone https://github.com/magasov/autoru.git cd autoru -
В корне backend-проекта создайте файл .env и добавьте в него следующие переменные окружения (без кавычек и с вашими значениями):
JWT_SECRET=секретный_ключ_для_токенов_JWT EMAIL_USER=ваш_электронный_адрес_для_отправки_писем EMAIL_PASS=пароль_приложения_от_гугл_или_другой_почты (снизу ссылка для генерации) MONGO_URI=строка_подключения_к_вашему_кластеру_MongoDB PORT=8080 CLIENT_URL=http://localhost:4200
⚠️ Генерация пароля для отправки писем
https://myaccount.google.com/apppasswords
-
Установите зависимости и запустите backend:
cd api npm install npm run dev -
Запустите frontend (в другом терминале):
cd ../client npm install npm start -
Откройте в браузере: http://localhost:4200
⚠️ Дисклеймер
Данный проект является неофициальной копией Auto.ru, созданной исключительно в учебных целях.
Он не связан с оригинальным сайтом Auto.ru, брендом, компанией "Яндекс" или её дочерними организациями.
Проект не используется в коммерческих целях и предназначен только для получения практического опыта в fullstack-разработке с использованием Angular и Node.js.