A criação da LMS vai dar ênfase em uma facilidade maior para que outros desenvolvedores Laravel entendam como é a modelagem de tudo.
Essa aplicação ainda está em desenvolvimento, caso você queira integrar ao time, mande um e-mail para os mantenedores!
danielhe4rt: hey@danielheart.dev
- [] Base do Projeto
- Tecnologias:
- Bootstrap 4/5
- Azure Stream
- Docker
- [] Larastan
- Tecnologias:
- [] Autenticação
- Métodos base: Sessão
- [] Métodos custom: Google, Github e Twitch
- [] Cursos
- [] Modelagem Admin
- Pagina de Criação de cursos
- Pagina de Criação de módulos
- [] Ordenação de módulos
- Pagina de Criação de Lições
- Lições de Video
- Lições em Artigos
- [] Lições em Quiz
- [] Ordenação de Lições
- [] Modelagem User
- [] Pagina inicial com todos os cursos
- Pagina principal de um curso
- Pagina para assistir o curso
- [] Modelagem Admin
- [] Subscrição
- [] Método de pagamento:
- [] Stripe
- GerenciaNet
- [] Pagarme
- [] Paypal
- [] Formulário não pagante: Se não houver condições de comprar, deixa o salve que a gente libera!
- [] Método de pagamento:
- Gameficação
- [] Leveling
- [] Ao assistir uma aula
- [] Ao responder um questionário
- [] Tabela de EXP: definir um algoritmo de leveling pra não se preocupar com banco
- [] Leveling
- Landing Page
- Layout Base com integrações
- Clone este repositório usando esse comando:
$ git clone https://github.com/DanielHe4rt/basement-lms
- Acesse a pasta do projeto em seu terminal:
$ cd basement-lms
- Rode o comando de instalação das bibliotecas PHP do composer para que possamos ter todas nossas depedências do projeto instaladas.
$ composer install
- Rode o comando de instalação das bibliotecas do Node para que possamos ter todas nossas depedências do front-end instaladas.
$ npm i
$ npm run watch
- Copie o arquivo de configuração de exemplo para um arquivo de configuração real:
$ cp .env.example .env
- (Opcional) caso não vá utilizar o Sail como recomendamos é necessário mudar os valores em .env para que ele possa acessar seu Banco de Dados, os valores são:
- DB_DATABASE: Que é o nome do Banco de Dados (BD) que você precisa criar previamente.
- DB_USERNAME: O nome do usuário do seu BD.
- DB_PASSWORD: A senha desse usuário. Configurações padrão (de exemplo):
DB_DATABASE=lms_laravel
DB_USERNAME=root
DB_PASSWORD=root
Caso precise de ajuda com o terminal você pode consultar o zsh4noobs ou o wsl4noobs.
Importante: Certifique-se que as portas 80 e 3306 do seu computador estão liberadas, caso seja necessário desative o serviço de BD e Apache, caso contrário poderão ocorrer falhas por essas portas estarem ocupadas no processo de subir a imagem do Sail.
- Execute esse comando para instalar a ferramenta Sail em seu projeto Laravel
$ php artisan sail:install
Obs: Preste atenção que Laravel Sail irá trocar a chave
DB_USERNAME
eDB_PASSWORD
paraDB_USERNAME=sail
eDB_PASSWORD=password
. Não mude esses valores.
- Selecione
mariadb
oumysql
conforme a preferência. - Crie um alias em seu ~/.bashrc (ou seu ~/.zshrc caso use zsh).
$ echo 'alias sail=\'bash vendor/bin/sail\'' >> ~/.bashrc
Obs 1: Caso você não crie o alias 'sail' será necessário utilizar 'bash vendor/bin/sail' seguido do comando que deseja usar toda vez que quiser usar um comando.
Obs 2: Dependendo seu sistema e suas políticas de segurança pode ser que seja necessário usar o comando sudo para elevar as permissões.
4. Adicione algumas chaves necessárias para que o docker possa fazer a build da imagem, para isso rode os comandos.
```terminal
$ export APP_SERVICE=${APP_SERVICE:-"laravel.test"}
$ export DB_PORT=${DB_PORT:-3306}
$ export WWWUSER=${WWWUSER:-$UID}
$ export WWWGROUP=${WWWGROUP:-$(id -g)}
(Isso é devido a uma falha de configuração na imagem padrão do Laravel que o Sails usa e é explicado aqui pode ser que futuramente não seja necessário.)
- Agora use o comando para subir sua aplicação.
$ sail up -d
Pode ser necessário sudo.
Caso seja mudado algo em
docker-compose.yml
é recomendado que use o comandosail up -d --build
para fazer a build dos novos containers e em seguidasail up
.
- Precisamos entrar no nosso Docker e dar as permissões de escrita para as pastas de log e storage do Laravel:
$ sail root-shell
# chmod -R 777 storage
# chmod -R 777 bootstrap/cache
Pronto! Agora basta acessar http://localhost/ e começar os trabalhos.
Email settings (using a provider like Mailgun, Amazon SES, etc)
-
Run
sail artisan key:generate
-
Run
sail artisan migrate
-
For Auth API (to configure Laravel Passport), run:
sail artisan passport:install
-
Run
sail npm install
-
Run
sail artisan db:seed
-
Start the Websocket server (for chat functionality)
sail artisan websockets:serve
The application is running on localhost:8000