Como empezar
Estructura de Directorio
Buffalo te proporciona a ti una estructura de directorio minimo para trabajar en tu proyecto. Esta estructura mantiene el proyecto limpio, y permite el generador trabajar. No trates de reinventar la rueda, y deja que buffalo te compre mas tiempo para hacer la parte interesante de tu app! :)
Ahora que tu tienes un proyecto minimo, vamos a su contenido:
Directorio Raiz
Aqui esta la estructura de un Proyecto Buffalo:
├── .yarn/
├── actions/
│ ├── app.go
│ └── render.go
├── assets/
├── cmd/
│ └── app/
│ └── main.go
├── config/
├── fixtures/
├── grifts/
├── locales/
├── models/
├── public/
├── templates/
├── .babelrc
├── .buffalo.dev.yml
├── .codeclimate.yml
├── .docketignore
├── .env
├── .gitignore
├── .pnp.loader.mjs
├── .yarnrc.yml
├── database.yml
├── Dockerfile
├── go.mod
├── go.sum
├── inflections.json
├── package.json
├── postcss.config.js
├── README.md
├── webpack.config.js
└── yarn.lock
Actions
Este directorio maneja la parte de Controlador del patron MVC. Eso contiene los controladores para tus URLs, un plus:
- El
app.go
es el archivo para configurar tu app y rutas. - El
render.go
es el archivo para configurar el motor de las plantillas.
Assets
Este directorio contiene raw assets el cual sera compilado/comprimido y puestos en el directorio public
.
Cmd
Esta carpeta contiene el main.go
es el archivo el cual arranca tu app y la inicia.
Grifts
Este directorio contiene el tasks impulsado por grift.
Locales
app.go
en el directorio actions
Este directorio is usado por el sistema de i18n. Eso va a traer la traduccion de cadenas desde aqui.
Models
Este directorio se encarga de la parte del Model de el patrón MVC. Eso contiene el archivo models.go
para inicializar la conexion con la fuente de datos y el modelo para reflejar objetos de la base de datos.
Public
Este directorio contiene asset publico (Compilado/Comprimido). Si tu usas webpack, los assets se van a colocar en este directorio.
Templates
Este directorio maneja la Vista de el patron MVC. Eso contiene los templates de el proyecto, usado para renderizar las vistas.
Tmp
Este directorio es usado por el comando buffalo dev
para reconstruir tu proyecto con cada cambio. Los archivos temporales de Buffalo se van a colocar aqui.
Database.yml
Este archivo contiene la configuración de la base de datos para pop/soda.
Siguiente Paso
- Configuración - Maneja la configuración de tu app.
- Integracion de Herramientas - Trabaja con Buffalo usando herramientas existentes.