Budapesti Műszaki Szakképzési Centrum
Neumann János Informatikai Technikum
Szakképesítés neve: Szoftverfejlesztő és -tesztelő
Száma: 5-0613-12-03
Warning
This Project is intended to run on linux. See Why
- ✒️ About The Project
- 🧰 Technologies that we used
- 🏗️ Building the application
- ⌨️ Useful Commands
- 📂 Application ports
- 👤 PhpMyAdmin Users
⚠️ Running the Application On Windows- 🧪 Run Unit Tests
- 📖 Documentation
- 🛠️ Development Tools Used
- 🗣️ Collaboration tools
- 👥 Made By
Schedule For You is a versatile and user-friendly application designed to simplify your daily scheduling needs. The application is built to provide users with an easy-to-use platform to manage their schedules effectively. With Schedule For You, you can easily organize your personal and professional appointments in one convenient location.
- Make sure the project is not running in the
docker
- Navigate to
src/laravel-vue
- Run
./start-dev.sh
- Make sure the project is not running in the
docker
- Navigate to
src/laravel-vue
- Copy
.env.example
to.env
- Start the application
docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d --build
- Log into fish shell
docker-compose exec app fish
- Install
composer install
- Generate key
php artisan key:generate
- Migrate the database
php artisan migrate:fresh --seed
- Install node packages
npm i
- Start Vite dev mode
npm run dev
- Make sure the project is not running in the
docker
- Navigate to
src/laravel-vue
- Run
./start-prod.sh
- Make sure the project is not running in the
docker
- Navigate to
src/laravel-vue
- Copy
.env.example
to.env
- Start the application
docker-compose -f docker-compose.yml -f docker-compose.prod.yml up -d --build
- Log into fish shell
docker-compose exec app fish
- Install
composer install
- Generate key
php artisan key:generate
- Migrate the database
php artisan migrate:fresh --seed
- Install node packages
npm i
- Build the application
npm run build
- Remove Project Containers from docker
docker-compose down
- Go to
src/laravel-vue/docker-compose.yml
file - Uncomment this part of the code
- Try again
- Remove Project Containers from docker
docker-compose down
- Remove Mysql Folder
src/laravel-vue/docker/mysql
- Change the user ownership for the whole project
chown -R 1000:1000 <project name>
Examplechown -R 1000:1000 ScheduleForYou/
- Try Again
- Remove Project Containers from docker
docker-compose down
- Go to
src/laravel-vue/docker/nginx/conf.d/default.conf
file - Go to this line and rename app container name to your container name.
Example Fromfastcgi_pass app:9000
Tofastcgi_pass my_app_name:9000
- Try again
- Remove Project Containers from docker
docker-compose down
- Go to
src/laravel-vue/.env
file - Go to this line and rename db container name to your container name.
Example FromDB_HOST=db
ToDB_HOST=my_db_name
- Try again
- Remove Project Containers from docker
docker-compose down
- Go to
src/laravel-vue/.env
file - Add a new line
ASSET_URL=<your URL>
ExampleASSET_URL=https://example.com
- Try again
- Login to Fish as root
docker-compose exec -u root app fish
- Try again
- Initialize the project
- Run
docker-compose exec app fish
- Initialize the project
- Log Into Fish shell
docker-compose exec app fish
- Run
php artisan iseed <table name 1>,<table name 2>,<table name 3>
Examplephp artisan iseed users,personal_access_tokens
- Initialize the project
- Log Into Fish shell
docker-compose exec app fish
- Export
php artisan export:postman
- Import collection into Postman
- Initialize the project
- Log Into Fish shell
docker-compose exec app fish
- Run
php artisan register:admin
Usage:
register:admin [options]
Options:
-u, --username[=USERNAME]
-e, --email[=EMAIL]
-p, --password[=PASSWORD]
- Initialize the project
- Log Into Fish shell
docker-compose exec app fish
- Run
php artisan register:user
Usage:
register:user [options]
Options:
-u, --username[=USERNAME]
-e, --email[=EMAIL]
-p, --password[=PASSWORD]
- Website:
80
- Vite:
5000
(development only, In production doesn't work/used) - PhpMyAdmin:
5001
- DB (MySql):
33061
Warning
If these ports already in use on your machine then change them in .env file
- Username:
root
- Password:
root_password
- Username:
laravel
- Password:
laravel
- Initialize the project
- Open
.env
file - Change
DB_USERNAME=<simple username>
- Change
DB_PASSWORD=<simple user password>
- Change
MYSQL_ROOT_PASSWORD=<root passowrd>
Because the application uses many small files the coping between the Windows filesystem (NTFS) and Docker container filesystem (ext4) makes it run slower. By making the Os filesystem and the Docker containers filesystem the same the application will run much quicker.
For example, when we used wsl on Windows. We saw a speedup difference. Because wsl uses ext4 filesystem.
- Initialize the project
- Login To Fish shell
docker-compose exec app fish
- Run
php artisan test
- In Fish shell run
npm run dev
(Keep it running) - Try again
- Initialize the project
- Login To Fish shell as root
docker-compose exec -u root app fish
- Run
npm run test
- Initialize the project
- Login To Fish shell as root
docker-compose exec -u root app fish
- Run
npm run test:coverage
Download and view file.
- Initialize the project
- Build swagger docs
docker-compose exec -u root app php artisan l5-swagger:generate
- Navigate to site
<your ip>:<WEB_PORT>/api/docs
Examplelocalhost:80/api/docs
- Gáspár Róbert
- Palánki Szűcs Donát
- Balázs Bence