Commit graph

179 commits

Author SHA1 Message Date
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
dc0cc487fa Add back metadata generator (#150)
Rollback package.json
2017-10-19 13:43:03 -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
Ricky Vetter
fd05bb3239 More consistent headers (#140)
* More consistent headers

* Clean up mobile blog posts styles
2017-10-18 13:04:29 -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
Ricky Vetter
30eea17a24 upstream small screen header changes (#141) 2017-10-18 12:44:28 -07:00
Ricky Vetter
768ed88978 Add option to avoid indexing site (#142) 2017-10-18 11:35:30 -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
Ricky Vetter
967d0b7f3c Make some changes to font size/spacing (#134) 2017-10-18 10:01:06 -07:00
Ricky Vetter
e85e0822e5 Use fixed position on mobile nav (#133) 2017-10-18 09:58:41 -07:00
Ricky Vetter
e723d21113 normalize header padding (#132) 2017-10-18 09:53:08 -07:00
Ricky Vetter
e466c60481 Remove author name when unused (#131) 2017-10-18 09:52:23 -07:00
Ricky Vetter
fe938cd5b4 align search bar better (#130) 2017-10-18 09:51:16 -07:00
Ricky Vetter
3ec5da2b4e Remove active item bolding in sidebar (#122) 2017-10-12 14:21:34 +01:00
Ricky Vetter
524c577788 Add more robust font stack (#121) 2017-10-12 14:12:26 +01: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
Joel Marcey
01ebbb1512 Check for required folders based upon headerLinks right up front (#111)
I was getting this error when running the examples:

```
Error: It looks like you've enabled language support, but haven't provided translated files. The document with id: 'en-doc1' doesn't exist.
```

However, this error was an indirect result of me not renaming the `docs-examples-from-docusaurus` directory to `docs` since I had `doc` in my
`headerLinks` in the example siteConfig.js.

So let's check the headerLinks and make sure we have the required directories.

Here is an example of the error if I try to load a Docusaurus site just after running `npm run examples` without having renamed the directories.

```
Error: You have 'doc' in your headerLinks, but no 'docs' folder exists one level up from 'website' folder. Are you running the examples? If so, make sure you rename 'docs-examples-from-docusaurus' to 'docs'.
    at /Users/joelm/dev/test/website/node_modules/docusaurus/lib/core/nav/HeaderNav.js:226:15
:
:
```

Test Plan: Tested a local package in verdaccio
2017-10-05 11:14:27 -07:00
Héctor Ramos
14dfcff769 Support algoliaOptions object as value in siteConfig.js (#113) 2017-10-04 19:13:30 -07:00
Joel Marcey
56e7c41893 Case sensitive requires 2017-10-04 09:17:07 -07:00
Héctor Ramos
053f384cfe Add web player files (#112) 2017-10-04 09:10:33 -07:00
Héctor Ramos
419a11af3e Extend Marked.js in order to support React Native's code players (#109)
* Extend Marked.js to support SnackPlayer and the WebPlayer, as used in React Native
2017-10-04 08:56:55 -07:00
Ricky Vetter
9c7d8e55a9 add sourceCodeButton to site config (#93) 2017-10-03 15:20:35 -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
0c66a898b6 Add Reason support to Prism.js (#92) 2017-09-26 10:29:09 -07:00
Eric Nakagawa
effd1113ad Merge pull request #88 from ericnakagawa/master
Removed a redundant feature, added an error message to help troubleshooting building localized sites.
2017-09-26 10:22:43 -07:00
Héctor Ramos
45f6ef8fd9 Blog enhancements (#80)
* Small CSS adjustments.

* Blog adjustments.

* Add support for Prism in the blog
2017-09-25 12:53:54 -07:00
Héctor Ramos
a484893c4f Small CSS adjustments. (#79) 2017-09-25 12:52:58 -07:00
Eric Nakagawa
b241ed4404 Prints an console error if /blog/ folder has no files. 2017-09-25 12:11:37 -07:00
Eric Nakagawa
a86af92e7c Remove customCssFileName as any css file in /static/css gets appended to end of main.css 2017-09-25 11:35:35 -07:00
Eric Nakagawa
e71b4d902e Provide a more useful error in event someone tries to build site but hasn't provided localized files 2017-09-25 11:35:35 -07:00
Eric Nakagawa
376ad77361 Add a class to logo image in header 2017-09-25 10:01:34 -07:00
Eric Nakagawa
0dce734a1d Rearrange custom.css line 2017-09-22 11:42:19 -07:00
Eric Nakagawa
9c6fe348d6 Add support for a custom CSS file that is configurable from siteConfig.js 2017-09-22 11:31:29 -07:00
Eric Nakagawa
89285e7693 Fixes 2 additional console errors. One in HeaderNav and one in Index component. 2017-09-20 14:45:55 -07:00
Eric Nakagawa
a83e16308b Fixes one warning in console for React.DOM.* usage. 2017-09-20 14:45:55 -07:00