Para código frontal (HTML, CSS, JavaScript):
* localmente en su computadora: Aquí es donde normalmente desarrollará su código. Puede usar un editor de texto o un IDE (entorno de desarrollo integrado) como VS Código, Texto Sublime, Atom, Webstorm, etc.
* Un sistema de control de versiones (como Git): Esto es crucial para los cambios de colaboración y seguimiento. Las plataformas populares incluyen GitHub, Gitlab y Bitbucket. No implica * su sitio web desde aquí, pero es donde almacena y administra su código.
* Un servidor web: Aquí es donde vive su sitio web y es accesible para el público. Esto podría ser:
* Su propio servidor: Requiere experiencia técnica en administración y mantenimiento del servidor.
* Un proveedor de alojamiento de nubes: Servicios como AWS, Google Cloud, Azure, Digitalocean, etc., ofrecen varios niveles de opciones de servidor administradas y no administradas. Normalmente usará un servidor privado virtual (VPS) o un servidor dedicado.
* Un proveedor de alojamiento de sitios web: Servicios como Hostgator, Bluehost, SiteGround, Netlify, Vercel, etc., simplifican el proceso. A menudo proporcionan interfaces fáciles de usar para cargar su código y administrar su sitio. Por lo general, manejan la administración del servidor para usted.
* Un generador de sitio estático (SSG): Herramientas como Jekyll, Hugo, Gatsby y Next.js generan archivos HTML estáticos desde su código, que luego se pueden alojar fácilmente en un servicio de almacenamiento simple (como AWS S3, Netlify, GitHub Pages) o un proveedor de alojamiento web.
Para código de fondo (lenguajes del lado del servidor como Python, Php, Node.js, Ruby, etc.):
* localmente en su computadora: Nuevamente, aquí es donde se desarrolla y prueba su código.
* Un sistema de control de versiones (como Git): Esencial para la colaboración y la gestión de versiones.
* Un servidor web: Se aplican las mismas opciones que se mencionan anteriormente. El código de fondo generalmente se ejecuta en un servidor e interactúa con una base de datos.
Ejemplos específicos:
* Páginas Github: Ideal para alojar sitios web estáticos directamente desde un repositorio de GitHub.
* netlify: Excelente para alojar sitios estáticos e implementar aplicaciones construidas con marcos como React, Vue y Angular.
* Vercel: Similar a Netlify, se especializa en la implementación de aplicaciones web modernas.
* Heroku: Una plataforma como servicio (PAAS) que simplifica la implementación de aplicaciones web.
En resumen, el "donde" depende completamente de las necesidades de su proyecto y sus capacidades técnicas. Para los principiantes, un proveedor de alojamiento de sitios web es a menudo el punto de partida más fácil. A medida que los proyectos se vuelven más complejos, puede optar por un mayor control con un proveedor de alojamiento en la nube o incluso un servidor autogestionado.