Cryde / musicall

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

codecov

MusicAll is a platform where people can share videos, articles, courses, search musicians or band and talk with them.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development.

This project use:

  • PHP 8.2
  • Symfony 6.4
  • MariaDB version 10.6
  • node 20
  • VueJS 2.7

Installing

Setup Docker

You will need Docker to run this project. Follow the Docker installation guide (https://docs.docker.com/get-docker/) to have it on your environment.

Once it's done, go in the project root and run

docker compose up -d

It will pull and build all the required images to run MusicAll

If you need to rebuild image (after an update for instance)

docker compose up --build

Setup the project

Add musicall.localhost and musicall.test to your /etc/hosts

127.0.0.1 	musicall.localhost musicall.test

Install PHP vendor

docker compose run --rm php-musicall composer install

You will have to initialize your JWT configuration.
Follow the instructions here (only "Generate the SSH keys" part) : https://github.com/lexik/LexikJWTAuthenticationBundle/blob/2.x/Resources/doc/index.rst#generate-the-ssl-keys
Note: you will have to run some php command inside docker (eg: docker compose run --rm php-musicall bin/console lexik:jwt:generate-keypair)

Configure you .env.local file (I only put important values here) :

APP_ENV=dev
APP_SECRET=thisissecretchangeit
DATABASE_URL=mysql://user:password@db.musicall:3306/musicall
JWT_SECRET_KEY=%kernel.project_dir%/config/jwt/private.pem
JWT_PUBLIC_KEY=%kernel.project_dir%/config/jwt/public.pem
JWT_PASSPHRASE=thepassphrase

Install JS deps

docker compose run --rm node npm ci

Run the migrations

docker compose run --rm php-musicall bin/console doctrine:migration:migrate

Start the assets watcher

npm run dev-server

You can now access http://musicall.localhost

TODO

  • Create fixtures
  • Https

About


Languages

Language:PHP 66.4%Language:Vue 23.7%Language:JavaScript 7.9%Language:CSS 0.8%Language:SCSS 0.5%Language:Twig 0.4%Language:Shell 0.3%Language:Dockerfile 0.2%