Giter Club home page Giter Club logo

flaxdocs's Introduction

Flax Engine Documentation

Flax Engine Docs

Welcome to the Flax documentation repository. This repository contains all the source files for the Flax documentation (https://docs.flaxengine.com/). Anyone is welcome to contribute!

Editing

We use DocFX tool for building and hosting documentation online. It supports markdown style files (.md) as it's a very standardized and popular format. Writing technical documentation using markdown style is easy and efficient.

To edit docs we recommend you to use tools such as Zettlr or Typora or Visual Studio Code.

Building and Testing

Documentation can be built and hosted on both Linux and Windows. DocFx can run on .Net or Mono. By default the site is hosted on localhost:8080 but this can be easily configured.

Windows

  • Download repository (or clone with git clone https://github.com/FlaxEngine/FlaxDocs.git)
  • Call build_manual.bat to build the Manual or build_all.bat to build whole documentation (with API) but it will take more time to finish
  • Call run_local_website.bat to preview the site

Linux

  • Install Mono
  • Clone repository (git clone https://github.com/FlaxEngine/FlaxDocs.git)
  • Call chmod +x docs.sh. It will modify permissions for the script docs.sh to allow to execute it
  • Call ./docs.sh rebuild

Technical Notes

C# and C++ API reference pages are generated by downloading and building engine at a given revision specified in file commit.txt. C# API is extracted via docfx metadata into api folder. C++ API is extracted via our custom fork of code2yaml which parses engine header files with doxygen to generate metadata into api-cpp folder.

Key configuration files:

  • docfx.json - config for docfx documentation building.
  • code2yaml.json - config for code2yaml used to extract api docs for C++.
  • doxyfile - config for doxygen to output xml files with engine api to be processed by code2yaml.
  • commit.txt - contains commit hash of the FlaxEngine revision to use for the API building.
  • .github\workflows\docs-publish.yml - Github Actions workflow triggered on git tag update-<version> that builds whole docs with api and publishes them to FlaxDocsHost for static hosting on Github Pages.
  • .github\workflows\docs-build.yml - Github Actions workflow triggered on push/pr that builds manual without api to verify the integrity of the modified docs (eg. warns about invalid links or missing files).

flaxdocs's People

Contributors

mafiesto4 avatar stefnotch avatar herocrab avatar w2wizard avatar bolognatic avatar minhct avatar jb-perrier avatar withaust avatar wolfos avatar nordonoscillius avatar honzapatcz avatar mxruben avatar iainmckay avatar galbi3000 avatar nove1398 avatar nothingtvatyt avatar jfaz13 avatar brbrmensch avatar molodoy-chelovek avatar clawthorn avatar muchaszewski avatar tom-weiland avatar evildea avatar mlavik1 avatar iliyalb avatar realdlps avatar goalitium avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.