Este repositorio contiene el código del backend para una tienda online que es mí TFG(Trabajo de fin de grado) del Grado Superior de DAW(Desarrollo de aplicaciones web). La aplicación está desarrollada utilizando Symfony 6, PHP y varias integraciones de terceros como Stripe y SendGrid.
- Instalación
- Configuración
- Uso
- API Endpoints
- Autenticación
- Pagos
- Correo Electrónico
- Despliegue
- Contribuir
- Licencia
-
Clona el repositorio:
git clone https://github.com/iamabhijeet2003/backend-TFG.git cd backend-TFG
-
Instala las dependencias:
composer install
-
Crea la base de datos:
php bin/console doctrine:database:create php bin/console doctrine:migrations:migrate
-
Carga los datos iniciales:
php bin/console doctrine:fixtures:load
-
Copia el archivo
.env
y configura tus variables de entorno:cp .env .env.local
-
Configura las variables de entorno en
.env.local
:DATABASE_URL="mysql://user:[email protected]:3306/newecom" MAILER_DSN=sendgrid://KEY@default STRIPE_PUBLIC_KEY=tu_clave_publica STRIPE_SECRET_KEY=tu_clave_secreta JWT_SECRET_KEY=%kernel.project_dir%/config/jwt/private.pem JWT_PUBLIC_KEY=%kernel.project_dir%/config/jwt/public.pem JWT_PASSPHRASE=tu_frase_de_paso
- Levanta el servidor de desarrollo:
symfony server:start -d
Note
Necesitas tener instalado Symfony CLI.
- La API estará disponible en
http://localhost:8000
.
Puedes explorar los endpoints disponibles en la API entrando en http://localhost:8000/api.
La aplicación utiliza autenticación JWT. Para obtener un token de acceso, envía una solicitud POST
a /auth
con las credenciales del usuario.
La integración con Stripe permite procesar pagos de manera segura. Consulta la documentación en el controlador StripeController
para más detalles.
La integración con SendGrid se utiliza para enviar correos electrónicos en varios eventos como el registro de usuario y confirmación de pedidos.
La aplicación se puede desplegar utilizando Docker y Platform.sh. Actualmente esta desplegada en Microsoft Azure VM.
-
Construye y levanta los contenedores:
docker-compose up --build
-
La aplicación estará disponible en
http://localhost
.
Configura y despliega la aplicación en Platform.sh siguiendo las instrucciones en la carpeta .platform
.
Las contribuciones son bienvenidas. Por favor, abre un issue o envía un pull request para mejorar este proyecto.
Este proyecto está bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.