This repository has been archived by the owner on Oct 4, 2022. It is now read-only.
Releases: Yoast/YoastSEO.js
Releases · Yoast/YoastSEO.js
1.3.0
Added
- Assessments that assess the following properties:
- The length of subheadings.
- The length of text following a subheading.
- The length of paragraphs.
- The length of sentences.
- The presence of transition words.
- The presence of the passive voice.
- Markers for certain assessments that can show the location of the feedback inside the text:
- The length of paragraphs.
- The length of sentences.
- The presence of passive voice.
- The presence of transition words.
- The presence of links with the focus keyword as link text.
- Transliteration for the following languages:
- Spanish, Polish, German, Nynorsk, Bokmål, Swedish, Finnish,
- Danish, Turkish, Latvian, Icelandic, Faroese, Czech, Russian,
- Esperanto, Afrikaans, Catalan, Asturian, Aragonese, Aymara,
- English, French, Italian, Dutch, Bambara.
- Improved accessibility in the snippet preview.
- Added a marker argument to the
App
that can be used to inject a marker function. - Added a marker argument to the
Assessor
that can be used to inject a marker function. - Added a button after all assessment results that can be marked in the text.
Changed
- Created a contentAssessor that contains all content assessments. Some
assessments have been moved from the SEO sssessor to the content
assessor. - Gracefully fail on assessment failure. An assessment that has a fatal
error now will be shown as a gray bullet and add a trace to the console. - Improve the way we detect sentences in the text.
- Improve performance of the flesch reading ease.
- Make sure the refresh of the app is always properly debounced.
- Add identifier to all assessments and assessment results to be able to reference them later.
- Hide progress bars from screen readers.
Fixed
- Fix a bug where a modification on the title wasn't correctly taken into account.
- Fix a bug where alt tags were requires in all images instead of in only one of the images.
- Fix a bug where having subheadings without the focus keyword was worse than having no subheadings at all.
- Fix a bug where requiring paper in index.js would fail on case-sensitive systems, props Chris Bosco.
1.2.2
1.2.1
1.2.0
Backwards incompatible changes
- Stopped loading sassdash, when importing the scss files you need to include sassdash yourself.
- Removed all analyses in favor of researches.
- Implement the used keywords assessment as a bundled plugin, this means that an implementation should call the plugin itself.
- Removes
js/config/scoring.js
- Removes
js/analyzer.js
- Removes
js/analyzescorer.js
- Removes
browser.js
as we expect implementations to browserify themselves. - Removes
app.registerTest
in favor ofapp.registerAssessment
. - Removes
js/scoreFormatter.js
Features
- Introduces several value objects to more easily work with content and results:
Paper
to represent the text that is about to be assessed.AssessmentResult
to represent the result of a single assessment.
- Implements all value judgements about content as assessments, we introduced the following assessments:
- FleschReadingEaseAssessment
- IntroductionKeywordAssessment
- KeyphraseLengthAssessment
- KeywordDensityAssessment
- KeywordStopWordsAssessment
- MetaDescriptionKeywordAssessment
- MetaDescriptionLengthAssessment
- SubheadingsKeywordAssessment
- TaxonomyTextLengthAssessment
- TextCompetingLinksAssessment
- TextImagesAssessment
- TextLengthAssessment
- TextLinksAssessment
- TextSubheadingsAssessment
- TitleKeywordAssessment
- TitleLengthAssessment
- UrlKeywordAssessment
- UrlLengthAssessment
- UrlStopWordsAssessment
- Implements all statistics about a text as researches, we introduced the following researches. All researches expect a
Paper
.- calculateFleschReading
- countLinks
- findKeywordInFirstParagraph
- findKeywordInPageTitle
- getKeywordDensity
- getLinks
- getLinkStatistics
- imageAltTags
- imageCountInText
- keyphraseLength
- keywordCountInUrl
- matchKeywordInSubheadings
- matchSubHeadings
- metaDescriptionKeyword
- metaDescriptionLength
- pageTitleLength
- stopWordsInKeyword
- stopWordsInText
- stopWordsInUrl
- urlIsTooLong
- wordCountInText
- Introduces an
Assessor
that contains a number of assessments and is able to determine a total assessment. - Introduces an
SEOAssessor
that has all the assessments that are currently available. - Introduces an
AssessorPresenter
to output the results of anAssessor
to the DOM. - Introduces a template to more easily render the assessment results.
- Introduces an
Researches
that contains a number of researches and is you can retrieve a specific research from. - Rewrites the
App
to make use of the assessor setup. - Introduces
scoreToRating
to transform a score to a rating. - Introduces
InvalidTypeError
for passing invalid types to constructors or methods - Introduces
config/presenter.js
to transform a rating into a className or screenreader text. - Exports certain prototypes and functions in an
index.js
.
Enhancements
- Improves the contrast between the background and the red circle by choosing a different color red.
- Add a clearfix mixin.
- Switches to ESLint in favor of JSHint, JSONLint, JSValidate and JSCS.
- Switches to a custom grunt script to build the lodash templates,
grunt-lodash
is deprecated. - Adds an argument to
stringToRegex
to specify whether to replace diacritics before building the regex. - Massively improves test coverage.
- Updates
lodash
from version 3 to version 4. - Pluralizes certain translations, this makes it possible to correctly translate these strings.
- Adds a sass function for a caret point to the left.
Bugfixes
- Removes several
for..in
calls that errored when build in prototypes had added methods or properties. - Fixes a bug where accented characters were not correctly matched in subheadings and the snippet editor.