diff --git a/.github/styles/Apify/H1.yml b/.github/styles/Apify/H1.yml new file mode 100644 index 0000000000..7d980b4055 --- /dev/null +++ b/.github/styles/Apify/H1.yml @@ -0,0 +1,4 @@ +extends: existence +message: 'Do not use H1 headings (#). The main title is generated automatically. Please use H2 (##) or lower.' +level: error +scope: heading.h1 \ No newline at end of file diff --git a/.github/styles/Microsoft/Accessibility.yml b/.github/styles/Microsoft/Accessibility.yml index 05bf927390..f5f4829392 100644 --- a/.github/styles/Microsoft/Accessibility.yml +++ b/.github/styles/Microsoft/Accessibility.yml @@ -6,20 +6,25 @@ ignorecase: true tokens: - a victim of - able-bodied - - affected by - an epileptic + - birth defect - crippled + - differently abled - disabled - dumb - handicapped - handicaps - - healthy + - healthy person + - hearing-impaired - lame - maimed + - mentally handicapped - missing a limb - mute - - normal + - non-verbal + - normal person - sight-impaired + - slow learner - stricken with - suffers from - vision-impaired diff --git a/.github/styles/Microsoft/Adverbs.yml b/.github/styles/Microsoft/Adverbs.yml index 07d98d83e3..5619f99d8c 100644 --- a/.github/styles/Microsoft/Adverbs.yml +++ b/.github/styles/Microsoft/Adverbs.yml @@ -1,5 +1,5 @@ extends: existence -message: "Consider removing '%s'." +message: "Remove '%s' if it's not important to the meaning of the statement." link: https://docs.microsoft.com/en-us/style-guide/word-choice/use-simple-words-concise-sentences ignorecase: true level: warning @@ -54,6 +54,7 @@ tokens: - doubtfully - dreamily - easily + - effectively - elegantly - energetically - enormously @@ -164,6 +165,7 @@ tokens: - quickly - quietly - quirkily + - quite - quizzically - randomly - rapidly diff --git a/.github/styles/Microsoft/ComplexWords.yml b/.github/styles/Microsoft/ComplexWords.yml deleted file mode 100644 index 65b7a34721..0000000000 --- a/.github/styles/Microsoft/ComplexWords.yml +++ /dev/null @@ -1,120 +0,0 @@ -extends: substitution -message: "Consider using '%s' instead of '%s'." -link: https://docs.microsoft.com/en-us/style-guide/word-choice/use-simple-words-concise-sentences -ignorecase: true -level: suggestion -action: - name: replace -swap: - "approximate(?:ly)?": about - abundance: plenty - accelerate: speed up - accentuate: stress - accompany: go with - accomplish: carry out|do - accorded: given - accordingly: so - accrue: add - accurate: right|exact - acquiesce: agree - acquire: get|buy - additional: more|extra - address: discuss - addressees: you - adjacent to: next to - adjustment: change - admissible: allowed - advantageous: helpful - advise: tell - aggregate: total - aircraft: plane - alleviate: ease - allocate: assign|divide - alternatively: or - alternatives: choices|options - ameliorate: improve - amend: change - anticipate: expect - apparent: clear|plain - ascertain: discover|find out - assistance: help - attain: meet - attempt: try - authorize: allow - belated: late - bestow: give - cease: stop|end - collaborate: work together - commence: begin - compensate: pay - component: part - comprise: form|include - concept: idea - concerning: about - confer: give|award - consequently: so - consolidate: merge - constitutes: forms - contains: has - convene: meet - demonstrate: show|prove - depart: leave - designate: choose - desire: want|wish - determine: decide|find - detrimental: bad|harmful - disclose: share|tell - discontinue: stop - disseminate: send|give - eliminate: end - elucidate: explain - employ: use - enclosed: inside|included - encounter: meet - endeavor: try - enumerate: count - equitable: fair - equivalent: equal - exclusively: only - expedite: hurry - facilitate: ease - females: women - finalize: complete|finish - frequently: often - identical: same - incorrect: wrong - indication: sign - initiate: start|begin - itemized: listed - jeopardize: risk - liaise: work with|partner with - maintain: keep|support - methodology: method - modify: change - monitor: check|watch - multiple: many - necessitate: cause - notify: tell - numerous: many - objective: aim|goal - obligate: bind|compel - optimum: best|most - permit: let - portion: part - possess: own - previous: earlier - previously: before - prioritize: rank - procure: buy - provide: give|offer - purchase: buy - relocate: move - solicit: request - state-of-the-art: latest - subsequent: later|next - substantial: large - sufficient: enough - terminate: end - transmit: send - utilization: use - utilize: use diff --git a/.github/styles/Microsoft/Dashes.yml b/.github/styles/Microsoft/Dashes.yml index 2894cf7229..72b05ba3e5 100644 --- a/.github/styles/Microsoft/Dashes.yml +++ b/.github/styles/Microsoft/Dashes.yml @@ -7,7 +7,7 @@ level: error action: name: edit params: - - remove - - ' ' + - trim + - " " tokens: - - '[—–]\s|\s[—–]' + - '\s[—–]\s|\s[—–]|[—–]\s' diff --git a/.github/styles/Microsoft/FirstPerson.yml b/.github/styles/Microsoft/FirstPerson.yml index 77761af883..f58dea3142 100644 --- a/.github/styles/Microsoft/FirstPerson.yml +++ b/.github/styles/Microsoft/FirstPerson.yml @@ -5,8 +5,8 @@ ignorecase: true level: warning nonword: true tokens: - - (?:^|\s)I\s - - (?:^|\s)I,\s + - (?:^|\s)I(?=\s) + - (?:^|\s)I(?=,\s) - \bI'd\b - \bI'll\b - \bI'm\b diff --git a/.github/styles/Microsoft/GenderBias.yml b/.github/styles/Microsoft/GenderBias.yml index 3d873aa31d..fc987b94e9 100644 --- a/.github/styles/Microsoft/GenderBias.yml +++ b/.github/styles/Microsoft/GenderBias.yml @@ -2,43 +2,41 @@ extends: substitution message: "Consider using '%s' instead of '%s'." ignorecase: true level: error +action: + name: replace swap: - (?:alumna|alumnus): graduate - (?:alumnae|alumni): graduates - air(?:m[ae]n|wom[ae]n): pilot(s) - anchor(?:m[ae]n|wom[ae]n): anchor(s) - authoress: author - camera(?:m[ae]n|wom[ae]n): camera operator(s) - chair(?:m[ae]n|wom[ae]n): chair(s) - congress(?:m[ae]n|wom[ae]n): member(s) of congress - door(?:m[ae]|wom[ae]n): concierge(s) - draft(?:m[ae]n|wom[ae]n): drafter(s) - fire(?:m[ae]n|wom[ae]n): firefighter(s) - fisher(?:m[ae]n|wom[ae]n): fisher(s) - fresh(?:m[ae]n|wom[ae]n): first-year student(s) - garbage(?:m[ae]n|wom[ae]n): waste collector(s) - lady lawyer: lawyer - ladylike: courteous - landlord: building manager - mail(?:m[ae]n|wom[ae]n): mail carriers - man and wife: husband and wife - man enough: strong enough - mankind: human kind - manmade: manufactured - manpower: personnel - men and girls: men and women - middle(?:m[ae]n|wom[ae]n): intermediary - news(?:m[ae]n|wom[ae]n): journalist(s) - ombuds(?:man|woman): ombuds - oneupmanship: upstaging - poetess: poet - police(?:m[ae]n|wom[ae]n): police officer(s) - repair(?:m[ae]n|wom[ae]n): technician(s) - sales(?:m[ae]n|wom[ae]n): salesperson or sales people - service(?:m[ae]n|wom[ae]n): soldier(s) - steward(?:ess)?: flight attendant - tribes(?:m[ae]n|wom[ae]n): tribe member(s) - waitress: waiter - woman doctor: doctor - woman scientist[s]?: scientist(s) - work(?:m[ae]n|wom[ae]n): worker(s) + (?:alumna|alumnus): graduate + (?:alumnae|alumni): graduates + air(?:m[ae]n|wom[ae]n): pilot(s) + anchor(?:m[ae]n|wom[ae]n): anchor(s) + authoress: author + camera(?:m[ae]n|wom[ae]n): camera operator(s) + door(?:m[ae]|wom[ae]n): concierge(s) + draft(?:m[ae]n|wom[ae]n): drafter(s) + fire(?:m[ae]n|wom[ae]n): firefighter(s) + fisher(?:m[ae]n|wom[ae]n): fisher(s) + fresh(?:m[ae]n|wom[ae]n): first-year student(s) + garbage(?:m[ae]n|wom[ae]n): waste collector(s) + lady lawyer: lawyer + ladylike: courteous + mail(?:m[ae]n|wom[ae]n): mail carriers + man and wife: husband and wife + man enough: strong enough + mankind: human kind + manmade: manufactured + manpower: personnel + middle(?:m[ae]n|wom[ae]n): intermediary + news(?:m[ae]n|wom[ae]n): journalist(s) + ombuds(?:man|woman): ombuds + oneupmanship: upstaging + poetess: poet + police(?:m[ae]n|wom[ae]n): police officer(s) + repair(?:m[ae]n|wom[ae]n): technician(s) + sales(?:m[ae]n|wom[ae]n): salesperson or sales people + service(?:m[ae]n|wom[ae]n): soldier(s) + steward(?:ess)?: flight attendant + tribes(?:m[ae]n|wom[ae]n): tribe member(s) + waitress: waiter + woman doctor: doctor + woman scientist[s]?: scientist(s) + work(?:m[ae]n|wom[ae]n): worker(s) diff --git a/.github/styles/Microsoft/HeadingPunctuation.yml b/.github/styles/Microsoft/HeadingPunctuation.yml index af04b02ebf..4954cb11ae 100644 --- a/.github/styles/Microsoft/HeadingPunctuation.yml +++ b/.github/styles/Microsoft/HeadingPunctuation.yml @@ -7,7 +7,7 @@ scope: heading action: name: edit params: - - remove - - '.?!' + - trim_right + - ".?!" tokens: - - '[a-z][.?!](?:\s|$)' + - "[a-z][.?!]$" diff --git a/.github/styles/Microsoft/Hyphens.yml b/.github/styles/Microsoft/Hyphens.yml index 90bbb5def9..7e5731c995 100644 --- a/.github/styles/Microsoft/Hyphens.yml +++ b/.github/styles/Microsoft/Hyphens.yml @@ -7,8 +7,8 @@ nonword: true action: name: edit params: - - replace - - '-' - - ' ' + - regex + - "-" + - " " tokens: - - '\s[^\s-]+ly-' + - '\b[^\s-]+ly-\w+\b' diff --git a/.github/styles/Microsoft/Negative.yml b/.github/styles/Microsoft/Negative.yml index d6ff2f2243..d73221f539 100644 --- a/.github/styles/Microsoft/Negative.yml +++ b/.github/styles/Microsoft/Negative.yml @@ -6,8 +6,8 @@ level: error action: name: edit params: - - replace - - '-' - - '–' + - regex + - "-" + - "–" tokens: - - '\s-\d+\s' + - '(?<=\s)-\d+(?:\.\d+)?\b' diff --git a/.github/styles/Microsoft/Plurals.yml b/.github/styles/Microsoft/Plurals.yml new file mode 100644 index 0000000000..1bb6660ade --- /dev/null +++ b/.github/styles/Microsoft/Plurals.yml @@ -0,0 +1,7 @@ +extends: existence +message: "Don't add '%s' to a singular noun. Use plural instead." +ignorecase: true +level: error +link: https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/s/s-es +raw: + - '\(s\)|\(es\)' diff --git a/.github/styles/Microsoft/RangeFormat.yml b/.github/styles/Microsoft/RangeFormat.yml deleted file mode 100644 index f1d736e9de..0000000000 --- a/.github/styles/Microsoft/RangeFormat.yml +++ /dev/null @@ -1,13 +0,0 @@ -extends: existence -message: "Use an en dash in a range of numbers." -link: https://docs.microsoft.com/en-us/style-guide/numbers -nonword: true -level: error -action: - name: edit - params: - - replace - - '-' - - '–' -tokens: - - '\b\d+\s?[-]\s?\d+\b' diff --git a/.github/styles/Microsoft/RangeTime.yml b/.github/styles/Microsoft/RangeTime.yml index cdd4b3346e..72d8bbfbe3 100644 --- a/.github/styles/Microsoft/RangeTime.yml +++ b/.github/styles/Microsoft/RangeTime.yml @@ -6,8 +6,8 @@ level: error action: name: edit params: - - replace - - '[-–]' - - 'to' + - regex + - "[-–]" + - "to" tokens: - '\b(?:AM|PM)\s?[-–]\s?.+(?:AM|PM)\b' diff --git a/.github/styles/Microsoft/Ranges.yml b/.github/styles/Microsoft/Ranges.yml deleted file mode 100644 index 67d9702b0f..0000000000 --- a/.github/styles/Microsoft/Ranges.yml +++ /dev/null @@ -1,7 +0,0 @@ -extends: existence -message: "In most cases, use 'from' or 'through' to describe a range of numbers." -link: 'https://docs.microsoft.com/en-us/style-guide/numbers' -nonword: true -level: warning -tokens: - - '\b\d+\s?[-–]\s?\d+\b' diff --git a/.github/styles/Microsoft/Terms.yml b/.github/styles/Microsoft/Terms.yml index 7708900ebb..65fca10aaa 100644 --- a/.github/styles/Microsoft/Terms.yml +++ b/.github/styles/Microsoft/Terms.yml @@ -7,27 +7,28 @@ ignorecase: true action: name: replace swap: - '(?:agent|virtual assistant|intelligent personal assistant)': personal digital assistant - '(?:drive C:|drive C>|C: drive)': drive C - '(?:internet bot|web robot)s?': bot(s) - '(?:microsoft cloud|the cloud)': cloud - '(?:mobile|smart) ?phone': phone - '24/7': every day - 'audio(?:-| )book': audiobook - 'back(?:-| )light': backlight - 'chat ?bots?': chatbot(s) + "(?:agent|virtual assistant|intelligent personal assistant)": personal digital assistant + "(?:assembler|machine language)": assembly language + "(?:drive C:|drive C>|C: drive)": drive C + "(?:internet bot|web robot)s?": bot(s) + "(?:microsoft cloud|the cloud)": cloud + "(?:mobile|smart) ?phone": phone + "24/7": every day + "audio(?:-| )book": audiobook + "back(?:-| )light": backlight + "chat ?bots?": chatbot(s) adaptor: adapter administrate: administer afterwards: afterward alphabetic: alphabetical alphanumerical: alphanumeric + an URL: a URL anti-aliasing: antialiasing anti-malware: antimalware anti-spyware: antispyware anti-virus: antivirus appendixes: appendices artificial intelligence: AI - '(?:assembler|machine language)': assembly language caap: CaaP conversation-as-a-platform: conversation as a platform eb: EB diff --git a/.github/styles/Microsoft/URLFormat.yml b/.github/styles/Microsoft/URLFormat.yml index 82e702f981..4e24aa59fe 100644 --- a/.github/styles/Microsoft/URLFormat.yml +++ b/.github/styles/Microsoft/URLFormat.yml @@ -1,10 +1,9 @@ extends: substitution -message: "Use '%s' instead of '%s'." +message: Use 'of' (not 'for') to describe the relationship of the word URL to a resource. ignorecase: true -level: error +link: https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/u/url +level: suggestion action: name: replace swap: URL for: URL of - an URL: a URL - diff --git a/.github/styles/Microsoft/Wordiness.yml b/.github/styles/Microsoft/Wordiness.yml index 22a4c932c8..8a4fea7483 100644 --- a/.github/styles/Microsoft/Wordiness.yml +++ b/.github/styles/Microsoft/Wordiness.yml @@ -2,12 +2,16 @@ extends: substitution message: "Consider using '%s' instead of '%s'." link: https://docs.microsoft.com/en-us/style-guide/word-choice/use-simple-words-concise-sentences ignorecase: true -level: warning +level: suggestion action: name: replace swap: - (?:give|gave) rise to: lead to + "sufficient number(?: of)?": enough + (?:extract|take away|eliminate): remove + (?:in order to|as a means to): to + (?:inform|let me know): tell (?:previous|prior) to: before + (?:utilize|make use of): use a (?:large)? majority of: most a (?:large)? number of: many a myriad of: myriad @@ -15,7 +19,7 @@ swap: all across: across all of a sudden: suddenly all of these: these - all of: all + all of(?! a sudden| these): all all-time record: record almost all: most almost never: seldom @@ -52,13 +56,14 @@ swap: continue on: continue despite the fact that: although disappear from sight: disappear + doomed to fail: doomed drag and drop: drag drag-and-drop: drag - doomed to fail: doomed due to the fact that: because during the period of: during during the time that: while emergency situation: emergency + establish connectivity: connect except when: unless excessive number: too many extend an invitation: invite @@ -74,6 +79,7 @@ swap: in a careful manner: carefully in a thoughtful manner: thoughtfully in a timely manner: timely + in addition: also in an effort to: to in between: between in lieu of: instead of @@ -106,7 +112,6 @@ swap: span across: span subsequent to: after successfully complete: complete - sufficient number (?:of)?: enough take action: act take into account: consider the question as to whether: whether diff --git a/.github/styles/Openly/A11Y.yml b/.github/styles/Openly/A11Y.yml new file mode 100644 index 0000000000..4abce73d16 --- /dev/null +++ b/.github/styles/Openly/A11Y.yml @@ -0,0 +1,9 @@ +--- +extends: substitution +message: Consider using '%s' instead of '%s' +ignorecase: true +level: error +action: + name: replace +swap: + (?:click|press): "'select'" diff --git a/.github/styles/Openly/Anthropomorphism.yml b/.github/styles/Openly/Anthropomorphism.yml new file mode 100644 index 0000000000..b016c34ef5 --- /dev/null +++ b/.github/styles/Openly/Anthropomorphism.yml @@ -0,0 +1,23 @@ +--- +extends: existence +ignorecase: true +level: warning +message: "Don't attribute human qualities to software or hardware." +raw: + - \b(?:PC|computer|object|machine|software|hardware|data|database|engine|message|command|interface)\b\s* +tokens: + - sees + - tells + - thinks + - wants + - cares + - realizes + - assumes + - knows + - remembers + - decides + - knows + - refuses + - demands + - understands + - behaves diff --git a/.github/styles/Openly/But.yml b/.github/styles/Openly/But.yml new file mode 100644 index 0000000000..ee6ebf9b9c --- /dev/null +++ b/.github/styles/Openly/But.yml @@ -0,0 +1,12 @@ +--- +extends: existence +message: "Do not start a paragraph with a 'but'." +level: error +scope: paragraph +action: + name: remove + params: + - remove + - '.?!' +tokens: + - ^But diff --git a/.github/styles/Openly/Clarity.yml b/.github/styles/Openly/Clarity.yml new file mode 100644 index 0000000000..a541d7c948 --- /dev/null +++ b/.github/styles/Openly/Clarity.yml @@ -0,0 +1,8 @@ +--- +extends: substitution +message: Consider using '%s' instead of '%s' +level: warning +ignorecase: false +# swap maps tokens in form of bad: good +swap: + help: assist diff --git a/.github/styles/Openly/E-Prime.yml b/.github/styles/Openly/E-Prime.yml new file mode 100644 index 0000000000..7b7c1cf19d --- /dev/null +++ b/.github/styles/Openly/E-Prime.yml @@ -0,0 +1,26 @@ +--- +extends: existence +message: 'Avoid using "%s"' +ignorecase: true +level: suggestion +tokens: + - am + - aren't + - being + - he's + - here's + - here's + - how's + - i'm + - isn't + - she's + - that's + - there's + - they're + - wasn't + - we're + - weren't + - what's + - where's + - who's + - you're \ No newline at end of file diff --git a/.github/styles/Openly/FutureTense.yml b/.github/styles/Openly/FutureTense.yml new file mode 100644 index 0000000000..40fcb87f23 --- /dev/null +++ b/.github/styles/Openly/FutureTense.yml @@ -0,0 +1,10 @@ +extends: existence +message: "Possible future tense." +ignorecase: true +level: warning +tokens: + - will + - '[\w][ll]' + - we are going + - would-be + - would be \ No newline at end of file diff --git a/.github/styles/Openly/GenderBias.yml b/.github/styles/Openly/GenderBias.yml new file mode 100644 index 0000000000..7000b3ddbe --- /dev/null +++ b/.github/styles/Openly/GenderBias.yml @@ -0,0 +1,51 @@ +--- +extends: substitution +message: Consider using '%s' instead of '%s' +ignorecase: true +level: error +action: + name: replace +swap: + (?:alumna|alumnus): graduate + (?:alumnae|alumni): graduates + (?:mother|father)land: native land + (?:mother|father)tongue: native tongue + air(?:m[ae]n|wom[ae]n): pilot(s) + anchor(?:m[ae]n|wom[ae]n): anchor(s) + authoress: author + business(?:m[ae]n|wom[ae]n): business person + camera(?:m[ae]n|wom[ae]n): camera operator(s) + chair(?:m[ae]n|wom[ae]n): chair(s) + congress(?:m[ae]n|wom[ae]n): member(s) of congress + door(?:m[ae]n|wom[ae]n): concierge(s) + drafts(?:m[ae]n|wom[ae]n): drafter(s) + fire(?:m[ae]n|wom[ae]n): firefighter(s) + fisher(?:m[ae]n|wom[ae]n): fisher(s) + fresh(?:m[ae]n|wom[ae]n): first-year student(s) + garbage(?:m[ae]n|wom[ae]n): waste collector(s) + guys: everyone + lady lawyer: lawyer + ladylike: courteous + landlord: building manager + mail(?:m[ae]n|wom[ae]n): mail carriers + man and wife: husband and wife + man enough: strong enough + mankind: human kind + manpower: human resources + manmade: manufactured + men and girls: men and women + middle(?:m[ae]n|wom[ae]n): intermediary + news(?:m[ae]n|wom[ae]n): journalist(s) + ombuds(?:man|woman): ombuds + oneupmanship: upstaging + poetess: poet + police(?:m[ae]n|wom[ae]n): police officer(s) + repair(?:m[ae]n|wom[ae]n): technician(s) + sales(?:m[ae]n|wom[ae]n): salesperson or sales people + service(?:m[ae]n|wom[ae]n): soldier(s) + steward(?:ess)?: flight attendant + tribes(?:m[ae]n|wom[ae]n): tribe member(s) + waitress: waiter + woman doctor: doctor + woman scientist[s]?: scientist(s) + work(?:m[ae]n|wom[ae]n): worker(s) diff --git a/.github/styles/Openly/HeadingsPunctuation.yml b/.github/styles/Openly/HeadingsPunctuation.yml new file mode 100644 index 0000000000..95f9d71628 --- /dev/null +++ b/.github/styles/Openly/HeadingsPunctuation.yml @@ -0,0 +1,8 @@ +--- +extends: existence +message: Do not use '%s' at the end of headings +link: https://github.com/Openly/docs/blob/master/STYLE.md#capitalization-and-punctuation +scope: heading +level: warning +raw: + - '(?:\:|\.)$' diff --git a/.github/styles/Openly/Hedging.yml b/.github/styles/Openly/Hedging.yml new file mode 100644 index 0000000000..5a46a44d99 --- /dev/null +++ b/.github/styles/Openly/Hedging.yml @@ -0,0 +1,29 @@ +--- +extends: existence +message: "Consider removing '%s'" +ignorecase: true +level: warning +tokens: + - appear to be + - arguably + - as far as I know + - could + - from my point of view + - hopefully + - I believe + - I doubt + - I think + - in general + - In my opinion + - likely + - might + - more or less + - perhaps + - possibly + - presumably + - probably + - seem(s)? + - somewhat + - to my knowledge + - unlikely + - usually diff --git a/.github/styles/Openly/Hyphens.yml b/.github/styles/Openly/Hyphens.yml new file mode 100644 index 0000000000..9591b0f800 --- /dev/null +++ b/.github/styles/Openly/Hyphens.yml @@ -0,0 +1,19 @@ +--- +extends: substitution +message: Use '%s' instead of '%s' +level: warning +action: + name: replace +swap: + African-American: African American + Asian-American: Asian American + All American: All-American + 'campus(?:-|\s)wide': campuswide + 'college(?:-|\s)wide': collegewide + 'state(?:-|\s)wide': statewide + 'world(?:-|\s)wide': worldwide + 'change(?:-|\s)maker': change maker + e-mail: email + game-changer: game changer + Native-American: Native American + right click: right-click diff --git a/.github/styles/Openly/Link.yml b/.github/styles/Openly/Link.yml new file mode 100644 index 0000000000..8dd5d8af1c --- /dev/null +++ b/.github/styles/Openly/Link.yml @@ -0,0 +1,8 @@ +--- +message: "Don't use 'here' as the content of a link." +extends: existence +ignorecase: true +scope: raw +level: error +raw: + - '\[here\]\(.+\)' diff --git a/.github/styles/Openly/QuoteType.yml b/.github/styles/Openly/QuoteType.yml new file mode 100644 index 0000000000..ea9b513445 --- /dev/null +++ b/.github/styles/Openly/QuoteType.yml @@ -0,0 +1,7 @@ +extends: consistency +message: "Inconsistent use of '%s' ('smart' mixed with 'dumb')" +level: error +nonword: true +either: + '"': '[”“]' + "'": "[‘’]" \ No newline at end of file diff --git a/.github/styles/Openly/Readability.yml b/.github/styles/Openly/Readability.yml new file mode 100644 index 0000000000..06c7c85c3f --- /dev/null +++ b/.github/styles/Openly/Readability.yml @@ -0,0 +1,8 @@ +extends: metric +message: "Try to keep the Flesch reading ease score (%s) above 70." +link: https://en.wikipedia.org/wiki/Flesch%E2%80%93Kincaid_readability_tests + +formula: | + 206.835 - (1.015 * (words / sentences)) - (84.6 * (syllables / words)) + +condition: "< 70" \ No newline at end of file diff --git a/.github/styles/Openly/SentenceLength.yml b/.github/styles/Openly/SentenceLength.yml new file mode 100644 index 0000000000..050996bb76 --- /dev/null +++ b/.github/styles/Openly/SentenceLength.yml @@ -0,0 +1,8 @@ +--- +message: "Write short sentences (less than 25 words)." +extends: occurrence +link: http://styleguide.mailchimp.com/writing-for-accessibility/#header-3-use-plain-language +scope: sentence +level: warning +max: 25 +token: \b(\w+)\b diff --git a/.github/styles/Openly/So.yml b/.github/styles/Openly/So.yml new file mode 100644 index 0000000000..9c16d6c432 --- /dev/null +++ b/.github/styles/Openly/So.yml @@ -0,0 +1,12 @@ +--- +extends: existence +message: "Don't start a sentence with '%s'" +ignorecase: true +level: error +action: + name: edit + params: + - remove + - '.?!' +raw: + - '(?<=[.;?!]\s)(?:[.-]?\s*)so\b' \ No newline at end of file diff --git a/.github/styles/Openly/Spelling.yml b/.github/styles/Openly/Spelling.yml new file mode 100644 index 0000000000..2a16da6217 --- /dev/null +++ b/.github/styles/Openly/Spelling.yml @@ -0,0 +1,28 @@ +--- +extends: spelling +message: "Did you really mean '%s'?" +level: error +code: false +action: + name: suggest + params: + - spellings +ignore: + - Openly/tech-terms/security.txt + - Openly/tech-terms/blockchain.txt + - Openly/tech-terms/devops.txt + - Openly/tech-terms/general.txt + - Openly/tech-terms/techwriting.txt + - Openly/tech-terms/mobile.txt + - Openly/tech-terms/java.txt + - Openly/tech-terms/linux.txt + - Openly/tech-terms/tech-slang.txt + - Openly/tech-terms/csharp.txt + - Openly/tech-terms/ddd.txt + - Openly/tech-terms/business.txt + - Openly/tech-terms/monitoring.txt + - Openly/tech-terms/apis.txt + - Openly/tech-terms/geospatial.txt + - Openly/tech-terms/javascript.txt + - Openly/tech-terms/databases.txt + - Openly/tech-terms/bazel.txt \ No newline at end of file diff --git a/.github/styles/Openly/ThereIs.yml b/.github/styles/Openly/ThereIs.yml new file mode 100644 index 0000000000..82d20295e6 --- /dev/null +++ b/.github/styles/Openly/ThereIs.yml @@ -0,0 +1,7 @@ +--- +extends: existence +message: "Don't start a sentence with '%s'" +ignorecase: true +level: error +raw: + - '(?:^[^\w]*|[;-]\s)There\b\s(is|are)\b' diff --git a/.github/styles/Openly/Titles.yml b/.github/styles/Openly/Titles.yml new file mode 100644 index 0000000000..f54498fc22 --- /dev/null +++ b/.github/styles/Openly/Titles.yml @@ -0,0 +1,6 @@ +--- +extends: capitalization +message: "'%s' should be in sentence case" +level: warning +scope: heading +match: $sentence diff --git a/.github/styles/Openly/UnclearAntecedent.yml b/.github/styles/Openly/UnclearAntecedent.yml new file mode 100644 index 0000000000..6d861f3a0b --- /dev/null +++ b/.github/styles/Openly/UnclearAntecedent.yml @@ -0,0 +1,7 @@ +--- +extends: existence +message: "'%s' is an unclear antecedent" +ignorecase: true +level: error +raw: + - '(?:^[^\w]*|[;-]\s)This\b\s(is|are)\b' diff --git a/.github/styles/Openly/VerbingNouns.yml b/.github/styles/Openly/VerbingNouns.yml new file mode 100644 index 0000000000..aff4fb6699 --- /dev/null +++ b/.github/styles/Openly/VerbingNouns.yml @@ -0,0 +1,7 @@ +# Checks for sentences where e.g. "perform validation" can be simplified to "validate". +extends: existence +ignorecase: true +message: "Simplify '%s' by removing the first word and making the last word a verb." +level: suggestion +tokens: + - (?:(perform|performs|do|does|run|runs)( \w+){0,2} \w+(tions?|ing)) diff --git a/.github/styles/Openly/tech-terms/apis.txt b/.github/styles/Openly/tech-terms/apis.txt new file mode 100644 index 0000000000..1931232b4d --- /dev/null +++ b/.github/styles/Openly/tech-terms/apis.txt @@ -0,0 +1,2 @@ +api +grpc \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/bazel.txt b/.github/styles/Openly/tech-terms/bazel.txt new file mode 100644 index 0000000000..7fd901bbdc --- /dev/null +++ b/.github/styles/Openly/tech-terms/bazel.txt @@ -0,0 +1 @@ +bazel \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/blockchain.txt b/.github/styles/Openly/tech-terms/blockchain.txt new file mode 100644 index 0000000000..71f356f093 --- /dev/null +++ b/.github/styles/Openly/tech-terms/blockchain.txt @@ -0,0 +1,32 @@ +blockchain +ethereum +bitcoin +solidity +ipfs +infura +dapp +dapps +validator +abi +geth +aleth +mainnet +testnet +rinkeby +metamask +crowdsale +merkle +trie +ommer +evm +sidechain +sidechains +web3 +reentrancy +reentrant +cryptocurrency +eip +web3j +solc +keccak +pragma \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/business.txt b/.github/styles/Openly/tech-terms/business.txt new file mode 100644 index 0000000000..42b7aff109 --- /dev/null +++ b/.github/styles/Openly/tech-terms/business.txt @@ -0,0 +1 @@ +cto \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/csharp.txt b/.github/styles/Openly/tech-terms/csharp.txt new file mode 100644 index 0000000000..c92d76f827 --- /dev/null +++ b/.github/styles/Openly/tech-terms/csharp.txt @@ -0,0 +1 @@ +nuget \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/databases.txt b/.github/styles/Openly/tech-terms/databases.txt new file mode 100644 index 0000000000..f015c2bed7 --- /dev/null +++ b/.github/styles/Openly/tech-terms/databases.txt @@ -0,0 +1,8 @@ +Supabase +PostgreSQL +MySQL +MongoDB +SQLite +Redis +Cassandra +Elasticsearch \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/ddd.txt b/.github/styles/Openly/tech-terms/ddd.txt new file mode 100644 index 0000000000..fe5c396e82 --- /dev/null +++ b/.github/styles/Openly/tech-terms/ddd.txt @@ -0,0 +1 @@ +cqrs \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/devops.txt b/.github/styles/Openly/tech-terms/devops.txt new file mode 100644 index 0000000000..f14c88dbe0 --- /dev/null +++ b/.github/styles/Openly/tech-terms/devops.txt @@ -0,0 +1,17 @@ +kubernetes +k8s +kustomize +kubectl +docker +rkt +mesos +coreos +AppVeyor +openstack +serverless +vm +nginx +buildpack +grafana +etcd +daemonset \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/general.txt b/.github/styles/Openly/tech-terms/general.txt new file mode 100644 index 0000000000..c586712fd0 --- /dev/null +++ b/.github/styles/Openly/tech-terms/general.txt @@ -0,0 +1,20 @@ +hackathon +esint +GitHub +GraphQL +JavaScript +jQuery +api +css +html +sdk +vcs +git +npm +ttd +TestTheDocs +vale +dns +orm +wget +httpie \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/geospatial.txt b/.github/styles/Openly/tech-terms/geospatial.txt new file mode 100644 index 0000000000..3f80f53791 --- /dev/null +++ b/.github/styles/Openly/tech-terms/geospatial.txt @@ -0,0 +1,3 @@ +geocoding +geocode +geospatial \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/java.txt b/.github/styles/Openly/tech-terms/java.txt new file mode 100644 index 0000000000..06bf9535ac --- /dev/null +++ b/.github/styles/Openly/tech-terms/java.txt @@ -0,0 +1,5 @@ +gradle +Gradle +maven +jvm +akka \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/javascript.txt b/.github/styles/Openly/tech-terms/javascript.txt new file mode 100644 index 0000000000..767872ae81 --- /dev/null +++ b/.github/styles/Openly/tech-terms/javascript.txt @@ -0,0 +1 @@ +axios \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/linux.txt b/.github/styles/Openly/tech-terms/linux.txt new file mode 100644 index 0000000000..0a180a01d4 --- /dev/null +++ b/.github/styles/Openly/tech-terms/linux.txt @@ -0,0 +1,3 @@ +manjaro +ubuntu +userspace \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/mobile.txt b/.github/styles/Openly/tech-terms/mobile.txt new file mode 100644 index 0000000000..b24e8946cf --- /dev/null +++ b/.github/styles/Openly/tech-terms/mobile.txt @@ -0,0 +1,2 @@ +Android +iOS \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/monitoring.txt b/.github/styles/Openly/tech-terms/monitoring.txt new file mode 100644 index 0000000000..65e4e1008e --- /dev/null +++ b/.github/styles/Openly/tech-terms/monitoring.txt @@ -0,0 +1,3 @@ +grafana +downsample +downsampling \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/security.txt b/.github/styles/Openly/tech-terms/security.txt new file mode 100644 index 0000000000..2ce36b4a43 --- /dev/null +++ b/.github/styles/Openly/tech-terms/security.txt @@ -0,0 +1,4 @@ +unencrypted +tls +keystore +reauthenticate \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/tech-slang.txt b/.github/styles/Openly/tech-terms/tech-slang.txt new file mode 100644 index 0000000000..538bf491fc --- /dev/null +++ b/.github/styles/Openly/tech-terms/tech-slang.txt @@ -0,0 +1,2 @@ +n00b +livestream \ No newline at end of file diff --git a/.github/styles/Openly/tech-terms/techwriting.txt b/.github/styles/Openly/tech-terms/techwriting.txt new file mode 100644 index 0000000000..f148f966cc --- /dev/null +++ b/.github/styles/Openly/tech-terms/techwriting.txt @@ -0,0 +1,7 @@ +linter +linters +documentarian +markdown +onboarding +readme +snagit \ No newline at end of file diff --git a/.github/styles/config/vocabularies/Docs/accept.txt b/.github/styles/config/vocabularies/Docs/accept.txt index 589b45daae..674dbd323f 100644 --- a/.github/styles/config/vocabularies/Docs/accept.txt +++ b/.github/styles/config/vocabularies/Docs/accept.txt @@ -1,5 +1,3 @@ -\bApify\b(?:-\w+)? -@apify\.com SDK(s) [Ss]torages Crawlee @@ -84,6 +82,7 @@ preconfigured [Tt]rello [Pp]refill [Gg]umloop +[Aa]pify [Mm]ultiselect diff --git a/.github/styles/write-good/Weasel.yml b/.github/styles/write-good/Weasel.yml index e29391444b..d1d90a7bcc 100644 --- a/.github/styles/write-good/Weasel.yml +++ b/.github/styles/write-good/Weasel.yml @@ -3,205 +3,27 @@ message: "'%s' is a weasel word!" ignorecase: true level: warning tokens: - - absolutely - - accidentally - - additionally - - allegedly - - alternatively - - angrily - - anxiously - - approximately - - awkwardly - - badly - - barely - - beautifully - - blindly - - boldly - - bravely - - brightly - - briskly - - bristly - - bubbly - - busily - - calmly - - carefully - - carelessly - - cautiously - - cheerfully - clearly - - closely - - coldly - completely - - consequently - - correctly - - courageously - - crinkly - - cruelly - - crumbly - - cuddly - - currently - - daily - - daringly - - deadly - - definitely - - deliberately - - doubtfully - - dumbly - - eagerly - - early - - easily - - elegantly - - enormously - - enthusiastically - - equally - - especially - - eventually - - exactly - exceedingly - - exclusively + - excellent - extremely - fairly - - faithfully - - fatally - - fiercely - - finally - - fondly - - few - - foolishly - - fortunately - - frankly - - frantically - - generously - - gently - - giggly - - gladly - - gracefully - - greedily - - happily - - hardly - - hastily - - healthily - - heartily - - helpfully - - honestly - - hourly - - hungrily - - hurriedly - - immediately - - impatiently - - inadequately - - ingeniously - - innocently - - inquisitively + - huge - interestingly - - irritably - - jiggly - - joyously - - justly - - kindly + - is a number - largely - - lately - - lazily - - likely - - literally - - lonely - - loosely - - loudly - - loudly - - luckily - - madly - - many - - mentally - - mildly - - monthly - - mortally - mostly - - mysteriously - - neatly - - nervously - - nightly - - noisily - - normally - - obediently - - occasionally - - only - - openly - - painfully - - particularly - - patiently - - perfectly - - politely - - poorly - - powerfully - - presumably - - previously - - promptly - - punctually - - quarterly - - quickly - - quietly - - rapidly - - rarely - - really - - recently - - recklessly - - regularly - - remarkably + - obviously + - quite - relatively - - reluctantly - - repeatedly - - rightfully - - roughly - - rudely - - sadly - - safely - - selfishly - - sensibly - - seriously - - sharply - - shortly - - shyly + - remarkably + - several - significantly - - silently - - simply - - sleepily - - slowly - - smartly - - smelly - - smoothly - - softly - - solemnly - - sparkly - - speedily - - stealthily - - sternly - - stupidly - substantially - - successfully - - suddenly - surprisingly - - suspiciously - - swiftly - - tenderly - - tensely - - thoughtfully - - tightly - - timely - - truthfully - - unexpectedly - - unfortunately + - tiny - usually + - various + - vast - very - - victoriously - - violently - - vivaciously - - warmly - - waverly - - weakly - - wearily - - weekly - - wildly - - wisely - - worldly - - wrinkly - - yearly diff --git a/.github/workflows/vale.yaml b/.github/workflows/vale.yaml index e4647c2a04..eba9d48f0c 100644 --- a/.github/workflows/vale.yaml +++ b/.github/workflows/vale.yaml @@ -31,6 +31,7 @@ jobs: files: ${{ steps.changed-files.outputs.all_changed_files }} separator: ',' fail_on_error: true + filter_mode: nofilter vale_flags: '--minAlertLevel=error' reporter: github-pr-annotations diff --git a/.vale.ini b/.vale.ini index c1a4ee7cbd..a781ebc9ba 100644 --- a/.vale.ini +++ b/.vale.ini @@ -1,24 +1,29 @@ StylesPath = .github/styles MinAlertLevel = warning -IgnoredScopes = code, tt, table, tr, td, frontmatter +IgnoredScopes = code, tt, table, tr, td, frontmatter, link, alt Vocab = Docs -Packages = write-good, Microsoft - +Packages = write-good, Microsoft, https://github.com/ChrisChinchilla/Openly/releases/download/0.4.5/Openly.zip [formats] mdx = md -[*.md] -BasedOnStyles = Vale, Apify, write-good, Microsoft +[{README.md,CONTRIBUTING.md,sources/**/*.md}] +BasedOnStyles = Vale, Apify, write-good, Microsoft, Openly # Ignore URLs, HTML/XML tags, lines with =, Markdown links, emails, curly braces, inline code TokenIgnores = (<\/?[A-Z][^>]*>), ([^\n]+=[^\n]*), (\[[^\]]+\]\([^\)]+\)), ([^\n]+@[^\n]+\.[^\n]), ({[^}]*}), `[^`]+` # Ignore HTML comments and Markdown code blocks BlockIgnores = (?s) ()|(```.*?```) -Vale.Spelling = YES - +Apify.H1 = error +Apify.Apify = warning +Apify.Capitalization = error +Apify.Languages = warning # Disabling rules (NO) +Vale.Spelling = NO +write-good.ThereIs = NO +Microsoft.Dashes = NO +Microsoft.Avoid = NO Microsoft.Contractions = NO Microsoft.Foreign = NO Microsoft.We = NO @@ -28,3 +33,6 @@ Microsoft.Auto = NO Microsoft.URLFormat = NO Microsoft.GeneralURL = NO Microsoft.RangeFormat = NO + +[{README.md,CONTRIBUTING.md}] +Apify.H1 = NO diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3d9b5db074..22f357f6a7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,4 +1,4 @@ -# Contributing to Apify Documentation +# Contributing to Apify documentation ## Before you start diff --git a/sources/legal/index.mdx b/sources/legal/index.mdx index 78ffdf6be3..3d4237362c 100644 --- a/sources/legal/index.mdx +++ b/sources/legal/index.mdx @@ -1,3 +1,5 @@ + + --- title: Apify Legal description: This is an index of Apify's public facing policies, terms of use and legal documents. @@ -7,7 +9,6 @@ slug: / hide_table_of_contents: true --- - ## Company details (Impressum) diff --git a/sources/legal/latest/policies/acceptable-use-policy.md b/sources/legal/latest/policies/acceptable-use-policy.md index 1087aa9262..bdb323435c 100644 --- a/sources/legal/latest/policies/acceptable-use-policy.md +++ b/sources/legal/latest/policies/acceptable-use-policy.md @@ -1,3 +1,5 @@ + + --- title: Apify Acceptable Use Policy description: Apify's acceptable use policy describes activities that are prohibited on the Apify platform and on our websites. @@ -9,7 +11,6 @@ slug: /acceptable-use-policy # Apify Acceptable Use Policy - Apify Technologies s.r.o., with its registered seat at Vodičkova 704/36, Nové Město, 110 00 Prague 1, Czech Republic, Company ID No.: 04788290, registered in the Commercial Register kept by the Municipal Court of Prague, File No.: C 253224 (hereinafter referred to as “**we**” or “**Apify**”), is committed to making sure that the Platform and the Website are being used only for legitimate and legal purposes. diff --git a/sources/legal/latest/policies/community-code-of-conduct.md b/sources/legal/latest/policies/community-code-of-conduct.md index f3fe82239d..079fee49a0 100644 --- a/sources/legal/latest/policies/community-code-of-conduct.md +++ b/sources/legal/latest/policies/community-code-of-conduct.md @@ -1,3 +1,5 @@ + + --- title: Apify Community Code of Conduct description: Apify's code of conduct describes how Apify expects its community members behave. @@ -9,7 +11,6 @@ slug: /community-code-of-conduct # Apify Community Code of Conduct - Effective Date: August 18, 2025 diff --git a/sources/legal/latest/policies/cookie-policy.md b/sources/legal/latest/policies/cookie-policy.md index 59d36c0a84..c0f9d3d501 100644 --- a/sources/legal/latest/policies/cookie-policy.md +++ b/sources/legal/latest/policies/cookie-policy.md @@ -1,3 +1,5 @@ + + --- title: Apify Cookie Policy description: Apify Cookie Policy describes how we handle cookies on our website and platform. @@ -9,8 +11,6 @@ slug: /cookie-policy # Apify Cookie Policy - - **Apify Technologies s.r.o.**, with its registered seat at Vodičkova 704/36, 110 00 Prague 1, Czech Republic, Company reg. no. 04788290, recorded in the Commercial Register kept by the Municipal Court of Prague, File No.: C 253224 ("**we**", "**us**" or the "**Provider**") welcomes you (“**you**” or the “**User**”) on our website apify.com (the “**Website**”). This Cookie Policy (the “**Policy**” or “**Cookie Policy**”) describes the way we use cookies on our Website and on our platform on console.apify.com (the “**Platform**”). Terms starting with a capital letter used in this Policy have the meaning defined in our [General Terms and Conditions](../terms/general-terms-and-conditions.md) (the “**Terms**”). By accessing the Website, Platform or using our Services, you acknowledge and agree to this Policy. If you do not agree to the terms of this Policy, please do not use the Website, Platform or any of our Services. Each time you use the Website, Platform or our Services, the current version of the Cookie Policy will apply. diff --git a/sources/legal/latest/policies/gdpr-information.md b/sources/legal/latest/policies/gdpr-information.md index 05688a1da6..4e02e1cb02 100644 --- a/sources/legal/latest/policies/gdpr-information.md +++ b/sources/legal/latest/policies/gdpr-information.md @@ -1,3 +1,5 @@ + + --- title: Apify GDPR Information description: This Apify GDPR Information document describes how Apify complies with GDPR and its requirements. @@ -9,7 +11,6 @@ slug: /gdpr-information # Apify GDPR Information - The European Union (“**EU**”) General Data Protection Regulation (“**GDPR**”) replaces the 1995 EU Data Protection Directive. The GDPR strengthens the rights that individuals have regarding personal data relating to them and seeks to unify data protection laws across Europe, regardless of where that data is processed. Besides strengthening and standardizing user data privacy across the EU nations, the GDPR requires new or additional obligations from all organizations that handle the personal data of EU citizens, regardless of where the organizations themselves are located. diff --git a/sources/legal/latest/policies/privacy-policy.md b/sources/legal/latest/policies/privacy-policy.md index 5e621d90f7..758c75cf91 100644 --- a/sources/legal/latest/policies/privacy-policy.md +++ b/sources/legal/latest/policies/privacy-policy.md @@ -1,3 +1,5 @@ + + --- title: Apify Privacy Policy description: Apify Privacy Policy describes how we handle your personal data and how you can exercise your personal data rights. @@ -9,8 +11,6 @@ slug: /privacy-policy # Apify Privacy Policy - - Last Updated: February 10, 2025 Welcome to the Apify Privacy Policy! diff --git a/sources/legal/latest/policies/whistleblowing-policy.md b/sources/legal/latest/policies/whistleblowing-policy.md index fa3002a1d9..c734fd7222 100644 --- a/sources/legal/latest/policies/whistleblowing-policy.md +++ b/sources/legal/latest/policies/whistleblowing-policy.md @@ -1,3 +1,5 @@ + + --- title: Apify Whistleblowing Policy description: Apify's whistleblowing policy describes how illegal activities can be reported, as required by law. @@ -9,7 +11,6 @@ slug: /whistleblowing-policy # Apify Whistleblowing Policy - [verze v českém jazyce níže] diff --git a/sources/legal/latest/terms/affiliate-program-terms-and-conditions.md b/sources/legal/latest/terms/affiliate-program-terms-and-conditions.md index f27627e2f7..78fd23e868 100644 --- a/sources/legal/latest/terms/affiliate-program-terms-and-conditions.md +++ b/sources/legal/latest/terms/affiliate-program-terms-and-conditions.md @@ -1,3 +1,5 @@ + + --- title: Apify Affiliate Program Terms and Conditions description: Apify Affiliate Program Terms and Conditions govern Apify's affiliate partnership program. @@ -9,8 +11,6 @@ slug: /affiliate-program-terms-and-conditions # Apify Affiliate Program Terms and Conditions - - Effective date: May 14, 2024 Latest version effective from: July 5, 2025 diff --git a/sources/legal/latest/terms/candidate-referral-program-terms-and-conditions.md b/sources/legal/latest/terms/candidate-referral-program-terms-and-conditions.md index 122943aa4f..22b389875c 100644 --- a/sources/legal/latest/terms/candidate-referral-program-terms-and-conditions.md +++ b/sources/legal/latest/terms/candidate-referral-program-terms-and-conditions.md @@ -1,3 +1,5 @@ + + --- title: Apify Candidate Referral Program description: Apify Candidate Referral Program is a public promise of a remuneration for referred candidates. @@ -9,7 +11,6 @@ slug: /candidate-referral-program-terms # Apify Candidate Referral Program - Last Updated: April 14, 2025 diff --git a/sources/legal/latest/terms/data-processing-addendum.md b/sources/legal/latest/terms/data-processing-addendum.md index 4bba8d5aa0..dcc708f3b3 100644 --- a/sources/legal/latest/terms/data-processing-addendum.md +++ b/sources/legal/latest/terms/data-processing-addendum.md @@ -1,3 +1,5 @@ + + --- title: Apify Data Processing Addendum description: Apify Data Processing Addendum serve as a framework for processing of personal data on behalf of Apify customers. @@ -9,7 +11,6 @@ slug: /data-processing-addendum # Apify Data Processing Addendum - Last Updated: January 13, 2025 diff --git a/sources/legal/latest/terms/fair-share-program-terms-and-conditions.md b/sources/legal/latest/terms/fair-share-program-terms-and-conditions.md index 0c7fda3d3c..c9481bdd57 100644 --- a/sources/legal/latest/terms/fair-share-program-terms-and-conditions.md +++ b/sources/legal/latest/terms/fair-share-program-terms-and-conditions.md @@ -1,3 +1,5 @@ + + --- title: Apify Open Source Fair Share Program Terms description: Apify Affiliate Program Terms and Conditions govern Apify's affiliate partnership program. @@ -9,8 +11,6 @@ slug: /fair-share-program-terms-and-conditions # Apify Open Source Fair Share Program Terms and Conditions - - Effective Date: February 14, 2025 --- diff --git a/sources/legal/latest/terms/general-terms-and-conditions.md b/sources/legal/latest/terms/general-terms-and-conditions.md index 29a09b25d0..41196dca9b 100644 --- a/sources/legal/latest/terms/general-terms-and-conditions.md +++ b/sources/legal/latest/terms/general-terms-and-conditions.md @@ -1,3 +1,5 @@ + + --- title: Apify General Terms and Conditions description: Apify General Terms and Conditions govern the use of Apify's website, platform and services. @@ -9,8 +11,6 @@ slug: /general-terms-and-conditions # Apify General Terms and Conditions - - Effective date: May 14, 2024 --- @@ -30,7 +30,7 @@ The Terms are the key document governing the relationship between you and us, pl | [5. Terms of Use of the Website, Platform, and Services](#5-terms-of-use-of-the-website-platform-and-services) | Using our Platform or Services for illegal or illegitimate purposes is prohibited. Should you use the Platform and/or the Services in breach of the Terms or the law, we will not be liable for any damage caused as a result. You must not allow anyone else to use your user account. | | [6. Liability](#6-liability) | We are limiting our liability towards you in relation to specified situations. | | [7. Warranty](#7-warranty) | We are providing our Services as is and do not make any representations, warranties or guarantees to you. | -| [8. Limitation of Liability; Force Majeure](#8-limitation-of-liability-force-majeure) | We are limiting the liability of both parties - you and us - for less predictable legal types of damages. Our overall limit of liability isset as the aggregate of amounts paid by you for the Services. Neither of us shall be liable for situations beyond one's reasonable control (force majeure). | +| [8. Limitation of Liability; Force Majeure](#8-limitation-of-liability-force-majeure) | We are limiting the liability of both parties - you and us - for less predictable legal types of damages. Our overall limit of liabilityisset as the aggregate of amounts paid by you for the Services. Neither of us shall be liable for situations beyond one's reasonable control (force majeure). | | [9. Your Obligation to Indemnify](#9-your-obligation-to-indemnify) | If you use our Services in breach of these Terms and as a result a third party will claim our liability, you agree to indemnify us against any such claim. | | [10. Legal Disclaimer and Warning](#10-legal-disclaimer-and-warning) | If any of your targeted websites demands that we cease the respective automated activities or processes, we may need to suspend your use of the Services accordingly and/or obey by any related court order that we receive. | | [11. Payment Terms](#11-payment-terms) | Find out about the payment terms for the Services; the up-to-date prices can be found at apify.com/pricing. | diff --git a/sources/legal/latest/terms/store-publishing-terms-and-conditions.md b/sources/legal/latest/terms/store-publishing-terms-and-conditions.md index 3440de1445..689d1b3f3d 100644 --- a/sources/legal/latest/terms/store-publishing-terms-and-conditions.md +++ b/sources/legal/latest/terms/store-publishing-terms-and-conditions.md @@ -1,3 +1,5 @@ + + --- title: Apify Store Publishing Terms and Conditions description: Apify Store Publishing Terms and Conditions govern publishing of Actors in the Apify Store and payments for monetized Actors. @@ -9,7 +11,6 @@ slug: /store-publishing-terms-and-conditions # Apify Store Publishing Terms and Conditions - Last updated: February 26, 2025 diff --git a/sources/legal/old/general-terms-and-conditions-2022.md b/sources/legal/old/general-terms-and-conditions-2022.md index 38ab4edacb..6fe2316135 100644 --- a/sources/legal/old/general-terms-and-conditions-2022.md +++ b/sources/legal/old/general-terms-and-conditions-2022.md @@ -1,3 +1,5 @@ + + --- title: Apify General Terms and Conditions October 2022 description: Outdated general terms and conditions that governed the use of Apify website, platform and services until May 2024. @@ -5,7 +7,6 @@ category: legal slug: /old/general-terms-and-conditions-october-2022 --- - ## Version History @@ -34,7 +35,7 @@ The Terms are the key document governing our relationship between you and us, pl | [5. Terms of Use of the Website, Platform, and Services](#5-terms-of-use-of-the-website-platform-and-services) | Using our Platform or Services for illegal or illegitimate purposes is prohibited. Should you use the Platform and/or the Services in breach of the Terms or the law, we will not be liable for any damage caused as a result. You must not allow anyone else to use your user account. | | [6. Liability](#6-liability) | We are limiting our liability towards you in relation to specified situations. | | [7. Warranty](#7-warranty) | We are providing our Services as is and do not make any representations, warranties or guarantees to you. | -| [8. Limitation of Liability; Force Majeure](#8-limitation-of-liability-force-majeure) | We are limiting the liability of both parties - you and us - for less predictable legal types of damages. Our overall limit of liability isset as the aggregate of amounts paid by you for the Services. Neither of us shall be liable for situations beyond one's reasonable control (force majeure). | +| [8. Limitation of Liability; Force Majeure](#8-limitation-of-liability-force-majeure) | We are limiting the liability of both parties - you and us - for less predictable legal types of damages. Our overall limit of liabilityisset as the aggregate of amounts paid by you for the Services. Neither of us shall be liable for situations beyond one's reasonable control (force majeure). | | [9. Your Obligation to Indemnify](#9-your-obligation-to-indemnify) | If you use our Services in breach of these Terms and as a result a third party will claim our liability, you agree to indemnify us against any such claim. | | [10. Legal Disclaimer and Warning](#10-legal-disclaimer-and-warning) | If any of your targeted websites demands that we cease the respective automated activities or processes, we may need to suspend your use of the Services accordingly and/or obey by any related court order that we receive. | | [11. Payment Terms](#11-payment-terms) | Find out about the payment terms for the Services; the up-to-date prices can be found at apify.com/pricing. | diff --git a/sources/legal/old/store-publishing-terms-and-conditions-2022.md b/sources/legal/old/store-publishing-terms-and-conditions-2022.md index 9024a53789..a85bd62010 100644 --- a/sources/legal/old/store-publishing-terms-and-conditions-2022.md +++ b/sources/legal/old/store-publishing-terms-and-conditions-2022.md @@ -1,3 +1,5 @@ + + --- title: Apify Store Publishing Terms and Conditions December 2022 description: Outdated Apify Store publishing terms and conditions that governed publishing of Actors in the Apify Store until May 2024. @@ -5,7 +7,6 @@ category: legal slug: /old/store-publishing-terms-and-conditions-december-2022 --- - ## Version History diff --git a/sources/platform/integrations/ai/mcp.md b/sources/platform/integrations/ai/mcp.md index e90ef89abd..422f58e5d6 100644 --- a/sources/platform/integrations/ai/mcp.md +++ b/sources/platform/integrations/ai/mcp.md @@ -88,7 +88,7 @@ Let’s walk through an example of using Claude for Desktop with the Apify MCP S } ``` - This tells Claude to spawn the Apify MCP Server (via the [Actors MCP Server](https://www.npmjs.com/package/@apify/actors-mcp-server) NPM package with your API token (on the first run, it will download the package automatically). + This tells Claude to spawn the Apify MCP Server (via the [Actors MCP Server](https://www.npmjs.com/package/@apify/actors-mcp-server) npm package with your API token (on the first run, it will download the package automatically). 1. _Launch Claude and connect:_ After updating the config, restart Claude for Desktop. If successful, Claude will show a “plugin” (often indicated by a plug icon 🔌) signifying it connected to the Apify Actors MCP server. @@ -266,14 +266,14 @@ You can report bugs, suggest new features, or ask questions in the [GitHub issue If you find this project useful, please [star it on GitHub](https://github.com/apify/actors-mcp-server) to show your support! - _Authorization (API Token):_ If the MCP server isn’t executing Actors, ensure you provided a correct Apify API token. Without a valid `APIFY_TOKEN`, the server cannot start Actor runs. Always set the `APIFY_TOKEN` environment variable when running locally. -- _Ensure latest version:_ If running via NPM, always use the latest version of `@apify/actors-mcp-server` for the newest features and fixes. You can append `@latest` when installing or in your config args to ensure this. +- _Ensure latest version:_ If running via npm, always use the latest version of `@apify/actors-mcp-server` for the newest features and fixes. You can append `@latest` when installing or in your config args to ensure this. - _Node.js environment:_ If running the server locally, make sure Node.js is installed and up to date (`node -v`). The MCP server requires Node.js v18+. - _No response or long delay:_ Keep in mind that when an Actor tool is called, it may take some time to complete (depending on the task). If nothing is coming back, check the Actor’s logs in Apify console — the Actor might be waiting on a long operation or input. ## Learn more - [Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction): Learn about the open standard on the official MCP website – understanding the protocol can help you build custom agents. -- [Actors MCP Server GitHub](https://github.com/apify/actors-mcp-server): The README for the Apify MCP Server actor (available on Apify Store as `apify/actors-mcp-server`) provides technical details on implementation and advanced usage. -- [Apify Tester MCP Client](https://apify.com/jiri.spilka/tester-mcp-client): A specialized client actor (`jiri.spilka/tester-mcp-client`) that you can run to simulate an AI agent in your browser. Useful for testing your setup with a chat UI. +- [Actors MCP Server GitHub](https://github.com/apify/actors-mcp-server): The README for the Apify MCP Server Actor (available on Apify Store as `apify/actors-mcp-server`) provides technical details on implementation and advanced usage. +- [Apify Tester MCP Client](https://apify.com/jiri.spilka/tester-mcp-client): A specialized client Actor (`jiri.spilka/tester-mcp-client`) that you can run to simulate an AI agent in your browser. Useful for testing your setup with a chat UI. - [How to use MCP with Apify Actors](https://blog.apify.com/how-to-use-mcp/): Learn how to expose over 5,000 Apify Actors to AI agents with Claude and LangGraph, and configure MCP clients and servers. - [Apify MCP Server Tutorial](https://www.youtube.com/watch?v=BKu8H91uCTg): Integrate thousands of Apify Actors and Agents with Claude. diff --git a/sources/platform/integrations/workflows-and-notifications/gumloop/youtube.md b/sources/platform/integrations/workflows-and-notifications/gumloop/youtube.md index e66ba2b737..7565c8747e 100644 --- a/sources/platform/integrations/workflows-and-notifications/gumloop/youtube.md +++ b/sources/platform/integrations/workflows-and-notifications/gumloop/youtube.md @@ -12,7 +12,7 @@ Get YouTube search results, video details, channel videos, playlists, and channe The Gumloop YouTube integration provides a native interface for running Apify’s YouTube scrapers directly in your workflows. No API keys or manual polling required. All you need is a Gumloop account. -Using the Gumloop YouTube MCP node, you can simply prompt the YouTube data you need and Gumloop will retrieve it from relevant Apify actors. From there, you can connect it to your favorite tools and AI agents to process the information. +Using the Gumloop YouTube MCP node, you can simply prompt the YouTube data you need and Gumloop will retrieve it from relevant Apify Actors. From there, you can connect it to your favorite tools and AI agents to process the information. ## Available actions diff --git a/sources/platform/integrations/workflows-and-notifications/n8n.md b/sources/platform/integrations/workflows-and-notifications/n8n.md index c6d8b7a8b2..9e27a19e69 100644 --- a/sources/platform/integrations/workflows-and-notifications/n8n.md +++ b/sources/platform/integrations/workflows-and-notifications/n8n.md @@ -36,7 +36,7 @@ If you're running a self-hosted n8n instance, you can install the Apify communit ## Install the Apify Node (n8n Cloud) -For n8n Cloud users, installation is even simpler and doesn't require manual package entry. Just search and add the node from the canvas. +For n8n Cloud users, installation is even simpler and doesn't require manual package entry. Just search and add the node from the canvas. 1. Go to the **Canvas** and open the **nodes panel** 1. Search for **Apify** in the community node registry