https://github.com/manuel-ayusa/ecommerce-laravel
Ecommerce desarrollado con el Framework PHP Laravel
https://github.com/manuel-ayusa/ecommerce-laravel
blade breeze javascript laravel php
Last synced: 2 months ago
JSON representation
Ecommerce desarrollado con el Framework PHP Laravel
- Host: GitHub
- URL: https://github.com/manuel-ayusa/ecommerce-laravel
- Owner: Manuel-Ayusa
- Created: 2024-07-04T20:41:03.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-11-25T14:56:30.000Z (5 months ago)
- Last Synced: 2024-11-25T15:29:10.879Z (5 months ago)
- Topics: blade, breeze, javascript, laravel, php
- Language: PHP
- Homepage:
- Size: 940 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Ecommerce Tienda De Ropa
Ecommerce desarrollado con el Framework Laravel.Sobre el sitio
El mismo se trata de una tienda de ropa con todas las funciones que un ecommerce debe tener: carrito de compras, inicio de sesion opcional, una pasarella de pago intuitiva etc.
En este caso, la tienda esta configurada para ser una tienda de ropa solamente de hombre, pero se puede configurar como uno desee.Detalles Tecnicos
General
Se siguieron las practicas recomendadas por la documentacion oficial de Laravel, como ser: la sintaxis, el uso adecuado de las funciones del programa, el uso adecuado del motor de plantillas Blade etc.
El sitio posee una interfaz para el cliente y una interfaz distinta para el Usuario Administrador.
El sitio es totalmente responsivo para el cliente y para el Usuario Administrador, aunque para este ultimo se recomienda usar la version de computadora.Rutas
Para un codigo mas ordenado y con mayor legibilidad se utiliza el route Controller para las rutas que pertenecen al mismo controlador.
Se utiliza un middleware adicional escrito por mi, para denegar el acceso a determinadas rutas a usuarios NO Administradores.Vistas
Se utiliza el motor de plantillas Blade.Autenticacion
Se utiliza el kit de inicio Laravel Brezee que incluye inicio de sesión, registro, restablecimiento de contraseña, verificación de correo electrónico y confirmación de contraseña.Base de Datos
Se utiliza Eloquent para administrar la BD, cada tabla de la base de datos tiene un "modelo" correspondiente que se utiliza para interactuar con esa tabla. Además de recuperar registros de la tabla de la base de datos, los modelos de Eloquent también le permiten insertar, actualizar y eliminar registros de la tabla.
La BD utilizada en el sitio es relacional. La misma se relaciona a travez de sus modelos con metodos escritos dentro de estos(para esto se utlizan funciones brindadas por Laravel).Pasarela de Pago
Para realizar y procesar los pagos se utiliza el SDK de Mercado Pago, Checkout Pro. Mas informacion sobre Chekout ProProductos y Stock
Los Productos se guardan en la tabla "productos"(*imagen1) y (*imagen1.1). Cada producto puede tener uno o mas colores y con ellos su respectivo Stock(*imagen2) y (*imagen2.2).
(*imagen1)

Base de Datos(*imagen1.1)

Vista de administrador(*imagen2)

Base de Datos(*imagen2.2)

Al Seleccionar Guardar en(*imagen1.1) se desplega automaticamente el formulario para cargar uno o mas colores.Carrito de Compras
Cada usuario que entra al sitio queda registrado en la Base de Datos, en la tabla "sessions", con el numero de IP del navegador; En caso de que el usuario no haya iniciado sesion en nuestro sitio, este registro nos ayuda a relacionar a cada usuario con su carrito.
Cuando el usuario añade su primer Articulo al carrito se crea un registro en la tabla "carts"(*imagen1), cuando este es creado, al instante se crea otro registro en la tabla "cart_productos" donde se guardan los registros con los detalles del item(*imagen2) esta tabla su vez guarda las llaves foraneas(cart_id y producto_id).
(*imagen1). ()

