Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/derekstride/competency-tracker
https://github.com/derekstride/competency-tracker
Last synced: 5 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/derekstride/competency-tracker
- Owner: DerekStride
- Created: 2016-03-03T15:13:16.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2018-10-03T15:38:12.000Z (about 6 years ago)
- Last Synced: 2024-10-28T02:07:34.463Z (about 2 months ago)
- Language: Ruby
- Size: 113 KB
- Stars: 1
- Watchers: 44
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Purpose [![Build Status](https://travis-ci.org/DerekStride/competency-tracker.svg?branch=master)](https://travis-ci.org/DerekStride/competency-tracker)
A RESTful service to make it easy for employees to track their *competencies* as well as others’. Useful for tracking learning (technical, managerial, etc.) as well as finding experts (e.g., for code review). *Mastery levels* can be specified for each competency and employee, and could follow a simplified version of [Bloom’s taxonomy](https://en.wikipedia.org/wiki/Bloom%27s_taxonomy) (or any other custom one); they get acquired via *learning sources* and assessed by *assessors* (team lead, peer, in-house instructor, etc.).
Competencies can be organized in hierarchies (think: area, subarea, etc.). At the leaf level, they can be used to express *learning outcomes*.
One can also express *prerequisites* between competencies.
Ideally would connect to existing tools (HR/employee list) or even be simply an extension thereof.
# Current status and roadmap
- [x] provide a Model for competencies (as per the short description above);
- [x] a REST API for CRUD
- [x] Google OAUTH for user authentication
- [ ] generate custom competency map of prerequisites, with links to the relevant employees, teams, learning material, etc.;
- [x] scripts to upload competencies from various sources, mostly spreadsheets in various forms;
- [ ] a front-end to visualize and track progress, to assess, to navigate, etc.# Howto
This is your typical rails app. Clone it, then run rails server. Alternately, deploy on Heroku.
Let's use [HTTPIE](https://github.com/jkbrzt/httpie) to populate a local server using the command line. The output to all the commands below should be formatted in JSON, since we're using the `--j` flag:
* create a competency called "Juggling": `http --j POST :3000/competencies name=Juggling`
* did it work? let's get all the competencies created so far: `http --j GET :3000/competencies`
* you should see one JSON object with id = 1
* oops, meant to call it "Can Juggle" instead: `http --j PUT :3000/competencies/1 name="Can Juggle`
* If you want to add subtopics to a competency, try `http --j PUT :3000/competencies/1 competency:='{"subtopic_ids":["2", "9", "4"]}'`See our competency controller specs for more complex examples.