Gazelle is a lightweight and flexible HTTP server framework for Dart, designed to streamline the development of web applications with ease. With Gazelle, you can quickly set up powerful APIs, web servers, and microservices, all with minimal configuration and maximum efficiency.
-
Easy-to-Use: Gazelle is built with simplicity in mind. Whether you're a seasoned developer or just starting out, Gazelle's intuitive API and clear documentation make it easy to get up and running in no time.
-
Plugin System: Extend Gazelle's functionality with custom plugins. Seamlessly integrate authentication, logging, and other common features into your application with Gazelle's plugin architecture.
-
Middleware Support: Gazelle supports middleware functions, allowing you to customize request handling with ease. Add authentication, rate limiting, and more to your routes with just a few lines of code.
-
HTTP/HTTPS Support: Gazelle fully supports both HTTP and HTTPS protocols, ensuring secure communication for your applications. Easily configure SSL certificates for added security.
To start using Gazelle in your Dart project, simply add it to your pubspec.yaml
file:
dependencies:
gazelle_core: <latest-version>
Then, run dart pub get
or flutter pub get
to install the package.
Here's a quick example of how to create a simple Gazelle server:
import 'package:gazelle_core/gazelle_core.dart';
void main() async {
final app = GazelleApp(
routes: [
GazelleRoute(
name: "hello_gazelle",
get: (context, request, response) => GazelleResponse(
statusCode: GazelleHttpStatusCode.success.ok_200,
body: "Hello, Gazelle!",
),
),
],
);
await app.start();
print("Gazelle listening at ${app.serverAddress}");
}
That's it! You've just created a basic Gazelle server that responds with "Hello, Gazelle!" to any incoming requests to the root route.
To learn more, check out our documentation.
At Gazelle, we believe in the power of community collaboration. Our plugin system not only helps scale your codebase but also empowers developers to contribute to the community without relying solely on the core maintainers. Whether you're interested in fixing bugs, adding new features, improving documentation, or leaving a feedback, your contributions are welcome and valued.
We encourage you to get involved by opening issues, submitting pull requests, or joining discussions on our GitHub repository. Together, we can make Gazelle even better for everyone.