daily_programmer_client_dart 1.1.2

  • README.md
  • CHANGELOG.md
  • Example
  • Installing
  • Versions
  • 50

Daily programing client dart

pub package Build Status Coverage Status

daily_programmer_dart_cli will generate a project skeleton into the current directory.

Installation

Requirements

Nothing.

To install

pub global activate daily_programmer_client_dart

To update, run activate again

pub global activate daily_programmer_client_dart

Usage

As an example, here is how you create a package with daily_programmer_dart_cli :

Usage: daily_programmer_dart_cli <command> [arguments]

Global options:
-h, --help            Print this usage information.
-v, --[no-]verbose    Output extra logging information.

Available commands:
  challenge   Generate a new challenge.
  help        Display help information for daily_programmer.
  project     Generate a new project challenge.
  run         Run one or more challenges.

Run "daily_programmer_dart_cli help <command>" for more information about a command.

Example

mkdir my_challenges
cd my_challenges
daily_programmer_dart_cli

Challenges ? (Wait, what ?)

  • What ?
  • Where ?
  • With ? this and this
  • Why ?
    • Learn dart
    • Practice software design
    • Practice programming
    • Practice problem solving
    • Keep your programming skills current
    • Gain insights from peers
    • Motivation to practice by solving problems
    • To have fun
    • ...

Struct

.
├── .gitignore
├── bin
│   └── main.dart
├── lib                            # Contains all challenges
│   └── challenge-xxx.dart         # Source of challenge
├── pubspec.yaml
└── test
    ├── all.dart                   # Dart file for call all test
    └── challenges                 # Contains test
        └── challenge-xxx.dart     # Source of challenge test

My rules

  • No lint warning
  • Coverage of src > 95%
  • Latest version used
  • Only dart

Changelog

0.0.1

  • Initial version, created by gouvinb

0.0.2 -> 0.0.3

  • Lint
  • Fix warning exception when generate project

0.0.4

  • Move code to src folder
  • Lint markdown

0.0.5

  • Remove usless file

0.0.6

  • Lint and fix deps
  • Replace example bash script with sample dart code

0.0.7

  • Update readme (install and update part)

1.0.0

  • remove pana and add trace to test
  • add badges
  • lint yml
  • update .travis.yml, add pana and coveralls
  • add travis support
  • clean example

1.0.1 -> 1.0.2

  • fix travis slack

1.1.0 -> 1.1.2

  • fix all error of generated project or challenge
  • rework struct of generated project
  • md lint
  • update readme
  • update example

example/main.dart

import 'dart:io';

const _nameOfProject = 'project-example';

// This dart code send 4 command in your shell for example.
void main(List<String> args) {
  setUpExample();
  // Step 1: project command dry run
  run('daily_programmer_dart_cli project --dry-run -p /tmp -n challenge-0 $_nameOfProject');
  // Step 2: project command
  run('daily_programmer_dart_cli project -p /tmp -n challenge-0 project');
  // Step 3: challenge command dry run
  run('daily_programmer_dart_cli challenge --dry-run -p /tmp/$_nameOfProject challenge-1');
  // Step 4: challenge command
  run('daily_programmer_dart_cli challenge -p /tmp/$_nameOfProject challenge-1');
}

/// Simple process runner wrapper
void run(String command) {
  Process.runSync(command.split(' ')[0], command.split(' ')..removeAt(0));
}

/// Check OS and remove `/tmp/project` for clean this example
void setUpExample() {
  if (!Platform.isLinux && !Platform.isMacOS) {
    print('Your OS (${Platform.operatingSystem}) is not supported.');
    exit(1);
  }
  run('rm -rf /tmp/$_nameOfProject');
}

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  daily_programmer_client_dart: "^1.1.2"

2. Install it

You can install packages from the command line:

with pub:


$ pub get

with Flutter:


$ flutter packages get

Alternatively, your editor might support pub get or packages get. Check the docs for your editor to learn more.

Version Uploaded Documentation Archive
1.1.2 Mar 1, 2018 Go to the documentation of daily_programmer_client_dart 1.1.2 Download daily_programmer_client_dart 1.1.2 archive
1.1.1 Mar 1, 2018 Go to the documentation of daily_programmer_client_dart 1.1.1 Download daily_programmer_client_dart 1.1.1 archive
1.1.0 Mar 1, 2018 Go to the documentation of daily_programmer_client_dart 1.1.0 Download daily_programmer_client_dart 1.1.0 archive
1.0.2 Jan 12, 2018 Go to the documentation of daily_programmer_client_dart 1.0.2 Download daily_programmer_client_dart 1.0.2 archive
1.0.0 Jan 12, 2018 Go to the documentation of daily_programmer_client_dart 1.0.0 Download daily_programmer_client_dart 1.0.0 archive
0.0.7 Jan 11, 2018 Go to the documentation of daily_programmer_client_dart 0.0.7 Download daily_programmer_client_dart 0.0.7 archive
0.0.6 Jan 11, 2018 Go to the documentation of daily_programmer_client_dart 0.0.6 Download daily_programmer_client_dart 0.0.6 archive
0.0.5 Jan 11, 2018 Go to the documentation of daily_programmer_client_dart 0.0.5 Download daily_programmer_client_dart 0.0.5 archive
0.0.4 Jan 11, 2018 failed Download daily_programmer_client_dart 0.0.4 archive
0.0.3 Jan 11, 2018 failed Download daily_programmer_client_dart 0.0.3 archive

All 12 versions...

Analysis

We analyzed this package on Apr 23, 2018, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.0.0-dev.49.0
  • pana: 0.10.6

Scores

Popularity:
Describes how popular the package is relative to other packages. [more]
0 / 100
Health:
Code health derived from static analysis. [more]
100 / 100
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
100 / 100
Overall score:
Weighted score of the above. [more]
50
Learn more about scoring.

Platforms

Detected platforms: Flutter, web, other

No platform restriction found in libraries.

Suggestions

  • Fix analysis and formatting issues.

    Analysis or formatting checks reported 2 hints.

    Strong-mode analysis of lib/src/util/template_file.dart gave the following hint:

    line: 2 col: 28
    'UTF8' is deprecated and shouldn't be used.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.24.0 <2.0.0
args ^1.2.0 1.4.2
logging ^0.11.3+1 0.11.3+1
mustache ^1.0.0 1.0.0
path ^1.5.1 1.5.1
resource ^2.1.2 2.1.2
Transitive dependencies
typed_data 1.1.5
Dev dependencies
test ^0.12.30