Skip to content

Library for project planning from YouTrack data. Retrieve past project schedule from activity log, and compute future schedule from unresolved issues and the available contributors.

License

Notifications You must be signed in to change notification settings

fschopp/project-planning-for-you-track

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Library for project planning from YouTrack data. Retrieve past project schedule from activity log, and compute future schedule from unresolved issues and the available contributors.

Status

Build Status Coverage Status Language grade: JavaScript npm

Overview

  • Comprehensive API documentation. Generated by TypeDoc.
  • See the interactive demo for experimenting with the API.
  • Reconstructs a project plan (that is, an overview when each issue was being worked on) from the YouTrack activity log.
  • Uses the list-scheduling algorithm implemented in fschopp/project-planning-js to compute a (future) project plan for the unresolved YouTrack issues.
  • Written in TypeScript, but easily usable from JavaScript.
  • Tests have full code coverage.

License

Apache License 2.0

Releases and Usage

Published releases include TypeScript type declarations and are available as either UMD or ECMAScript 2015 (aka ES6) modules.

Node.js

Install with npm install @fschopp/project-planning-for-you-track or yarn add @fschopp/project-planning-for-you-track. Use the package as follows (example is in TypeScript, but ES6 JavaScript essentially reads the same, minus the types):

import {
  ProgressCallback,
  ProjectPlan,
  retrieveProjectPlan,
  YouTrackConfig,
} from '@fschopp/project-planning-for-you-track';
const baseUrl: string = 'https://<name>.myjetbrains.com/';
const progressUpdate: ProgressCallback = (percentDone) => {
  /* ... */
};
const youTrackConfig: YouTrackConfig = {
  stateFieldId: '<state-field-id>',
  /* ... */
};
const promise: Promise<ProjectPlan> =
    retrieveProjectPlan(baseUrl, youTrackConfig, progressUpdate);

Browser

Include the minified sources from the jsDelivr CDN:

<script src="https://cdn.jsdelivr.net/npm/@fschopp/project-planning-for-you-track@.../dist/index.min.js"
  integrity="..." crossorigin="anonymous"></script>

Of course, the two occurrences of ... need to be replaced by the current version and its corresponding subresource integrity (SRI) hash. Then, in a subsequent script:

/* baseUrl, youTrackConfig, and progressUpdate defined as above */
const promise = ProjectPlanningForYouTrack.retrieveProjectPlan(
    baseUrl, youTrackConfig, progressUpdate);

If you intend to use method scheduleUnresolved(), note that it depends on fschopp/project-planning-js. You therefore need to add a <script> element for that package, too; before the one for this package. Due to cross-origin restrictions for web workers, package fschopp/project-planning-js needs to be served from the same domain as your website (see also the explanation there).

Build

References

About

Library for project planning from YouTrack data. Retrieve past project schedule from activity log, and compute future schedule from unresolved issues and the available contributors.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published