Шопфинити
Добро пожаловать в Shopfinity , передовое приложение для электронной коммерции, созданное с использованием новейших технологий. Shopfinity предлагает комплексное решение для онлайн-покупок, включая аутентификацию пользователей, управление продуктами, обработку платежей и интуитивно понятную панель администратора.
Функции
- Next.js 14 : использует новейший маршрутизатор приложений и функции Next.js для быстрого, оптимизированного для SEO и рендеринга веб-приложений на стороне сервера.
- MongoDB : база данных NoSQL для эффективного хранения и поиска данных.
- Auth.js (Next-Auth) : безопасные и масштабируемые решения для аутентификации.
- Stripe : интегрированный платежный шлюз для обработки транзакций.
- Панель администратора : легко управляйте продуктами, заказами и пользователями.
- Адаптивный дизайн : обеспечивает удобство использования на всех устройствах.
- Сбор адреса доставки : с легкостью собирайте и управляйте информацией о доставке.
- Tailwind CSS : для эффективного и настраиваемого стиля.
Начиная
Предварительные условия
- Node.js (v14.x или новее)
- npm (v6.x или новее) или Yarn (v1.x или новее)
- Экземпляр MongoDB
- Учетная запись Stripe и ключи API
Установка
Клонировать репозиторий
git clone https://github.com/yourusername/shopfinity.git
cd shopfinity
Установить зависимости
npm install
# or
yarn install
Переменные среды
Создайте файл .env.local
в корневом каталоге и добавьте следующие переменные среды:
MONGODB_URI=your_mongodb_connection_string
AUTH_SECRET=your_auth_secret
AUTH_GITHUB_ID=your_github_client_id
AUTH_GITHUB_SECRET=your_github_client_secret
AUTH_GOOGLE_ID=your_google_client_id
AUTH_GOOGLE_SECRET=your_google_client_secret
NEXT_STRIPE_SECRET_KEY=your_stripe_secret_key
NEXT_STRIPE_PUBLIC_KEY=your_stripe_public_key
STRIPE_WEBHOOK_SECRET=your_stripe_webhook_secret
RESEND_API_KEY=your_resend_api_key
NEXT_ADMIN_EMAIL=your_admin_email
AUTH_TRUST_HOST=true
Запустите сервер разработки
npm run dev
# or
yarn dev
Откройте http://localhost:3000 в браузере, чтобы увидеть результат.
Структура проекта
- /app : содержит все маршруты.
- /comComponents : повторно используемые компоненты React.
- /lib : конфигурация MongoDB, Stripe и аутентификации.
- /lib/models : модели Mongoose для MongoDB.
- /utils : служебные функции.
Использование
Аутентификация
- Пользователи могут зарегистрироваться и войти в систему, используя свою электронную почту или сторонних поставщиков (Google, GitHub и т. д.).
- Аутентифицированные пользователи могут получить доступ к своим профилям, истории заказов и многому другому.
Панель администратора
- Доступно только пользователям с правами администратора.
- Управление продуктами: добавляйте, редактируйте или удаляйте продукты.
- Управление заказами: просмотр деталей заказа, обновление статуса заказа.
- Управление пользователями: просмотр информации о пользователях, назначение ролей администратора.
Платежи
- Интегрирован с Stripe для безопасной обработки платежей.
- Пользователи могут добавлять товары в корзину и переходить к оформлению заказа.
- Сбор адреса доставки во время оформления заказа.
CSS попутного ветра
- Tailwind CSS используется для стилизации. Вы можете настроить стили, отредактировав файл
tailwind.config.js
и добавив свои собственные классы CSS в файл styles/globals.css
.
Содействие
Мы приветствуем вклады! Чтобы внести свой вклад, выполните следующие действия:
- Форкните репозиторий.
- Создайте новую ветку (
git checkout -b feature/your-feature
). - Внесите свои изменения.
- Зафиксируйте изменения (
git commit -am 'Add new feature'
). - Нажмите на ветку (
git push origin feature/your-feature
). - Создайте новый запрос на включение.
Лицензия
Этот проект распространяется по лицензии MIT. Дополнительные сведения см. в файле ЛИЦЕНЗИИ.
Благодарности
- Next.js
- МонгоБД
- Auth.js (следующая аутентификация)
- Полоса
- CSS попутного ветра
Живая демонстрация
Посмотрите живую демо-версию Shopfinity здесь.
Не стесняйтесь настраивать этот файл README.md
в соответствии с конкретными требованиями вашего проекта. Наслаждайтесь строительством с Shopfinity!