Commit Graph

188 Commits

Author SHA1 Message Date
Joel Marcey 71278431f1 Add hide_title to metadata check whitelist 2018-04-11 18:02:25 -07:00
António Afonso ad5b8b92b4 Ignore and warn about unsupported header fields (#347)
Unsupported header fields might mess up the creation of metadata.js (e.g.: next).
Skip unknown header fields and log a warn about them.
2018-04-11 17:45:03 -07:00
Yangshun Tay 6500f9bacf More doc improvements (#532)
* Generic doc improvements

* Convert to Markdown

* Remove whitespace

* More typo fixes
2018-04-07 21:16:29 -07:00
John Eismeier fc6e3b7311 Fix two typos (#530) 2018-04-06 10:26:31 -07:00
Joel Marcey bc777a8e65
Remove slash from join path in server.js 2018-03-13 09:12:30 -07:00
Sunny Luo 4a4fea7d8a Fix wrong versioned_docs file path (#501) 2018-03-13 09:05:26 -07:00
Joel Marcey cbdab2ba11
Use Path module functions and properties in server and generate (#490) 2018-03-12 16:01:40 -07:00
Elian Ibaj 48ee457ec9 Add active link classes to site navigation menu (#463) 2018-03-04 08:53:31 -08:00
Sunny Luo 4a10be8002 Fix wrong latestVersion in server.js (#464) 2018-02-19 19:50:05 -08:00
Joel Marcey ec6ff9284c
Allow multiple `-` in a version string (#457)
* Allow multiple `-` in a version string

Right now we were assuming that there would be no `-` in a version.
That was breaking things.

This allows more flexibility for versions like:

1.0.0-beta.2

Ref #455
Fixes #450

* Check more specific strings - need to look for the original_id
2018-02-17 12:25:46 -08:00
Joel Marcey 1388e13795
Don't throw if a doc hasn't been versioned yet (#455)
Instead of throwing, return `null` because that means we have a
new doc in our versioning sequence

(Also, cleaned up a bit of code as I researched this)

Partial Fix To #450
2018-02-16 19:16:38 -08:00
Tom Auger 2d7274f6fe Blog feed fixes #370 (#407)
* Refactor markdown rendering into separate module

* Render blog feed description in html
2018-02-11 08:05:58 -08:00
Samina Fu a08b3cc921 Remove dead code in sitemap.js, close #429 (#430)
Closes #429
2018-02-02 19:45:00 -08:00
Eric Nakagawa dfb70e1829 Allow controlling number of blog posts in Recent Blogs sidebar. (#432)
New feature. Allow controlling number of blog posts in Recent Blogs sidebar. Can have qty or ALL.
2018-02-02 08:11:51 -08:00
Héctor Ramos c99cdefd3a Fix links in blog Atom feed (#421)
The root URL was missing the baseURL portion. This is fine when a site is hosted on a custom URL such as docusaurus.io, because the generated URL will be valid (docusaurus.io/blog), but it breaks when the site is hosted on GitHub Pages (the React Native feed was using facebook.github.io/blog as the rootURL).

* Fix link to header image
2018-01-31 20:04:35 -08:00
Joel Marcey 8c71572d7a Remove rogue console.log for the status code 2018-01-29 21:05:28 -08:00
Sunny Luo 43e80fcea7 Fix regex for non english versioned docs (#412) 2018-01-23 13:23:33 -08:00
Joel Marcey c81609d393
Send status code to server response for redirects (#408)
Also simplified the logic a bit to reduce duplication

Closes #404
2018-01-23 13:13:25 -08:00
jonathan-cowling a241a46669 Make font-family as configurable parameter(#220) (#294)
We look for fonts object within siteConfig.js
2018-01-21 19:54:52 -08:00
Richard Zhang e8599c05a8 Remove duplicate blog.xml route (#364) 2018-01-11 16:42:39 -08:00
Ika ba99660a3c fix(feed): add missing slash for image url (#365) 2018-01-11 16:40:29 -08:00
Dániel Tar 654916ae98 Fix build on Windows (#381)
Use `path.dirName` instead of a `file.replace` on regex'd replaced string
2018-01-08 15:44:50 -08:00
Joel Marcey 5a77f186b9
Check English translation if language doesn't exist (#361)
Need this because of https://github.com/facebook/Docusaurus/pull/316
2017-12-27 15:18:58 -08:00
Joel Marcey 5bb062b6f0
Versioning ids should be based on whether translation is enabled (#333)
* Versioning ids should be based on whether translation is enabled

Ref: ff117979c6 and a5e963dba1

Tested locally on:

Docusaurus
Relay
Test site from `npm run examples`

* Prettier
2017-12-20 19:47:51 -08:00
Joel Marcey 665b2da09f Prettier fix for ce338fff64 2017-12-20 10:07:57 -08:00
Ricky Vetter ce338fff64
Merge pull request #275 from rickyvetter/wrapPagesHTML
add wrapPagesHTML which renders html snippets in pages inside of a header + footer
2017-12-20 10:05:21 -08:00
Joel Marcey db65f4b7fd Prettier fix for b96fae035f 2017-12-20 10:03:24 -08:00
António Afonso b96fae035f Guard against lack of `layouts` in siteConfig.js (#330)
If a document states a `layout` in its header but `layouts` doesn't exist in `siteConfig.js` the doc would not render.
2017-12-20 09:55:10 -08:00
Joel Marcey a12ebcd401 Don't translate if we do not have a language
This will most likely be because we have not enabled translation
2017-12-19 17:58:49 -08:00
Richard Zhang a5e963dba1 Issue 305 broken link because of language fixes (#322)
* without having having to worry about site design.

Let me know if double having is intentional

* distinguish case of no translation and en lang

* prettier recommends

* distinguish case of no translation and en lang

* prettier recommends

* merge with latest origin/master changes

* typo

* link with language fixes

* do not show language dropdown if only one enabled

* check translation outside of LanguageDropDown.render
2017-12-19 17:44:43 -08:00
Joel Marcey 18c9a2ab31 Revert "Fixing Issue 305 - broken links because of language (#316)"
This reverts commit 7dc6c6c2da.
2017-12-19 09:23:41 -08:00
Richard Zhang 7dc6c6c2da Fixing Issue 305 - broken links because of language (#316)
* without having having to worry about site design.

Let me know if double having is intentional

* distinguish case of no translation and en lang

* prettier recommends

* distinguish case of no translation and en lang

* prettier recommends

* merge with latest origin/master changes

* typo
2017-12-19 09:20:32 -08:00
neilsutcliffe 21cbece838 Fixes to testing guide (for Windows only) (#304)
* Fixes to testing guide (for Windows only)

* Fixed line ending detection for UNIX and Windows

* Removed incorrect instructions about translations

* Removed redudant heading and turned it into a note.
2017-12-18 11:48:53 -08:00
Kunall Banerjee c60131fdb4 cleanup startup logs (#291) 2017-12-16 16:51:52 -08:00
Jan Kassens d97e2e9d81 Add newlines at end of generated files (#283) 2017-12-13 13:55:40 -08:00
Hector Ramos a7d81c629d Resolve conflicts 2017-12-12 12:49:02 -08:00
Jan Kassens b174ee2d2a Update prettier to 1.9.1 (#273) 2017-12-12 12:47:52 -08:00
Ricky Vetter c22203523f use faded primaryColor background for inline code snippets instead of link color (#276) 2017-12-12 12:46:52 -08:00
Ricky Vetter 786fdbb136 add wrapPagesHTML which renders html snippets in pages inside of a header + footer 2017-12-11 21:46:07 -08:00
Joel Marcey c9e4f4479d Prettier fix 2017-12-11 16:41:09 -08:00
Héctor Ramos 11029cf02d Update build script (#272)
* Copy dot files if present in the static folder, and add .circleci config to Docusaurus site

* Update docs
2017-12-11 16:32:05 -08:00
Héctor Ramos ad87bab09b Fix path to docs assets dir (#265) 2017-12-07 10:14:32 -08:00
Héctor Ramos 65421db62e Add Prettier Formatting (#258)
* Add Prettier formatting to source files and example files, and check that Prettier formatting is maintained on PRs

* Remove trailing-comma as we are using Node 6 on Circle

* Use latest Node 6 LTS version in Circle

* Remove unused test
2017-12-04 19:21:02 -08:00
Cheng Lou 76e423fba3 Use `path` module instead of string concat `/` (#255)
This also in part prepares for #253. I discovered a bug when setting `projectName` to `""`, and some `"build/" + projectName + "/foo"` concatenated into `"build//foo"`. Granted, it's a hack, but we should use `path` anyway.

Test: tested on https://github.com/BuckleScript/bucklescript.github.io. Seems working
2017-12-04 09:32:02 -08:00
Héctor Ramos 1efce743dd Provide additional debugging information (#241) 2017-11-26 21:59:28 -08:00
Héctor Ramos 09726c6361 [Versioning] Fix issue when a doc is added (#231)
* Simplify function, return error if doc not found
2017-11-15 15:55:08 -08:00
Héctor Ramos 420d2e86fb Replace diff with string comparison (#230) 2017-11-15 12:17:05 -08:00
Héctor Ramos 19e6cc7ecc Check whether a previous/next doc actually exists (#226)
* Check whether a previous/next doc actually exists

* Use reasonable defaults

* Remove extraneous space
2017-11-14 20:36:25 -08:00
Eric Nakagawa 8d14f8fb02
Merge pull request #217 from JoelMarcey/custom-docs-subdir
Allow custom path for the location of documentation
2017-11-13 13:50:39 -08:00
Christine Abernathy 1d3f71a60a Fix HTML copy file generation (#223) 2017-11-10 15:46:22 -08:00
Joel Marcey e273dfc13b Allow the docs not to just be in a folder called `docs`
Also:
- regex escaping
- update api documentation
2017-11-09 09:55:26 -08:00
Joel Marcey dc0c1390c4 [WIP] Allow custom subpath for docs within the "docs" folder
e.g.,

The default is

`docs/*.md`

This allows

`docs/somedir/*.md`

or

`docs/somedir/anotherdir/*.md`

Notes:

- All URLs are still /docs/*.html (i.e. the subpath does not get preserved in the link).
- Files in `translated_docs`, if any, will still only be one level
- This should not affect translations or versioning
2017-11-08 20:16:05 -08:00
Héctor Ramos 09354ab738 [BREAKING] Rename Marked to MarkdownBlock (#162)
* Switch to Remarkable

* Clean up references to custom code blocks

* Remove valdiateDOMNesting warning

* Add syntax highlighting

* Add Reason support

* Breaking change: prismColor to codeColor, remove CompLibrary.Prism, expose hljs

* Completely remove Prism and associated CSS rules

* Support loading plugins and scripts

* Remove CSS rules, allowing Highlight.js theme to be used entirely

* Remove unnecessary webplayer script

* Rename Marked to MarkdownBlock

* Rename Marked to MarkdownBlock

* Remove Marked.js
2017-10-30 15:47:13 -07:00
Héctor Ramos 459984516b Ensure some errors are logged to the console (#194)
* Clarify some error conditions in versioning

* Clarify missing doc error;

* Remove excess space

* Remove excess space part duex
2017-10-30 11:42:45 -07:00
Eric Nakagawa fa1ec70432 Bug fixes in generatejs (#169)
* Misc cleanups related to console.log messages in yarn build

* Fixes https://github.com/facebookexperimental/Docusaurus/issues/96
2017-10-26 16:13:56 -07:00
Ricky Vetter c97da9d3f7 Sitemap local (#157)
* Better support for localized pages in sitemap

* clean console
2017-10-26 16:12:47 -07:00
Joel Marcey f72df94dd3 Return empty object instead of false if no metadata (#182)
Closes #139
2017-10-26 07:02:52 -07:00
Eric Nakagawa 55b0f33f2a Allows periods in blog file names -- will allow for version numbers, etc (#163)
* Allows periods in blog file names -- will allow for version numbers, etc

* Removed debug lines...
2017-10-24 19:27:37 -07:00
Joel Marcey 7b2e950a4c Add previous and next titles to metadata props 2017-10-24 19:09:34 -07:00
Héctor Ramos b832176dc6 [markdown] Switch to Remarkable (#153)
* Switch to Remarkable
* Clean up references to custom code blocks
* Remove valdiateDOMNesting warning
* Add syntax highlighting
* Add Reason support
* Breaking change: prismColor to codeColor, remove CompLibrary.Prism, expose hljs
* Completely remove Prism and associated CSS rules
* Support loading plugins and scripts
* Remove CSS rules, allowing Highlight.js theme to be used entirely
* Remove unnecessary webplayer script
2017-10-24 09:45:21 -07:00
Joel Marcey 7e23f3e4ef Avoid `null` enabledLanguages when there is no languages.js file (#155)
```
var enabledLanguages = languages.filter(function (lang) {
                                  ^

TypeError: Cannot read property 'filter' of null
    at module.exports
```
2017-10-20 15:19:13 -07:00
Eric Nakagawa 574872d075 Only builds redirect pages if the current file is an english doc (#152) 2017-10-19 16:56:14 -07:00
Eric Nakagawa d8b55fffa4 Fall back to English when strings are missing (#151) 2017-10-19 16:41:20 -07:00
Eric Nakagawa 22d0cebc18 Merge pull request #149 from ericnakagawa/noop-redirect
Removed copy from redirect page, reduced delay to 0s for js and meta
2017-10-19 13:20:07 -07:00
Eric Nakagawa 7f7459baa5 Merge pull request #148 from ericnakagawa/default-localization-english
This PR will create a default set of docs to use when localization is…
2017-10-19 13:19:55 -07:00
Eric Nakagawa a9571ebf4d Removed copy from redirect page, reduced delay to 0s for js and meta 2017-10-19 13:15:05 -07:00
Eric Nakagawa 7c80becb87 Fix bug in when running local server 2017-10-19 12:58:57 -07:00
Eric Nakagawa bf2f0cf935 Typo fix 2017-10-19 10:27:03 -07:00
Eric Nakagawa bfb28441b4 This PR will create a default set of docs to use when localization is enabled. This allows seeing using the site without having synced with crowdin. Once synced, those files will replace the default set generated by this PR. 2017-10-19 09:57:10 -07:00
Christopher Chedeau 57251a22c0 Ability to tweak the prism language (#146)
I want to be able to tweak the default tokenizer for syntax highlighting. The current one isn't as good as it could be.

With this PR, I would be able to add this to the siteConfig and it would give me the Prism access so that I can get proper syntax highlighting:

```js
  prism: function(Prism) {
    Prism.languages.javascript = Prism.languages.extend("javascript", {
      keyword: /\b(alias|as|async|await|base class|...|with)\b/,
      constant: /\b[A-Z][a-zA-Z0-9_]*\b/,
      builtin: /\bopen_file|...|invariant_violation|invariant|getcwd\b/,
      function: /\b[_$a-z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\()/,
    });
  },
```
2017-10-19 08:21:00 -07:00
Eric Nakagawa c3a1d99964 Include baseUrl when redirecting /docs/ pages in a localized project (#147) 2017-10-19 07:29:48 -07:00
Joel Marcey 26f498a2db Add a check for languages.js in sitemap.js
Without this a build failure would occur for those that are not using the languages.js file.

e.g.,

```
sitemap.js triggered...
module.js:471
    throw err;
    ^

Error: Cannot find module '/home/ubuntu/fasttext-website/website/languages.js'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at module.exports (/home/ubuntu/fasttext-website/website/node_modules/docusaurus/lib/server/sitemap.js:48:15)
    at execute (/home/ubuntu/fasttext-website/website/node_modules/docusaurus/lib/server/generate.js:316:5)
    at Object.<anonymous> (/home/ubuntu/fasttext-website/website/node_modules/docusaurus/lib/build-files.js:31:1)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
Error: generating html failed
```
2017-10-18 15:43:25 -07:00
Eric Nakagawa a4695a3083 Code cleanups for consistency & adds Docusaurus to meta tags (#138)
* Add a made with Docusaurus meta tag

* Code cleanups and changes for clarity

* Add back pages string extraction
2017-10-18 14:40:16 -07:00
Eric Nakagawa 967970eaa5 Generates a file that redirects from /docs/file.html to /docs/en/folder.html when languages are enabled (languages.js is present) (#137) 2017-10-18 12:56:14 -07:00
Eric Nakagawa bcba05ae03 Adds sitemap.xml. Adds 'Help Translate' to translatable strings. Error messages and fn name cleanups. (#136)
* added a note about needing more than one language to be enabled to allow for a drop down

* Removing debug statements

* Add 'Help Translate' to translatable strings, improves error messages around missing translated strings, calls write-translations on some routes

* Adds sitemap.xml to live server and build. Versioning not supported. -- Also did some file name and module cache cleanups.
2017-10-18 12:55:58 -07:00
Christopher Chedeau a26bba14c6 Add the ability to provide custom layout (#128)
* Add the ability to provide custom layout

When I designed the system, I added the ability to provide a custom layout that would use arbitrary JavaScript to render some custom pages. This is why files are called "DocsLayout.js", "BlogPostLayout.js"... This ability to customize it was [ripped out](https://github.com/facebook/react-native/blob/master/website/server/convert.js#L78) during the migration to Docusaurus but I need it for the project I'm working on right now (that should remain unnamed!).

This adds back the ability to do it in a way that fits the third party system. In order to provide a new layout:

1) Add a `layout` field in the header of your markdown file:

```js
---
layout: mylayout
---
```

2) In your `siteConfig`, add

```js
  layouts: {
    mylayout: function({React, Marked}) {
      return class extends React.Component {
        render() {
           return React.createElement('div', {}, this.props.metadata.layout);
         }
      }
    }
  }
```

I think that it's a reasonable to add and would unblock me :)

* Update DocsLayout.js
2017-10-18 10:20:13 -07:00
Christopher Chedeau 5693eba5d1 Allow for header and empty body (#127)
My hack of checking if the body was empty wasn't correct :(

```js
---
id: String
title: String
layout: stdlib
---
```

The above would be treated as pure content. Now it's working properly :)
2017-10-18 10:16:30 -07:00
Eric Nakagawa 8ac191a331 Fixes #104 by providing a useful error message.
Next step will be to run 'write-translations' on 'yarn start' and 'yarn build' (#119)
2017-10-06 12:16:27 -07:00
Joel Marcey 77535d80f2 The complete move to MIT license (#115)
- headers in .js files
- update README and LICENSE year

Testing:

grep BSD, Patents, patents turned up nothing
2017-10-05 11:14:49 -07:00
Eric Nakagawa 3b5db4bbf8 2 bug fixes (#98)
* Merge fix

* Updating lock file.

* Bug fix for rss feed truncation...

* Fixes infinite recursive loop for #89

* Removed use of module cache invalidator from feed.js

* Replaced 'latest' babel presets with 'env'

* Ignore temp build folder

* Adding back new truncation logic for RSS

* Updating yarn lock
2017-09-28 14:46:29 -07:00
Eric Nakagawa dc835770a0 RSS/ATOM Feed added, Prism changes, and global Copyright notice. (#94)
* Add Reason support to Prism.js

* Add XML/ATOM feed. Generates for both localhost and build script. Adds meta links to feeds to all html files.

* Updated /core/Footer.js to pull from siteConfig
2017-09-27 12:49:09 -07:00
Eric Nakagawa b241ed4404 Prints an console error if /blog/ folder has no files. 2017-09-25 12:11:37 -07:00
Frank Li cfc6030d23 Fix replacement of relative doc links 2017-08-16 16:17:33 -07:00
Frank Li 43ef3c8142 Add comments 2017-08-15 16:55:38 -07:00
Frank Li ae4c577237 Fix to metadata ids 2017-08-14 10:19:01 -07:00
Frank Li 2e33758bef Clean up cache removal function 2017-08-11 11:39:04 -07:00
Frank Li 074ac07837 Small fix 2017-08-10 16:10:30 -07:00
Frank Li 4646fc98c5 Update color configurations 2017-08-10 16:03:43 -07:00
Frank Li 964e9e2108 Update doc metadata to use file name as id fallback and id as title fallback 2017-08-10 14:51:34 -07:00
Frank Li db7a7394b3 Merge pull request #61 from facebookexperimental/error-messages
Add better error messages for most common cases
2017-08-10 13:46:58 -07:00
Frank Li 56b5554799 Merge pull request #26 from JoelMarcey/cname
Write CNAME file if custom domain
2017-08-10 11:37:25 -07:00
Frank Li c0792044b2 Update CNAME file generation 2017-08-10 11:34:40 -07:00
Frank Li 18bcc59fd0 Merge branch 'master' of https://github.com/facebookexperimental/Docusaurus 2017-08-09 16:25:25 -07:00
Frank Li 91fe923cf7 Fix variable declaration 2017-08-09 16:25:18 -07:00
Frank Li 88359ea845 Update messages for versioning 2017-08-09 16:17:39 -07:00
Frank Li cdea25eceb Merge branch 'master' of https://github.com/facebookexperimental/Docusaurus 2017-08-09 15:50:34 -07:00
Frank Li 374ca9b86c Change sidebar.json to sidebars.json in versionFallback.js 2017-08-09 15:50:20 -07:00
Frank Li b256d2f8d9 Initial changes to error messages 2017-08-09 15:43:30 -07:00
Frank Li d2eaf04ec7 Fix markdown html link replacement 2017-08-08 15:44:51 -07:00
Frank Li 94a3265aab Fix blog metadata 2017-08-08 14:58:41 -07:00