Fixes: None; Extra: 1) Update README.md with a new project description emphasizing simplicity and flexibility.
154 lines
No EOL
4 KiB
Markdown
154 lines
No EOL
4 KiB
Markdown
# eVibes
|
|
|
|

|
|
|
|
eVibes — your store without the extra baggage.
|
|
Everything works out of the box: storefront, product catalog, cart, and orders.
|
|
Minimal complexity, maximum flexibility — install, adjust to your needs, and start selling.
|
|
|
|
## Table of Contents
|
|
|
|
- [Features](#features)
|
|
- [Getting Started](#getting-started)
|
|
- [Prerequisites](#prerequisites)
|
|
- [Installation](#installation)
|
|
- [Configuration](#configuration)
|
|
- [Dockerfile](#Dockerfile)
|
|
- [nginx](#nginx)
|
|
- [.env](#env)
|
|
- [Usage](#usage)
|
|
- [Contact](#contact)
|
|
|
|
## Features
|
|
|
|
- **Modular Architecture**: Extend and customize the backend to fit your needs.
|
|
- **Dockerized Deployment**: Quick setup and deployment using Docker and Docker Compose.
|
|
- **Asynchronous Task Processing**: Integrated Celery workers and beat scheduler for background tasks.
|
|
- **GraphQL and REST APIs**: Supports both GraphQL and RESTful API endpoints.
|
|
- **Internationalization**: Multilingual support using modeltranslate.
|
|
- **Advanced Caching**: Utilizes Redis for caching and task queuing.
|
|
- **Security**: Implements JWT authentication and rate limiting.
|
|
|
|
## Getting Started
|
|
|
|
### Prerequisites
|
|
|
|
- Docker and Docker Compose are installed on your machine.
|
|
|
|
### Installation
|
|
|
|
1. Clone the repository:
|
|
|
|
```bash
|
|
git clone https://gitlab.com/wiseless.xyz/eVibes.git
|
|
cd eVibes
|
|
```
|
|
|
|
2. Choose the storefront. By default, `main` branch has no storefront included.
|
|
Skip this step if you're OK with that and plan to only use API or develop your own storefront.
|
|
|
|
```bash
|
|
git checkout storefront-<options: nuxt, next, sk, qwik >
|
|
```
|
|
|
|
3. Generate your .env file. Check and confirm the contents afterward.
|
|
|
|
- Windows
|
|
```powershell
|
|
scripts\Windows\generate-environment-file.ps1
|
|
```
|
|
- Unix
|
|
```bash
|
|
scripts/Unix/generate-environment-file.sh
|
|
```
|
|
|
|
4. Install all the dependencies.
|
|
|
|
- Windows
|
|
```powershell
|
|
scripts\Windows\install.ps1
|
|
```
|
|
- Unix
|
|
```bash
|
|
scripts/Unix/install.sh
|
|
```
|
|
|
|
5. Spin it up.
|
|
|
|
- Windows
|
|
```powershell
|
|
scripts\Windows\run.ps1
|
|
```
|
|
- Unix
|
|
```bash
|
|
scripts/Unix/run.sh
|
|
```
|
|
|
|
6. Bring to production.
|
|
|
|
Include `nginx` file to your nginx configuration, you really want to install and
|
|
run [Certbot](https://certbot.eff.org/) afterward!
|
|
|
|
## Configuration
|
|
|
|
### Dockerfile
|
|
|
|
Remember to change the
|
|
`RUN sed -i 's|https://deb.debian.org/debian|https://ftp.<locale>.debian.org/debian|g' /etc/apt/sources.list.d/debian.sources`
|
|
before running installment scripts
|
|
|
|
### nginx
|
|
|
|
Please comment-out SSL-related lines, then apply necessary configurations, run `certbot --cert-only --nginx`,
|
|
decomment previously commented lines and enjoy eVibes over HTTPS!
|
|
|
|
### .env
|
|
|
|
After .env file generation, you may want to edit some of its values, such as macroservices` API keys, database password,
|
|
redis password, etc.
|
|
|
|
## Usage
|
|
|
|
- Add the necessary subdomains to DNS-settings of your domain, those are:
|
|
|
|
1. @.your-domain.com
|
|
2. www.your-domain.com
|
|
3. api.your-domain.com
|
|
4. b2b.your-domain.com
|
|
5. prometheus.your-domain.com
|
|
|
|
- Add these lines to your hosts-file to use django-hosts functionality on localhost(*DEVELOPMENT ONLY*):
|
|
|
|
```hosts
|
|
127.0.0.1 api.localhost
|
|
127.0.0.1 b2b.localhost
|
|
```
|
|
|
|
Once the services are up and running, you can access the application at
|
|
`http://api.your-domain.com`(http://api.localhost:8000).
|
|
|
|
- **Django Admin**: `http://api.your-domain.com/` (will redirect to admin)
|
|
- **API Docs**:
|
|
- REST API: `http://api.localhost:8000/docs/swagger` or `http://api.localhost:8000/docs/redoc`
|
|
- GraphQL API: `http://api.localhost:8000/graphql/`
|
|
|
|
## Uninstall eVibes
|
|
|
|
You are not planning to do that, aren't you?
|
|
|
|
- Windows
|
|
```powershell
|
|
scripts\Windows\uninstall.ps1
|
|
```
|
|
- Unix
|
|
```bash
|
|
scripts/Unix/uninstall.sh
|
|
```
|
|
|
|
## Contact
|
|
|
|
- **Author**: Egor "fureunoir" Gorbunov
|
|
- Email: contact@fureunoir.com
|
|
- Telegram: [@fureunoir](https://t.me/fureunoir)
|
|
|
|
 |