Theme

Shadow

Shadow Documentation

Welcome to the comprehensive documentation for Shadow - a powerful Laravel package that automatically generates RESTful APIs for your Eloquent models.

šŸŒ‘ What is Shadow?

Shadow is a robust Laravel package that transforms your Eloquent models into fully-featured RESTful APIs with minimal configuration. It provides automatic endpoint generation, standardized responses, comprehensive error handling, and advanced features like caching, documentation generation, and foreign key resolution.

šŸŽÆ Key Features

  • šŸš€ Automatic API Generation: Instant RESTful endpoints for all your models
  • šŸ“Š Standardized Responses: Consistent JSON response format across all endpoints
  • šŸ”— Relationship Support: Automatic handling of model relationships and foreign keys
  • ⚔ Performance: Built-in caching and query optimization
  • šŸ“š Documentation: Auto-generated API documentation (Swagger, Postman, Markdown)
  • šŸ›”ļø Security: Comprehensive error handling and validation
  • šŸ”§ Flexible Configuration: Extensive customization options
  • šŸŽØ Modern Architecture: Clean, extensible codebase

šŸš€ Quick Start

Ready to get started? Here's how to install Shadow and create your first API:

# Install Shadow
composer require thinkneverland/shadow

# Publish configuration
php artisan vendor:publish --provider="Thinkneverland\Shadow\ShadowServiceProvider" --tag="config"

# Register routes
# Add to your RouteServiceProvider.php:
Shadow::routes();
⟩

Add the HasShadow trait to your model:

use Thinkneverland\Shadow\Traits\HasShadow;

class User extends Model
{
    use HasShadow;
    
    protected $fillable = ['name', 'email'];
}
⟩

That's it! Your API is now available at /shadow-api/model/users.

šŸ“š Documentation Structure

šŸš€ Getting Started

šŸ“– Core Concepts

šŸ”§ Configuration

šŸ› ļø Usage Guides

šŸš€ Advanced Features

šŸ“š API Reference

šŸ”’ Security & Performance

šŸ› ļø Development

šŸ“‹ Additional Resources

šŸŽÆ Use Cases

Shadow is perfect for:

  • Rapid Prototyping: Quickly create APIs for new projects
  • Admin Panels: Generate admin interfaces with minimal code
  • Mobile Backends: Provide APIs for mobile applications
  • Microservices: Create focused API services
  • Content Management: Build CMS APIs with ease
  • E-commerce: Generate product and order APIs
  • Social Platforms: Create user and content APIs

šŸ”§ System Requirements

  • PHP: 8.1 or higher
  • Laravel: 9.0 or higher
  • Database: MySQL 5.7+, PostgreSQL 9.6+, or SQLite 3.8+

šŸ“ž Support

  • Documentation: Browse the comprehensive guides above
  • Issues: Report bugs and request features on GitHub
  • Discussions: Join the community discussions
  • Email: support@thinkneverland.com

šŸ“„ License

Shadow is open-source software licensed under the MIT License.


Ready to dive in? Start with our Installation Guide to get Shadow up and running in your Laravel application.

Happy navigating!