Skip to content

CRUD in PHP with AmPHP, MariaDB, SwaggerUI and docker compose

License

Notifications You must be signed in to change notification settings

ssleert/guest-agency

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏨 Guest Management API 🌟

Welcome to the Guest Management API! 🎉 This is a blazing-fast, modern, and scalable REST API designed to manage guest data with full CRUD operations. Built with AmPHP, MariaDB, Docker, and served over Nginx with cutting-edge HTTP/3 support, it's ready to handle your needs efficiently. 🚀

🌟 Features

  • Fast and asynchronous with AmpHP.
  • 🔒 Served over HTTPS with modern HTTP/3 for performance and security.
  • 🐳 Fully containerized using Docker Compose for easy deployment.
  • 📘 Built-in Swagger UI for interactive API documentation.
  • 📖 Comprehensive data validation using Respect\Validation.
  • ✅ Production-ready with middleware for request time tracking and input validation.

🛠 How to Get Started

1️⃣ Clone the Repository

git clone https://github.com/ssleert/guest-agency
cd guest-agency

2️⃣ Start the Project 🚀

Run the following command to start the project using Docker Compose:

cp .env.example .env
mkdir db
composer install
docker compose up

This will spin up the entire stack, including:

  • A MariaDB database.
  • An API server.
  • Nginx configured with HTTP/3 and HTTPS.

3️⃣ Access the Swagger UI 📘

Once the stack is up and running, open your browser and navigate to:
https://localhost/swagger

Here, you'll find the full interactive API documentation to start working with the endpoints immediately! 🎯


🏗 Technology Stack

  • Framework: AmPHP for async PHP 🧵.
  • Database: MariaDB for relational data storage 📊.
  • Containerization: Docker Compose for seamless deployment 🐳.
  • HTTP Server: Nginx with HTTPS + HTTP/3 🔒.
  • Documentation SwaggerUI for interactive api documentation 📄.
  • Validation: Respect\Validation for robust input handling ✅.

🌐 API Documentation

Check out the complete Swagger API documentation for details on endpoints, parameters, and models:
👉 Swagger UI


❤️ Contributing

Want to improve this project? 🤝 Contributions are welcome! Feel free to open an issue or submit a pull request.


📜 License

This project is open-source under the MIT License. ✨


🔥 Get started today and unleash the power of modern guest management!

About

CRUD in PHP with AmPHP, MariaDB, SwaggerUI and docker compose

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published