Skip to content

Arranging the rental of game consoles – a lucrative business idea...

Notifications You must be signed in to change notification settings

EvgVol/rent_play

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔧 Home-Business

GitHub Python Django Tests codecov GitHub%20Actions CI docker NGINX PostgreSQL

Arranging the rental of game consoles – a lucrative business idea...

Today, there are numerous gamers who enjoy playing a variety of computer games, including children. However, not everyone can afford to purchase a modern game console due to its high cost. This is where entrepreneurs who rent out consoles come to the rescue. It's a profitable venture for them.

Structure

More information about the project can be found in the dynamic documentation generated using the module: drf-yasg. The documentation is available at: http://127.0.0.1:8000/redoc/.

Static documentation will be generated upon completion of the application development backend


  1. Basic project models
  2. User-permissions
  3. Administrator page
  4. Infrastructure
  5. Project services and pages
  6. Project launch
  7. Code styling
  8. Test coverage
  9. Status update

Basic project models

User

  • ✔️ Username
  • ✔️ First name
  • ✔️ Last name
  • ✔️ Email
  • ✔️ Phone number
  • ✔️ Image
  • ✔️ Role (rentor, user)
  • ⬜ Rating

Game console

  • ✔️ Author(rentor)
  • ✔️ Name
  • ✔️ Image
  • ✔️ Description
  • ✔️ Status (free, busy)
  • ✔️ Categories(slim, pro, xbox и пр.)
  • ✔️ Barcode
  • ✔️ Rating
  • ✔️ Rental price

Game

  • ✔️ Name
  • ✔️ Image
  • ✔️ Description
  • ✔️ Tags(single, multi - user, etc.)

Tag, Category

  • ✔️ Name
  • ✔️ HEX-color
  • ✔️ Slug

Order

  • ✔️ User
  • ✔️ Game console
  • ✔️ Date start
  • ✔️ Date end

⬆️Structure


User-permissions

Unauthorized user

  • 👁️ Allowed:
    • ✔️ Create an account
    • ✔️ View consoles
    • ✔️ View games
    • ⬜ View rental pages
    • ⬜ Filter games by tags
    • ⬜ Filter consoles by categories
  • 🚧 Запрещено:

Authorized-user

  • 👁️ Allowed:
    • ⬜ Has the rights of an unauthorized user
    • ✔️ Logging into the system with their own login and password
    • ✔️ Logging out of the system (logging out)
    • ✔️ Changing password
    • ✔️ Creating orders
    • ⬜ Tracking the status of orders
    • ✔️ Adding / removing to favorites
    • ✔️ Leaving reviews
    • ✔️ Leaving comments on reviews
    • ☑️ Subscribing to lessors
    • ⬜ Evaluating lessors
  • 🚧 Запрещено:
    • ☑️ Подписываться на себя и других пользователей

Rentor

  • 👁️ Allowed:
    • ⬜ Обладает правами авторизованного пользователя
    • ✔️ Размещать игровые приставки
    • ⬜ Управлять заказами (отменять, редактировать дату, отмечать как завершенный)
    • ⬜ Оценивать арендателей
  • 🚧 Запрещено:
    • ☑️ Подписываться на кого-либо

⬆️Structure


Administrator page

⬆️Structure


Infrastructure

В репозитории есть папки backend, badges, tests:

  • В папке backend — файлы, необходимые для сборки бэкенд приложения.
  • В папке tests — файлы, необходимые для тестирования бэкенд приложения.
  • В папке badges — бейджи, необхдимые для добавления в файл README

Continuous integration with GitHub Actions

Для работы с Workflow добавить в Secrets GitHub переменные окружения для работы:

CODECOV_TOKEN #Секретный токен сервиса: https://codecov.io

Workflow состоит из следующих этапов:

  • Проверка кода на соответствие PEP8
  • Тестирование приложения backend посредством pytest

⬆️Structure


Project services and pages

⬆️Structure


Project launch

  1. Клонирование репозитория
git clone https://github.com/EvgVol/rent_play.git

Откройте в своем редакторе кода локальный проекта из репозитория GitHub, клонированного ранее

  1. Развертывание в репозитории виртуального окружения
python3 -m venv venv
  1. Запуск виртуального окружения
source venv/Scripts/activate
  1. Установка зависимостей в виртуальном окружении
pip install -r requirements.txt
  1. Выполнение миграций
python manage.py migrate
  1. Выполните импорт данных (категории, теги, периоду) в базу данных
python manage.py importcsv
  1. Запустите проект
python manage.py runserver

⬆️Structure


Code styling

Код соответствует PEP 8

⬆️Оглавление


Test coverage

codecov

⬆️Structure


Team developers


Status update

Иконка Статус
☑️ Реализовано и проверено
Реализовано полностью
✔️ Реализовано частично
Не реализовано
⁉️ Возникли трудности
🆘 Нужна помощь

⬆️Structure