Skip to content

Instantly share code, notes, and snippets.

View acacha's full-sized avatar

Sergi Tur Badenas acacha

View GitHub Profile
@acacha
acacha / ItinerariFormatiuTallStack.md
Last active May 15, 2023 08:08
Itinerari formatiu aplicacions TALL Stack

Aquest document pretén ser un guió dels passos a seguir per començar a aprendre des de zero Laravel, i per tant PHP, programació orientada a Objectes i bones pràctiques en l'escriptura de codi: SOLID, IOC Container, Injecció de depencències, Test Driven Development. Un cop coneixem Laravel, que és una eina de backend, es recomanable aprendre la TALL Stack per tal de poder crear aplicacions FULL stack, és a dir tant de backend com de frontend (navegadors/Javascript) i a més que aquestes aplicacions siguin reactives com si utilitzesim frameworks Javascript com Vue, Angular o React, però gràcies a Livewire i AlpineJS treballant sobretot amb codi PHP i HTML i utilitzar el mínim Javascript. Finalment Tailwind serà el UI framework per crear la UI, el Look&Feel de la nostra app.

Reactive Laravel apps amb stack TALL

Què és TALL?

Parts de la pila (stack):

  • Tailwind CSS: https://tailwindcss.com/ . UI Framework, s'encarregarà de la presentació de les vistes. No cal dominar CSS (tot
@acacha
acacha / ExempleDropdown.html
Created November 19, 2020 19:33
ExempleDropdown.html
{{-- Dropdown tasques--}}
<div class="hidden sm:flex sm:items-center sm:ml-6">
<x-jet-dropdown align="right" width="48">
<x-slot name="trigger">
<button class="flex items-center text-sm font-medium text-gray-500 hover:text-gray-700 hover:border-gray-300 focus:outline-none focus:text-gray-700 focus:border-gray-300 transition duration-150 ease-in-out">
<div>{{ __('Tasques') }}</div>
<div class="ml-1">
<svg class="fill-current h-4 w-4" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20">
<path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd" />
</svg>
@acacha
acacha / CanBeCanceledByEscKey.js
Last active November 13, 2020 18:14
CanBeCanceledByEscKey Vue Mixin
export default {
// SSR mount and Before mount are not executed in SSR
beforeMount() {
const escapeHandler = (e) => {
if (e.key === 'Escape') {
this.$emit('cancel')
}
}
document.addEventListener('keydown', escapeHandler)
this.$once('hook:destroyed', () => {
@acacha
acacha / addAllPrivileges.sh
Created May 25, 2020 12:21
addAllPrivileges.sh
#!/bin/bash
#$ sudo net rpc rights list -Uroot -I192.168.1.7
#Enter root's password:
# SeMachineAccountPrivilege Add machines to domain
# SeTakeOwnershipPrivilege Take ownership of files or other objects
# SeBackupPrivilege Back up files and directories
# SeRestorePrivilege Restore files and directories
# SeRemoteShutdownPrivilege Force shutdown from a remote system
# SePrintOperatorPrivilege Manage printers
@acacha
acacha / MOODLE.md
Created March 29, 2020 09:46
Configuració de Moodle per accedir als Web Services amb scool

0 . Assistent per activar control per sistema extern de Moodle

El trobareu a:

https://www.iesebre.com/moodle/admin/settings.php?section=webservicesoverview 

Aquí cal:

  • Habilitar els serveis web
@acacha
acacha / NOTA_SOBRE_LARAVEL_SCOUT_I_GITIGNORE.md
Last active January 29, 2020 18:19
NOTA_SOBRE_LARAVEL_SCOUT_I_GITIGNORE

Si ja teniu el fitxer pujat a Github s'ha d'eliminar amb:

git rm --cached storage/channels.index
git add .
git commit -a -m "Sync"
git push origin master
@acacha
acacha / gist:1b6f683077b19bea63d4eb57b0a5059c
Created January 17, 2020 13:19
SELECTS ADMINISTRATIVE STATUS | DEPARTMENTS | ESPECIALITIES
-[ ] Són autocompletes i ja utilitzem autocompletes als fitres
- [ ] Reaprofitar codi autocomplete (vista tonta autocomplete app-xxx-autocomplete o similars)
- [ ] cal tenir en compte però que aquests selects (poden?opcional)tenen validació, mostren errors i per tant cal fer composició
- [ ] API comuna -> Totes les propietats indiquen tipus i no permetem propietats amb diferents tipus (id o objecte per exemple i evitar problemes)
- [ ] Comprovar no afecta a ningú i tot funciona correctament
@acacha
acacha / NOTES_CORRECCIONS_GERARD.md
Last active January 15, 2020 19:54
NOTES_CORRECCIONS_GERARD
  • llegeix els comentaris generals fets a tot el grup alguns també t'afecten: https://gist.github.com/acacha/572e7f522b3f443fc8be23593f394755
  • La toolbar de les cards té un botó X per tancar. Has fet el minimitzar i maximitzar però no el close
  • Testos a explotació de Messages, hi ha error Copy/paste: Spatie\Permission\Exceptions\RoleDoesNotExist: There is no role named ChannelsManager.
  • Utilitza marges per separar les icones/botons update i delete a la llista de canals/missatges.
  • Després de crear un message/channel cal posar a buit ('') els camps. Ara després afegir un canal/missatges si torno a posar afegir surten les dades de l'anterior canal/missatge afegit
  • Messages:
    • Cal poder modificar l'usuari del missatge (els admins i els managers). Ha de ser un desplegable amb la llista usuaris i per defecte seleccionar l'usuari logat
  • No mostra spinner/loading durant l'operació esborrar
@acacha
acacha / 15_GENER_2020.md
Last active January 15, 2020 19:34
15_GENER_2020.md

Comprovacions/checks

  • Al component de card amb toolbar que vam fer, teniu pendent fer maximitzar/minitmitzar/close. Alguns ho heu fet però IMPORTANT:
    • El minimitzar/maximitzar ha de ser en un mateix icona, que mostri minimitzar quan està maximitzar i maximitzar quan està minimitzat
  • Aplicar eslint a tots els fitxers Javascript que entregeu
  • Repasar que no queda "basura" al entregar
    • Buscar tots els console.log i eliminar
    • buscar tots els TODOS i mirar si ja es poden eliminar
    • Buscar tots els dd() i dump() i eliminar
  • als testos treure tots els withoutExceptionHandling
@acacha
acacha / NOTES_MOIXONET_NATIVESCRIPT.md
Last active January 16, 2020 08:36
NOTES_MOIXONET_NATIVESCRIPT

Aplicació a moixonet: