twig_dart 3.0.0 copy "twig_dart: ^3.0.0" to clipboard
twig_dart: ^3.0.0 copied to clipboard

A simple server-side HTML templating engine for Dart. Comparable to Blade or Liquid.

3
likes
130/ 160
pub points
22%
popularity

We analyzed this package 2 days ago, and awarded it 130 pub points (of a possible 160):

OK
Follow Dart file conventions
30 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

5/5 points: Provide a valid README.md

5/5 points: Provide a valid CHANGELOG.md

10/10 points: Use an OSI-approved license

Detected license: MIT.

partial
Provide documentation
10 / 20trigger folding of the section

0/10 points: 20% or more of the public API has dartdoc comments

6 out of 254 API elements (2.4 %) have documentation comments.

Providing good documentation for libraries, classes, functions, and other API elements improves code readability and helps developers find and use your API. Document at least 20% of the public API elements.

To highlight public API members missing documentation consider enabling the public_member_api_docs lint.

Some symbols that are missing documentation: twig_dart, twig_dart.Array, twig_dart.Array.Array, twig_dart.Array.compute, twig_dart.Array.items.

10/10 points: Package has an example

failed
Platform support
20 / 20trigger folding of the section

20/20 points: Supports 3 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

These platforms are not supported:

Package not compatible with platform Android

Because:

  • package:twig_dart/twig_dart.dart that imports:
  • package:twig_dart/src/renderer.dart that imports:
  • package:twig_dart/src/text/scanner.dart that imports:
  • package:twig_dart/src/ast/ast.dart that imports:
  • package:twig_dart/src/ast/new.dart that imports:
  • package:twig_dart/src/ast/member.dart that imports:
  • dart:mirrors
Package not compatible with platform iOS

Because:

  • package:twig_dart/twig_dart.dart that imports:
  • package:twig_dart/src/renderer.dart that imports:
  • package:twig_dart/src/text/scanner.dart that imports:
  • package:twig_dart/src/ast/ast.dart that imports:
  • package:twig_dart/src/ast/new.dart that imports:
  • package:twig_dart/src/ast/member.dart that imports:
  • dart:mirrors
Package not compatible with platform Web

Because:

  • package:twig_dart/twig_dart.dart that imports:
  • package:twig_dart/src/renderer.dart that imports:
  • package:twig_dart/src/text/scanner.dart that imports:
  • package:twig_dart/src/ast/ast.dart that imports:
  • package:twig_dart/src/ast/new.dart that imports:
  • package:twig_dart/src/ast/member.dart that imports:
  • dart:mirrors

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:twig_dart/twig_dart.dart that imports:
  • package:twig_dart/src/renderer.dart that imports:
  • package:twig_dart/src/text/scanner.dart that imports:
  • package:twig_dart/src/ast/ast.dart that imports:
  • package:twig_dart/src/ast/new.dart that imports:
  • package:twig_dart/src/ast/member.dart that imports:
  • dart:mirrors

This package is not compatible with runtime wasm, and will not be rewarded full points in a future version of the scoring model.

See https://dart.dev/web/wasm for details.

failed
Pass static analysis
30 / 50trigger folding of the section

30/50 points: code has no errors, warnings, lints, or formatting issues

Found 34 issues. Showing the first 2:

WARNING: Dead code.

bin/twigfmt.dart:75:7

   ╷
75 │       break;
   │       ^^^^^^
   ╵

To reproduce make sure you are using the lints_core and run dart analyze bin/twigfmt.dart

WARNING: The receiver can't be null because of short-circuiting, so the null-aware operator '?.' can't be used.

lib/src/text/parser.dart:89:25

   ╷
89 │     if (html?.span?.text?.toLowerCase() != 'html') {
   │                         ^^
   ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/text/parser.dart

OK
Support up-to-date dependencies
40 / 40trigger folding of the section

10/10 points: All of the package dependencies are supported in the latest version

Package Constraint Compatible Latest
args ^2.1.0 2.6.0 2.6.0
charcode ^1.2.0 1.3.1 1.3.1
collection ^1.15.0-nullsafety.4 1.19.1 1.19.1
essential_code_buffer ^2.0.1 2.0.1 2.0.1
essential_symbol_table ^2.0.1 2.0.1 2.0.1
matcher ^0.12.10 0.12.17 0.12.17
source_span ^1.8.1 1.10.0 1.10.0
string_scanner ^1.1.0 1.4.0 1.4.0
Transitive dependencies
Package Constraint Compatible Latest
async - 2.12.0 2.12.0
boolean_selector - 2.1.2 2.1.2
meta - 1.16.0 1.16.0
path - 1.9.1 1.9.1
stack_trace - 1.12.0 1.12.0
stream_channel - 2.1.2 2.1.2
term_glyph - 1.2.1 1.2.1
test_api - 0.7.3 0.7.3

To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.

10/10 points: Package supports latest stable Dart and Flutter SDKs

20/20 points: Compatible with dependency constraint lower bounds

pub downgrade does not expose any static analysis error.

Analyzed with Pana 0.22.15, Dart 3.5.4.

Check the analysis log for details.

3
likes
130
pub points
22%
popularity

Publisher

verified publishergalileodart.com

A simple server-side HTML templating engine for Dart. Comparable to Blade or Liquid.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

args, charcode, collection, essential_code_buffer, essential_symbol_table, matcher, source_span, string_scanner

More

Packages that depend on twig_dart