strapi-plugin-reservation-v5
v1.0.0
Published
A comprehensive reservation and booking system plugin for Strapi 5 with time slots, schedules, and booking management
Maintainers
Readme
Strapi Plugin Reservation v5
A comprehensive reservation and booking system plugin for Strapi 5 with time slots, schedules, and booking management.
Features
- ✅ Reservation Management - Complete CRUD operations for reservations
- ✅ Time Slot System - Flexible time slot management with availability checking
- ✅ Schedule Management - Configure working hours and availability
- ✅ Admin Interface - Beautiful admin UI for managing reservations
- ✅ REST API - Full REST API for frontend integration
- ✅ TypeScript Support - Fully typed for better development experience
- ✅ Strapi 5 Compatible - Built specifically for Strapi 5
Installation
npm install strapi-plugin-reservation-v5Configuration
Add the plugin to your Strapi configuration:
// config/plugins.js
module.exports = {
reservation: {
enabled: true,
},
};Or for TypeScript:
// config/plugins.ts
export default {
reservation: {
enabled: true,
},
};Usage
Admin Interface
After installation, you'll find:
- Reservation menu item in the main navigation
- Settings section for plugin configuration
- Complete reservation management interface
API Endpoints
The plugin provides the following endpoints:
GET /api/reservation/reservations # List all reservations
POST /api/reservation/reservations # Create new reservation
GET /api/reservation/reservations/:id # Get reservation by ID
PUT /api/reservation/reservations/:id # Update reservation
DELETE /api/reservation/reservations/:id # Delete reservation
GET /api/reservation/time-slots/available # Get available time slots
GET /api/reservation/schedules # Get schedules
POST /api/reservation/schedules # Create schedule
PUT /api/reservation/schedules/:id # Update schedule
DELETE /api/reservation/schedules/:id # Delete scheduleContent Types
The plugin creates the following content types:
- Reservation - Main reservation entity
- Schedule - Working hours and availability configuration
- Time Slot - Individual time slots for bookings
Development
Prerequisites
- Node.js 18+
- Strapi 5.x
- TypeScript
Local Development
# Clone the repository
git clone https://github.com/remifokz/strapi-plugin-reservation-v5.git
# Install dependencies
npm install
# Build the plugin
npm run build
# Watch for changes
npm run watchContributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
If you encounter any issues or have questions:
- Create an issue on GitHub Issues
- Check the documentation
Changelog
1.0.0
- Initial release
- Complete reservation system
- Admin interface
- REST API
- TypeScript support
