jaspr_clean_syntax 0.1.0+1 copy "jaspr_clean_syntax: ^0.1.0+1" to clipboard
jaspr_clean_syntax: ^0.1.0+1 copied to clipboard

Simplified Jasper Syntax

Jaspr Clean Syntax #

style: very good analysis Powered by Mason License: MIT

Simplified Jasper Syntax

Installation ๐Ÿ’ป #

โ— In order to start using Jaspr Clean Syntax you must have the Dart SDK installed on your machine.

Install via dart pub add:

dart pub add jaspr_clean_syntax

Example #

import 'package:jaspr/jaspr.dart';
import '../constants/theme.dart';

class MyHeader extends StatelessComponent {
  const MyHeader({super.key});

  @override
  Iterable<Component> build(BuildContext context) sync* {
    var activePath = context.binding.currentUri.path;

    yield Div([
      Header([
        Div(
          [
            Avatar(),
            NavOptions(activePath),
            ResumeButton(),
          ],
        ).props(styles: style),
      ]).props(styles: headerStyles),
    ]).props(
      position: Position.sticky(top: 0.px),
      bgColor: sectionColor,
    );
  }
}

final style = Styles.flexbox(
  justifyContent: JustifyContent.spaceBetween,
  alignItems: AlignItems.center,
);

final headerStyles = Styles.box(
  maxWidth: 1024.px,
  width: 100.percent,
  padding: EdgeInsets.symmetric(vertical: 1.em),
).raw({
  'margin': '0 auto',
});

Continuous Integration ๐Ÿค– #

Jaspr Clean Syntax comes with a built-in GitHub Actions workflow powered by Very Good Workflows but you can also add your preferred CI/CD solution.

Out of the box, on each pull request and push, the CI formats, lints, and tests the code. This ensures the code remains consistent and behaves correctly as you add functionality or make changes. The project uses Very Good Analysis for a strict set of analysis options used by our team. Code coverage is enforced using the Very Good Workflows.


Running Tests ๐Ÿงช #

To run all unit tests:

dart pub global activate coverage 1.2.0
dart test --coverage=coverage
dart pub global run coverage:format_coverage --lcov --in=coverage --out=coverage/lcov.info

To view the generated coverage report you can use lcov.

# Generate Coverage Report
genhtml coverage/lcov.info -o coverage/

# Open Coverage Report
open coverage/index.html