learn_review 0.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 3cc4723caebd0dcb73dcfb0665cfd78998b666911eb26c0b199f75be3cdf75e0
4
+ data.tar.gz: 36c078a774363ff83f47299d10a50ebdab185162aa56b6d78f66837c14a5c35f
5
+ SHA512:
6
+ metadata.gz: d2667da1ddfa81299f7e78a7c49f9ae2c3863dd6335acc4caad5aab9b5a049f9e1ad96251886faef9e14d1cc0ee2b26093cf4fcd3e29200f2f711f0df253be24
7
+ data.tar.gz: 7e0346468c4355fb9625ffe60e3b245a02f5c45581cb45193c7d4655c35d737c363b1fb4f2c9133a764223fe4a5036931bfc4ba71e34daf134caec9275e75c90
data/Gemfile ADDED
@@ -0,0 +1,11 @@
1
+ source "https://rubygems.org"
2
+
3
+ git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
4
+
5
+ gem 'json'
6
+ gem 'require_all'
7
+ gem 'odyssey'
8
+ gem 'awesome_print'
9
+
10
+ # Specify your gem's dependencies in readability_score.gemspec
11
+ gemspec
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task :default => :spec
data/bin/learn_review ADDED
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'learn_review'
4
+ LearnReview.new
@@ -0,0 +1,61 @@
1
+ require 'json'
2
+ require 'require_all'
3
+ require 'odyssey'
4
+ require 'awesome_print'
5
+
6
+ class LearnReview
7
+ def initialize(filename = 'README.md')
8
+ puts "Checking the contents of #{filename}..."
9
+ puts ''
10
+ fh = open filename
11
+ content = fh.read
12
+ fh.close
13
+
14
+ average_readability = Odyssey.ari(content, false)
15
+ coleman_liau = Odyssey.coleman_liau(content, false)
16
+ grade_level = Odyssey.flesch_kincaid_grade_level(content, false)
17
+ readability_ease = Odyssey.flesch_kincaid_reading_ease(content, false)
18
+ gunning_fog = Odyssey.gunning_fog(content, false)
19
+ smog = Odyssey.smog(content, false)
20
+ text = Odyssey.fake_formula(content, true)
21
+
22
+ gender_specific_words = %w[he she him her]
23
+ .select do |word|
24
+ text['score']['words'].include?(word)
25
+ end
26
+
27
+ relevant_words = ['readme', 'code along', 'codealong', 'lab', 'test']
28
+ .select do |word|
29
+ text['score']['words'].include?(word)
30
+ end
31
+
32
+ irrelevant_words = ['a', 'an', 'and', 'the', 'like', 'with', 'through', 'over', 'before', 'at', 'of', 'to', 'in', 'for', 'on', 'by', 'between', 'after', 'since', 'without', 'under', 'beyond', 'near', 'above', 'off', 'down', 'except', 'about', 'learn', 'co', 'open', 'really', "we're"]
33
+ word_hash = {}
34
+ text['score']['words']
35
+ .reject { |word| irrelevant_words.include?(word.downcase) }
36
+ .each do |word|
37
+ word_hash.key?(word) ? word_hash[word] += 1 : word_hash[word] = 1
38
+ end
39
+
40
+ puts 'Automated Readability Index (1 => Kindergarten, 8 => 7th Grade, 14+ => College Level):'
41
+ puts average_readability
42
+ puts ''
43
+ puts 'Coleman Liau Index (1 => Kindergarten, 8 => 7th Grade, 14+ => College Level):'
44
+ puts coleman_liau
45
+ puts ''
46
+ puts 'Flesch Kincaid Grade Level (1 => Kindergarten, 8 => 7th Grade, 14+ => College Level):'
47
+ puts grade_level
48
+ puts ''
49
+ puts 'Flesch Kincaid Reading Ease (100.0-90.0 => 5th Grade, 80.0-70.0 => 7th Grade, 50.0-30.0 => College Level):'
50
+ puts readability_ease
51
+ puts ''
52
+ puts 'Gunning Fog Index (7 => 7th grade, 10 => 10th Grade, 13-16 => College Level):'
53
+ puts gunning_fog
54
+ puts ''
55
+ puts 'Smog Index (7 => 7th grade, 10 => 10th Grade, 13-16 => College Level):'
56
+ puts smog
57
+ puts ''
58
+
59
+ puts "Gender specific words: #{gender_specific_words}"
60
+ end
61
+ end
metadata ADDED
@@ -0,0 +1,48 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: learn_review
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ platform: ruby
6
+ authors:
7
+ - flatironschool
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2018-10-10 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description:
14
+ email: maxwell@flatironschool.com
15
+ executables:
16
+ - learn_review
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - Gemfile
21
+ - Rakefile
22
+ - bin/learn_review
23
+ - lib/learn_review.rb
24
+ homepage:
25
+ licenses:
26
+ - MIT
27
+ metadata: {}
28
+ post_install_message:
29
+ rdoc_options: []
30
+ require_paths:
31
+ - lib
32
+ required_ruby_version: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: '0'
37
+ required_rubygems_version: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ version: '0'
42
+ requirements: []
43
+ rubyforge_project:
44
+ rubygems_version: 2.7.6
45
+ signing_key:
46
+ specification_version: 4
47
+ summary: learn_review is a tool for reviewing learn.co lessons
48
+ test_files: []