Skip to content

cacciutt/MTPlayer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Multitrack player

Multitrack player: Play multi-track songs with sound control!

This project was developed for the 5th year at Polytech Nice Sophia in the "Advanced web" module. This Vagrant development machine is provisioned and preconfigured to work with PHP and the Laravel framework out of the box. From nginx, php5.4 to composer it has got everything you need for Laravel 4.

Features / Stack

Ubuntu 12.04 64bit, Nginx, PHP5.5, php-fpm, composer, MySQL 5.5, Redis, supervisord, Sphinx, Node.js

Requirements

  • VirtualBox - Free virtualization software
  • Vagrant - Tool for working with VirtualBox images

Initial Setup

  • Install VirtualBox and Vagrant ( >= 1.3.0)
  • Run vagrant up inside the newly created directory. (the first time you run Vagrant it will fetch the virtual box image which is ~300mb. So this could take some time)
  • Vagrant will now use Puppet to provision the devbox (this could take a few minutes)
  • Point "devbox" and any other vhosts to 192.168.3.3 in your hosts file of your host OS. e.g. 192.168.3.3 devbox myproject.dev myotherproject.dev [HOSTNAME]

Shared Folders

The www folder is automatically synced to the VM (/var/www). This is why we clone our Laravel project into this folder. The sync works in both directions. So any files generated by Laravel (/storage folder for example) will be accessible from your host machine.

Credentials

  • SSH User: vagrant PW: vagrant
  • MySQL User: root PW: root (access MySQL through SSH)

Vagrant Commands

  • vagrant up starts the virtual machine and provisions it
  • vagrant ssh gives you shell access to the virtual machine
  • vagrant suspend will essentially put the machine to 'sleep' with vagrant resume waking it back up
  • vagrant reload will reload the VM. Do this when the VM config changed. For exmpale when you changed one of the configs (e.g. php.ini, sphinx.conf, etc. or after a git pull of this repo)
  • vagrant halt attempts a graceful shutdown of the machine and will need to be brought back with vagrant up
  • vagrant halt --force force shutdown if normal halt doesn't work
  • vagrant destroy you broke something? this will destroy the VM and reprovisions it again completely. Takes some time.

Database

Laravel is using a powerful database migration tool. To create the database used for the application, follow these steps.

  1. Create the database structure: php artisan migrate
  2. Fill the database with employee details: php artisan db:seed

Get the last version of the database: Run the .sql file in the root directory through mysql.

Project

To deploy the "nodejs" server which will respond to all clients in the project, you have run the "node server.js" command in the www/server folder. Client server is responding at the 12345 port (see nodejs server config file "server.js")

Final note

The goal of this project was to create a performant technology stack for the future years of web development, many features remains to be implemented. Have fun, and feel free to add some interesting stuff.

About

SI5 Advanced web project - Multi Track Player

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published