En el primer registro se muestra un usuario no logueado en el sitio y en el segundo registro un usuario que si ha iniciado sesion.
(*imagen2)
Una vez que se añadio el primer producto, al añadir otros, solo se crean registros en la tabla "cart_productos" relacionados al carrito del cliente(una relacion de muchos a uno)(*imagen3).
(*imagen3).
Compras
Para hacer una compra se puede estar logueado en el sitio o no.
Bien, primero que todo se debe añadir uno o mas objetos al carrito(no se puede añadir un producto al carrito si no hay stock de este). Luego, ya en la vista del carrito, se muestra todo su contenido y los detalles de los productos como ser: la cantidad de los mismos, el talle, precio etc.
Al seleccionar Empezar Compra el sitio te redirige a un formulario llamado Detalles de Compra donde el cliente debe llenar cada uno de los campos con su informacion personal(Nombre, DNI, Email); A su vez tiene que elegir si prefiere que la compra sea con Envio o si el mismo retira el articulo de la tienda. En el caso que la compra sea con envio se despliega dinamicamente un formulario que debe llenar con los detalles de su direccion(Provincia, Localidad, Calle, Numero, CP). En esta vista tambien se muestran el costo de envio(si lo hay) y el costo total de los productos.
Al seleccionar Comenzar Pago se lleva al usuario a una vista que muestra el resumen de toda la informacion: Informacion de los productos que esta comprando, su informacion Personal, y la informacion de envio. Junto a esto el subtotal y total de la compra. Cuando el usuario corrobora que toda la informacion sea correcta puede empezar el pago.
Al hacer click en Comprar con Mercado Pago se redirige al usuario a la interfaz del SDK de Mercado Pago, donde puede elegir el Pago en efectivo, con tarjeta de credito o debito y otras opciones mas.
Sobre Laravel
Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experience to be truly fulfilling. Laravel takes the pain out of development by easing common tasks used in many web projects, such as:
- [Simple, fast routing engine](https://laravel.com/docs/routing).
- [Powerful dependency injection container](https://laravel.com/docs/container).
- Multiple back-ends for [session](https://laravel.com/docs/session) and [cache](https://laravel.com/docs/cache) storage.
- Expressive, intuitive [database ORM](https://laravel.com/docs/eloquent).
- Database agnostic [schema migrations](https://laravel.com/docs/migrations).
- [Robust background job processing](https://laravel.com/docs/queues).
- [Real-time event broadcasting](https://laravel.com/docs/broadcasting).Laravel is accessible, powerful, and provides tools required for large, robust applications.
## Learning Laravel
Laravel has the most extensive and thorough [documentation](https://laravel.com/docs) and video tutorial library of all modern web application frameworks, making it a breeze to get started with the framework.
You may also try the [Laravel Bootcamp](https://bootcamp.laravel.com), where you will be guided through building a modern Laravel application from scratch.
If you don't feel like reading, [Laracasts](https://laracasts.com) can help. Laracasts contains thousands of video tutorials on a range of topics including Laravel, modern PHP, unit testing, and JavaScript. Boost your skills by digging into our comprehensive video library.
## Laravel Sponsors
We would like to extend our thanks to the following sponsors for funding Laravel development. If you are interested in becoming a sponsor, please visit the [Laravel Partners program](https://partners.laravel.com).
### Premium Partners
- **[Vehikl](https://vehikl.com/)**
- **[Tighten Co.](https://tighten.co)**
- **[WebReinvent](https://webreinvent.com/)**
- **[Kirschbaum Development Group](https://kirschbaumdevelopment.com)**
- **[64 Robots](https://64robots.com)**
- **[Curotec](https://www.curotec.com/services/technologies/laravel/)**
- **[Cyber-Duck](https://cyber-duck.co.uk)**
- **[DevSquad](https://devsquad.com/hire-laravel-developers)**
- **[Jump24](https://jump24.co.uk)**
- **[Redberry](https://redberry.international/laravel/)**
- **[Active Logic](https://activelogic.com)**
- **[byte5](https://byte5.de)**
- **[OP.GG](https://op.gg)**## Contributing
Thank you for considering contributing to the Laravel framework! The contribution guide can be found in the [Laravel documentation](https://laravel.com/docs/contributions).
## Code of Conduct
In order to ensure that the Laravel community is welcoming to all, please review and abide by the [Code of Conduct](https://laravel.com/docs/contributions#code-of-conduct).
## Security Vulnerabilities
If you discover a security vulnerability within Laravel, please send an e-mail to Taylor Otwell via [[email protected]](mailto:[email protected]). All security vulnerabilities will be promptly addressed.
## License
The Laravel framework is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).