strapi-backend-pack
v1.1.53
Published
A management system that serves as an add-on for Strapi 5 to support more efficient backend usage, whether for e-commerce or registration systems, with easy-to-use features for desired projects.
Readme
Strapi Backend Pack
An essential plugin and add-on for backend systems that support a wide range of uses, whether it's E-Commerce, registration systems, or website management, with key features.
Main Features
- Responsive Design
- All parts of the UI are built based on the Strapi Design System, which supports display on all screen sizes (desktop, tablet, mobile) to provide the best user experience.
Export/Import Data
- Export data from collections to Excel files
- Import data from Excel back into Strapi
PDF Export
- Manage and create PDFs from HTML templates using placeholders to pull data from records
- Supports font customization, PDF size, date locale, and time display options
Email Functionality
- Send test and real emails using predefined email templates
- Supports inserting placeholders in the subject and HTML content
Dashboard Widgets
- Display widgets on the Dashboard (e.g., Summary Box, Line/Bar/Area/Pie/Doughnut Chart)
- Customize and arrange widgets as desired by the user
Preview
- Add a Preview button in Edit View to open a preview page of the record based on a specified URL
Draft-Publish Settings
- Set automatic status changes between Draft and Published for supported content types
Drag & Drop Sorting
- Sort items in List View via Drag & Drop with updated display order
- Update the order of items in collections when rearranged
Summary Aggregation
- Calculate and display data summaries (e.g., Count, Sum, Average, Min, Max) using custom filters and sub-conditions
Backup Configuration
- Backup and restore the plugin's configuration settings
Custom Box in Edit View
- Add the ability to create Custom Boxes displayed in the Edit View
- Supports rendering with HTML and pulling data from Attributes for display
- Supports adding formulas and format functions to display data as desired
Dependent / Conditional Fields
- Set display conditions between desired fields
- Supports String, Integer, Boolean
Cache Management for REST API
Configure Cache settings for desired Content-Types
Configure TTL (Time To Live) for each Content-Type
Ability to purge cache to clear cached data
Helps improve REST API performance
- API Access Control
- ควบคุมการเข้าถึง API endpoints ตาม IP addresses
- รองรับ single IP, CIDR notation, และ wildcard patterns
- สองระดับการเข้าถึง: Full Access (API) และ API Only
- Emergency IP configuration ผ่าน environment variables สำหรับกรณีฉุกเฉิน
- ยกเว้น internal networks (localhost, private IPs) อัตโนมัติ
- Real-time IP detection พร้อม external service fallback
- หมายเหตุ: ป้องกันเฉพาะ API endpoints เท่านั้น (ไม่รวม admin panel เนื่องจาก browser limitations)
- API Access Control
Others
- Configure absolute path for media API
Installation Instructions
npm i strapi-backend-packor
yarn add strapi-backend-packPlugin Configuration
Basic Configuration
Add the plugin configuration to your config/plugins.js:
module.exports = ({ env }) => ({
'strapi-backend-pack': {
enabled: true,
resolve: './src/plugins/strapi-backend-pack',
config: {
// API Access Control Emergency Configuration
ipRestriction: {
// เปิด/ปิด API access control จาก config file
enabled: env('IP_RESTRICTION_ENABLED', false),
// รายการ IP ที่อนุญาตในกรณีฉุกเฉิน
emergencyIps: env('IP_RESTRICTION_EMERGENCY_IPS', '').split(',').filter(ip => ip.trim()),
// ระดับการเข้าถึงสำหรับ emergency IPs
emergencyAccessLevel: env('IP_RESTRICTION_EMERGENCY_ACCESS_LEVEL', 'full'),
// Bypass localhost ใน development
bypassLocalhost: env('IP_RESTRICTION_BYPASS_LOCALHOST', false),
}
}
},
// ... other plugins
});Environment Variables
Add these variables to your .env file:
# IP Restriction Configuration
IP_RESTRICTION_ENABLED=false
IP_RESTRICTION_EMERGENCY_IPS=127.0.0.1,192.168.1.100
IP_RESTRICTION_EMERGENCY_ACCESS_LEVEL=full
IP_RESTRICTION_BYPASS_LOCALHOST=trueLicense Terms:
- This plugin requires a valid license key to activate premium features.
- The license key is non-transferable and limited to one Strapi installation per key.
- Unauthorized sharing, redistribution, or modification of this software is strictly prohibited.
- If you want to try it on a real Production website, you can request a key for a 30-day free trial at https://www.strapibackendpack.com
API Access Control Configuration
The API Access Control feature provides comprehensive access control for your Strapi application:
Key Features:
- Flexible IP Formats: Support for single IP, CIDR notation (
192.168.1.0/24), and wildcard patterns (192.168.1.*) - Access Levels: Choose between Full Access (API) or API Only access
- Emergency Access: Configure emergency IPs via environment variables for critical situations
- Development Friendly: Automatic localhost bypass for development environments
- Real-time Detection: Advanced IP detection with external service fallback
- API Protection: Protects API endpoints from unauthorized IP access
Quick Setup:
- Navigate to API Access Control in the admin panel
- Enable API access control and add allowed IP addresses
- Configure access levels for each IP
- Use emergency configuration in
.envfor critical situations
Emergency Configuration:
# Add to your .env file for emergency access
IP_RESTRICTION_ENABLED=true
IP_RESTRICTION_EMERGENCY_IPS=127.0.0.1,192.168.1.100,203.0.113.50
IP_RESTRICTION_BYPASS_LOCALHOST=trueImportant Notes:
- Restart Required: After changing plugin configuration, restart your Strapi server
- Development vs Production: Use
IP_RESTRICTION_BYPASS_LOCALHOST=truefor development - Emergency Access: Configure emergency IPs before enabling API access control
- Path Protection: Only
/api/*paths are protected (not admin panel due to browser limitations) - API Only: This feature is designed for API protection, not admin panel access control
- Internal Networks: Internal IPs (localhost, private networks) are automatically allowed
Troubleshooting:
- If you get locked out, use emergency IPs in
.envfile - Check server logs for API access control messages
- Ensure your IP is in the allowed list before enabling
For more details, please visit: https://www.strapibackendpack.com
