
Carlos Rodríguez
PreguntaQue diferencia hay entre las carpetas public y dist en un proyecto??

Irving Juárez
Tu puedes ponerle el nombre que tu quieras a esta carpeta, puede ser dist o public. Lo importante es que esto lo tienes que configurar en el archivo webpack.config.js en la sección de module.exports > output > path. Si quieres saber mas acerca de esto, checa la configuración oficial: https://webpack.js.org/configuration/

Lucas Frezzini
Perfecto que ya te haya quedado todo más claro. En sí no es que no puedas utilizar lo que tenes en dev, de hecho es la forma nativa de como se hacen los proyectos, el problema es que tenes muchisimás cosas que no se utilizan y no tiene sentido subirlas al servidor.
Eso es, entre otras cosas, lo que intenta solucionar y ayudarte un module bundler como lo es Webpack. Anteriormente tenias que hacer todo vos a mano: tener compass y compilar scss a css, minificarlo, comprimir las imagenes desde algun servicio web, pasar js por algun compresor, perdiendo tiempo en un montón de cosas que ahora por ejem, webpack, las hace por vos.
Entonces vos haces tu proyecto como desarrollador modularizando todo, creando todos los archivos y luego webpack te arma el paquete compilado, comprimido, minificado, etc y un sinfin de cosas más.
Respondiendo la ultima pregunta entonces: depende el proyecto. Hay que ser sinceros, un cliente que quiere un sitio web siemple (galeria de fotos, quienes somos, inicio, contacto) donde no usas ni react, ni ningun otro framework, ni muchisimás librerias, y tus archivos no pesan mucho podes subir como decis dev como produccion. Pero lo ideal y además para seguir el ritmo actual de como se encara un proyecto es usarlo. Además por más chico que sea el proyecto te ayuda con las compilaciones y compresiones que eso ya es un monton de tiempo ganado a la hora de hacer la entrega.
Buena suerte y espero haberte ayudado :)

Carlos Rodríguez
Ahora tengo otra duda que aun no me han respondido en otros comentarios. He realizado el curso de webpack pero veo que siempre en la carpeta dist me crea los archivos optimizados en un sólo js, html y css, es decir como una single page application! Es decir que webpack sólo sirve para crear SPA?? O existe una opción para dejar los html o pages modularizados con sus js y css optimziados??

Carlos Rodríguez
Muy bien ya he entendido, y he realizado el curso de webpack! LA public de igualforma podría ir al producción si no usamos ningún transpilador como webpack pero si lo suamos entonces este genera la carpeta dist o build, entonces esta es la carpeta que ahora irá a producción! Todo muy entendido! Gracias!

Lucas Frezzini
La respuesta correcta es la mia, para que te quedes tranquilo. El tema es el siguiente: la carpeta dist aparece o se crea cuando usamos, por ejemplo Webpack, y generamos los archivos para producción.
Un buen nombre mayormente usado es dist como te explicaba de Distribution, pero en la condiguración puedes ponerle el nombre que gustes, como "produccion", "archivos-finales", lo que se te ocurra.
Esa carpeta se crea a la altura de src y de public, donde como decia anteriormente, public tendrás los archivos que interactuan con el usuario y dentro de src todo tu código que haga funcionar todo eso que ve el usuario que esta en public (js, utils, styles, fonts, templates, routes).
El proceso es el siguiente, como hasta ahora hizo el profe (src y public) luego, con webpack configuras todo y el mismo te crea la carpeta dist y es la que subes al servidor y va a tener todos los archivos comprimidos, minimizados, etc. Te recomiendo el curso de Webpack para entender mucho más de donde sale todo: https://platzi.com/clases/webpack/
Cualquier otra duda seguila en el hilo y la vamos quitando :)

Carlos Rodríguez
He quedado aun más confundido con estas dos respeustas totalmente diferentes!

Lucas Frezzini
En public tendrás todos tus .html o la UI de tu aplicación, en dist (abreviación de Distribution o distribución en español) vas a tener todos tus archivos que van a, valga la redundancia, distribución o producción, osea los que subís al servidor para que el usuario interactúe con tu app.
En public tenes los archivos que interactúa el usuario, pero en tu entorno de desarrollo, no son archivos finales que van a producción aún.

Juan Jiménez
¡Hola! No hay diferencia, la carpeta
dist
public
built