/dart_frog

A fast, minimalistic backend framework for Dart 🎯

Primary LanguageDartMIT LicenseMIT

Dart Frog Logo Dart Frog Logo

ci coverage style: very good analysis License: MIT Powered by Mason

A fast, minimalistic backend framework for Dart 🎯

Developed with 💙 by Very Good Ventures 🦄

Documentation 📝

For official documentation, please visit https://dartfrog.vgv.dev.

Packages 📦

Package Pub
dart_frog pub package
dart_frog_gen pub package
dart_frog_cli pub package
dart_frog_web_socket pub package
dart_frog_auth pub package

Quick Start 🚀

Prerequisites 📝

In order to use Dart Frog you must have the Dart SDK installed on your machine.

Installing 🧑‍💻

# 📦 Install the dart_frog cli from pub.dev
dart pub global activate dart_frog_cli

Creating a Project ✨

Use the dart_frog create command to create a new project.

# 🚀 Create a new project called "my_project"
dart_frog create my_project

Start the Dev Server 🏁

Next, open the newly created project and start the dev server via:

# 🏁 Start the dev server
dart_frog dev

💡 Tip: By default port 8080 is used. A custom port can be used via the --port option.

Create a Production Build 📦

Create a production build which includes a DockerFile so that you can deploy anywhere:

# 📦 Create a production build
dart_frog build

Create New Routes and Middleware 🛣️

To add new routes and middleware to your project, use the dart_frog new command.

# 🛣️ Create a new route "/hello/world"
dart_frog new route "/hello/world"

# 🛣️ Create a new middleware for the route "/hello/world"
dart_frog new middleware "/hello/world"

Goals 🎯

Dart Frog is built on top of shelf and mason and is inspired by many tools including remix.run, next.js, and express.js.

The goal of Dart Frog is to help developers effectively build backends in Dart. Currently, Dart Frog is focused on optimizing the process of building backends which aggregate, compose, and normalize data from multiple sources.

Dart Frog provides a simple core with a small API surface area in order to reduce the learning curve and ramp-up time for developers. In addition, Dart Frog is intended to help Flutter/Dart developers maximize their productivity by having a unified tech stack that enables sharing tooling, models, and more!

Extensions 💻

  • VS Code: extends VS Code with support for Dart Frog and provides tools for effectively managing Dart Frog projects within VS Code.