The site is served with expressjs and nodeJS. This allows seperation of the APIs, static docs directory and Dynamic Angular 2 part of the site.
This is a nodeJS based static docs site, built with Hexo. For a run through on the rationale behind this project, please read this. After cloning this repo, please follow the steps below to test locally. The site should pull the docs subdirectory and then render all the docs on each version production branch. e.g. to release the docs, you should merge the master
branch with the latest
branch, then when releasing a new version, those docs should be set historically by creating a new branch, e.g. 2.2
and then continuing all new doc additions for 2.3
on the latest branch. The Hexo deployment should be a direct replacement for Jekyll, rendering the same source directly, this is currently a work in progress (see the repo's issues on GitHub).
This is based on Angular2, and is linked to a new tutorial repo. This means that whilst following through the tutorial, at the end of each chapter you can download a zip of the project at that point. You can also see git diffs for each code step.
There is an API and Angular2 component for this. A public API and online form allows you to register a new plugin. The server then polls npmjs (and then daily) to update the number of monthly downloads, the latest version number etc. Authentication is provided by Auth0 and allows users to log in with their GitHub accounts. The plugins are kept in a managed MongoDB instance provided free by mLab. Users can then search all plugins, a function which is provided by an ElasticSearch instance, currently hosted by Searchly.
After cloning, or updating the repo, it makes sense to run
git submodule update --init
Ensure you've run npm install
. Then simply npm start
.
Welcome to the NativeScript documentation content repository. This repository contains the content that lives at http://docs.nativescript.org, and is generated by Jekyll.
We have two Jekyll builds for the documentation that generate similar output: nativescript
and angular
. The former builds the vanilla NativeScript docs, while the latter discusses Angular2-specific topics. Most of the content is shared between the two, and several options are available to add environment-specific content:
-
Pages that appear in certain environment only. Adding an
environment: angular
to a page's front matter will mark that page as being available only in that environment. Other environment builds will exclude it. Pages not marked withenvironment
will be shared across all environments. -
Display different content on shared pages. This is possible via our environment-related block tags, named
angular
andnativescript
respectively:{% nativescript %}Dependency properties...{% endnativescript %} {% angular %}Change detection...{% endangular %}[
The NativeScript documentation is completely open source and we love contributions. Whether you want to fix a typo, or write an entire article, the NativeScript documentation is a great way to get started contributing to an open source project.
Don’t know where to start? Check out the list of issues with the “up-for-grabs” label. New to git or GitHub? Join our community Slack chat and we’ll be happy to help get you up and running.
The following is a list of all the people that have contributed to the NativeScript documentation. Thanks for your contributions!