An open API service indexing awesome lists of open source software.

https://github.com/ykmnkmi/fire.dart

Hot restart for Dart console application with fast incremental compilation.
https://github.com/ykmnkmi/fire.dart

cli dart tool

Last synced: about 2 months ago
JSON representation

Hot restart for Dart console application with fast incremental compilation.

Awesome Lists containing this project

README

        

[![Pub Package](https://img.shields.io/pub/v/fire.svg)](https://pub.dev/packages/fire)
[![License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)

Hot-Restart for Dart console application with fast incremental compilation.

## Why do I need this?

If your console application compiles too long before running seems too slow.

## Install

Use the dart pub global command to install this into your system.

```console
$ dart pub global activate fire
```

## Use

If you have [modified your PATH][path], you can run this from any local directory.

```console
$ fire
```

Otherwise you can use the `dart pub global` command.

```console
$ dart pub global run fire
```

Here's an example of running a console application:

```console
$ fire run -w bin/cat.dart example/example.dart
> Compiling ...
* Compiling done, took 0:00:00.424890
void main() {
print('hello world!');
}

* Watching 'bin' directory.
* To restart press "r".
To quit, press "q" or "Q" to force quit.
For a more detailed help message, press "H".

```

## ToDo

* Hot-Reload with Flutter like `reassemble` (if possible)
* `build_runner` integration (if possible, or alternative solution)
* AOT compilation, [it's impossible for now](https://github.com/dart-lang/sdk/issues/47322)

## Alternatives

* https://pub.dev/packages/angel3_hot
* https://pub.dev/packages/jaguar_hotreload
* https://pub.dev/packages/hotreloader
* https://pub.dev/packages/recharge
* https://pub.dev/packages/reloader

## Related

* https://pub.dev/packages/frontend_server_client
* https://pub.dev/packages/build_vm_compilers

[path]: https://dart.dev/tools/pub/cmd/pub-global#running-a-script-from-your-path