Schon — your store without the extra baggage. https://schon.io
Find a file
Egor fureunoir Gorbunov c8aaae4946 Features: 1) Add last_processing_response field to vendor model with FileField support.
Fixes: 1) Update translation strings for multiple locales to correct formatting issues.

Extra: 1) Update POT creation date across locale files; 2) Minor adjustments to translations for consistency.
2025-10-13 16:11:37 +03:00
.idea Features: None; 2025-10-06 12:06:33 +03:00
blog Features: 1) Add last_processing_response field to vendor model with FileField support. 2025-10-13 16:11:37 +03:00
core Features: 1) Add last_processing_response field to vendor model with FileField support. 2025-10-13 16:11:37 +03:00
Dockerfiles Features: 1) None; 2025-09-13 15:15:27 +03:00
evibes Features: 1) Add last_processing_response field to vendor model with FileField support. 2025-10-13 16:11:37 +03:00
monitoring Fixes: 1) Correct metrics path in Prometheus configuration. 2025-06-22 15:09:36 +03:00
payments Features: 1) Add last_processing_response field to vendor model with FileField support. 2025-10-13 16:11:37 +03:00
scripts Features: 1) Added new language options to User model's language field in vibes_auth; 2) Introduced localized title and content fields to Post model in blog; 3) Implemented multilingual support for various fields in Attribute, AttributeGroup, AttributeValue, Brand, Category, CategoryTag, and Product models in core; 2025-09-19 17:02:11 +03:00
storefront Features: 1) Add .gitkeep file under storefront directory; 2025-06-27 04:28:58 +03:00
vibes_auth Features: 1) Add last_processing_response field to vendor model with FileField support. 2025-10-13 16:11:37 +03:00
.dockerignore Features: 1) Prevent CRM trigger for instances with "PENDING" status; 2025-09-08 21:36:58 +03:00
.gitignore Features: 1) Update localized strings for da_DK translations in vibes_auth; 2) Update localized strings for zh_Hans translations in core; 2025-09-15 12:54:46 +03:00
CODEOWNERS Features: 1) Consolidated Dockerfile owners under @@maintainer for clarity; 2025-06-27 04:20:13 +03:00
docker-compose.yml Features: 1) Update all locale translations for token-related messages; 2) Update all locale translations with read-only Transaction ViewSet description; 3) Update all locale translations for reset password and token validations; 2025-10-06 15:58:30 +03:00
LICENSE Initial Commit 2025-04-29 22:40:30 +03:00
manage.py Initial Commit 2025-04-29 22:40:30 +03:00
nginx.conf Features: 1) Rename configuration file to nginx.conf; 2025-09-13 15:45:21 +03:00
poetry.lock Features: 1) Update dependencies to their latest versions, including anyio to 4.11.0, argon2-cffi-bindings to 25.1.0, asgiref to 3.9.2, bcrypt to 5.0.0, and several others. 2025-09-30 11:42:12 +03:00
pyproject.toml Features: 1) Update all locale translations for token-related messages; 2) Update all locale translations with read-only Transaction ViewSet description; 3) Update all locale translations for reset password and token validations; 2025-10-06 15:58:30 +03:00
README.md Features: 1) Add # noinspection PyUnusedLocal annotations to various viewsets, filters, and migrations to suppress unnecessary warnings; 2) Improve post method in BusinessPurchaseView to handle exceptions and inactive orders gracefully; 3) Refactor resolve_transactions and related resolvers in Graphene to include more specific typing hints; 4) Include defensive coding for attributes in several models to ensure type safety. 2025-10-01 17:26:07 +03:00

eVibes

LOGO

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

  • 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:

    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.

    git checkout storefront-<options: nuxt, next, sk, qwik >
    
  3. Generate your .env file. Check and confirm the contents afterward.

    • Windows
      scripts\Windows\generate-environment-file.ps1
      
    • Unix
      scripts/Unix/generate-environment-file.sh
      
  4. Install all the dependencies.

    • Windows
      scripts\Windows\install.ps1
      
    • Unix
      scripts/Unix/install.sh
      
  5. Spin it up.

    • Windows
      scripts\Windows\run.ps1
      
    • Unix
      scripts/Unix/run.sh
      
  6. Bring to production.

    Include nginx file to your nginx configuration, you really want to install and run Certbot 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):
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
    scripts\Windows\uninstall.ps1
    
  • Unix
    scripts/Unix/uninstall.sh
    

Contact

FAVICON