Это проект, который был посвящен игре Escape from Tarkov. На сайте были реализованы справочник лута, таблицы трейдов, списки ключей от дверей а также интерактивные карты с обозначениями мест - где можно найти лут. Разработка проекта ведется по сей день.
OTHER License
Wiki Tarkov - Escape From Tarkov. 10 2017., . 2022. . : https://wiki-tarkov.ru
Yii2, - Nginx. MariaDb. CI/CD master GitHub Bitbucket ( , GitHub). docker .
, ( ) - AdFox.
:
Escape From Tarkov. , 4- .
, .
, .
, , JS .
Yii2 , .
, 2 - , JS
Api ( )
Yii2 basic, , .
:
common ( Yii2 Advanced ),
common :
controllers - Yii'
services - ,
interfaces -
helpers - Yii'
models - Active Record
common env.php , DotEnv , .
:
config/web bootstrap.php, , .
:
require __DIR__ . '/config/bootstrap.php';
yii.php :
$application = new yii\console\Application($config);
$exitCode = $application->run();
, , Url , .
, Url , , :
common/controllers/AdvancedController - Yii ( )
common/controllers/AdminController - Yii ( )
common/controllers/ControllerRoutesTrait -
, , , , Url .
ControllerRoutesTrait 2 :
public static function getUrlRoute(string $action, array $params = []): array
public static function routeId(string $action): string
getUrlRoute , controllerId/ActionId, , ( ).
routeId - , , ( ).
.. , config/web.php , config routes.php , config/web/routes.php:
<?php
/** routes - */
use app\modules\admin\controllers\DefaultController;
use app\modules\admin\controllers\ModeratorController;
use app\controllers\SiteController;
return [
'admin/login' => DefaultController::routeId(DefaultController::ACTION_LOGIN),
'admin/logout' => DefaultController::routeId(DefaultController::ACTION_LOGOUT),
'clans' => ClanController::routeId(ClanController::ACTION_INDEX),
'loot' => LootController::routeId(LootController::ACTION_MAINLOOT),
'' => SiteController::routeId(SiteController::ACTION_INDEX),
];
, AdvancedController AdminController .
, action, :
public function actionTest()
:
const ACTION_TEST = 'test'
ExampleController, route :
'testing-page' => ExampleController::routeId(ExampleController::ACTION_TEST)
, - url , (, IDE).
, , , .
:
docker-compose exec -T app php yii migrate
Unit Codeception. 792 . , , .
Unit . ( , , ). , , - Redis:
docker-compose exec -T redis redis-cli flushall
docker-compose exec -T app php vendor/bin/codecept run
:
.. , Bitbucket Github Snyk . .
Snyk 2 :
, composer, , .. Snyk , Snyk.
, docker docker-compose, Docker Desktop.
Git.
Docker: https://www.docker.com/products/docker-desktop/ Git: https://git-scm.com/download
.
, :
git clone https://github.com/V-Power-Inc/wiki-tarkov.git
.env ( ):
# Environment
ENVIRONMENT=dev
# Boolean value of project status
DEBUG_STATUS=false
# Database
# ---------------------
DB_DSN=mysql:host=localhost;dbname=dev_db
DB_NAME=dev_db
DB_USER=usr_test
DB_PASSWORD=TestPass
DB_CHARSET=utf8
# Database - unit, functional, other tests
DB_TEST_DSN=mysql:host=localhost;dbname=for_test_db
DB_TEST_NAME=for_test_db
DB_TEST_USER=usr_test
DB_TEST_PASSWORD=TestPass
DB_TEST_CHARSET=utf8
# Redis Host
REDIS_HOST='localhost'
# Domain Credentials
DOMAIN_PROTOCOL=http://
DOMAIN=localhost
, . localhost, Docker.
(Docker ):
docker-compose up -d --build
, :
, ** localhost**. localhost , docker-compose.yml 80 , .
, :
( )
docker exec -t tarkov_db mysql -u root -pTestPass --execute "use dev_db; CREATE DATABASE for_test_db; GRANT SUPER ON . TO 'usr_test'@'%' WITH GRANT OPTION; GRANT ALL PRIVILEGES ON dev_db.* TO 'usr_test'@'%' WITH GRANT OPTION; GRANT ALL PRIVILEGES ON for_test_db.* TO 'usr_test'@'%' WITH GRANT OPTION;"
docker-compose exec -T app php yii migrate --interactive=0
docker-compose exec -T app php yii migrate --db db_test --interactive=0
, db 2 ( ).
.
( CRUD ):
web/img/upload
web/img/admin
, , .github/workflows/Repo-Actions.yml - .
/admin - , admins, ( - sha1). .
, , CI/CD, .
, .. pet-project - , .
, **dev**, **contribute_ **, .
**dev** ( master) , .
Thank you to all of our awesome contributors!
Made with contrib.rocks.