platform/README.md

92 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Fabric Framework
Welcome to the Fabric Framework, a comprehensive port of Laravel's Illuminate components to Dart. Fabric aims to provide a robust, scalable, and feature-rich framework for building modern web applications using Dart.
## Overview
Fabric is designed to mirror Laravel's Illuminate components, ensuring a familiar structure for developers accustomed to Laravel while leveraging Dart's modern language features. The framework consists of various packages that collectively offer a complete solution for web development.
## Goals
1. **Maintain Laravel's Structure:** Keep the directory and component structure identical to Laravel, but adhere to Dart best practices.
2. **Ensure Modularity:** Port each Illuminate component as a separate Dart package for modular usage.
3. **Enable Rapid Development:** Provide a running base application quickly to facilitate real-time testing and development.
## Key Features
- **Modular Packages:** Each Illuminate component is available as a standalone Dart package.
- **Comprehensive Routing:** Powerful routing capabilities inspired by Laravel.
- **Dependency Injection:** Built-in support for dependency injection to promote loose coupling.
- **Middleware Support:** Use middleware for filtering HTTP requests entering your application.
- **Authentication & Authorization:** Robust tools for user authentication and authorization.
- **Database Abstraction:** Database-agnostic query builder and ORM.
- **Queueing System:** Manage background tasks and queues.
- **Event Broadcasting:** Real-time event broadcasting for modern applications.
## Getting Started
### Prerequisites
- Dart 3.0 or higher
- A basic understanding of Dart and Laravel
### Installation
1. **Clone the Repository:**
```bash
git clone https://github.com/yourusername/fabric-framework.git
cd fabric-framework
```
2. **Install Dependencies:**
```bash
dart pub get
```
### Usage
Fabric is structured to be as familiar as possible to Laravel developers. Heres a quick example of setting up a simple application:
1. **Create a New Dart File:**
```dart
import 'package:fabric/fabric.dart';
void main() {
final app = Application();
app.get('/', (Request req) {
return Response.ok('Hello, World!');
});
app.run();
}
```
2. **Run the Application:**
```bash
dart run
```
### Documentation
Comprehensive documentation is available to help you get started with Fabric. Visit [Fabric Documentation](https://yourdocumentationlink.com) for detailed guides, tutorials, and API references.
## Contributing
We welcome contributions from the community. If youre interested in contributing, please read our [Contributing Guide](CONTRIBUTING.md) for information on how to get started.
### Reporting Issues
If you encounter any issues or bugs, please report them on our [Issue Tracker](https://github.com/yourusername/fabric-framework/issues).
## License
Fabric is open-source software licensed under the [MIT license](LICENSE).
## Acknowledgements
Fabric is inspired by Laravel, and we extend our gratitude to the Laravel community for their continuous efforts in building and maintaining an excellent PHP framework.