First version of the new GitHub pages

This commit is contained in:
kaltokri 2023-10-20 16:13:30 +02:00
parent 10dffb0689
commit 4d9197b3cc
12 changed files with 309 additions and 0 deletions

69
.github/workflows/gh-pages.yml vendored Normal file
View File

@ -0,0 +1,69 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# Sample workflow for building and deploying a Jekyll site to GitHub Pages
name: Deploy Jekyll site to Pages
on:
push:
branches: ["master"]
paths:
- 'docs/**'
- '.github/workflows/pages.yml'
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow one concurrent deployment
concurrency:
group: "pages"
cancel-in-progress: true
jobs:
# Build job
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.1' # Not needed with a .ruby-version file
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
cache-version: 0 # Increment this number if you need to re-download cached gems
working-directory: docs/
- name: Setup Pages
id: pages
uses: actions/configure-pages@v3
- name: Build with Jekyll
# Outputs to the './_site' directory by default
run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}"
env:
JEKYLL_ENV: production
working-directory: docs/
- name: Upload artifact
# Automatically uploads an artifact from the './_site' directory by default
uses: actions/upload-pages-artifact@v1
with:
path: docs/_site/
# Deployment job
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v1

11
docs/.gitignore vendored Normal file
View File

@ -0,0 +1,11 @@
# Copied from https://github.com/github/gitignore/blob/main/Jekyll.gitignore
# Ignore metadata generated by Jekyll
_site/
.sass-cache/
.jekyll-cache/
.jekyll-metadata
# Ignore folders generated by Bundler
.bundle/
vendor/
Gemfile.lock

12
docs/Dockerfile Normal file
View File

@ -0,0 +1,12 @@
FROM ruby:2.7
ENV LC_ALL C.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US.UTF-8
WORKDIR /usr/src/app
COPY Gemfile just-the-docs.gemspec ./
RUN gem install bundler && bundle install
EXPOSE 4000

7
docs/Gemfile Normal file
View File

@ -0,0 +1,7 @@
source "https://rubygems.org"
gem "github-pages", group: :jekyll_plugins
gem "jekyll"
gem "json"
gem "just-the-docs"
gem "webrick", group: :development

21
docs/LICENSE Normal file
View File

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2022 just-the-docs
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

34
docs/_config.yml Normal file
View File

@ -0,0 +1,34 @@
repository: FlightControl-Master/MOOSE
title: MOOSE
description: MOOSE is a Mission Object Oriented Scripting Environment for mission designers in DCS World
theme: just-the-docs
color_scheme: moose
gh_edit_link: false
gh_edit_link_text: "Edit this page on GitHub"
gh_edit_repository: https://github.com/FlightControl-Master/MOOSE
gh_edit_branch: master
gh_edit_source: docs
gh_edit_view_mode: edit
callouts_level: quiet # or loud
callouts:
highlight:
color: grey-dk
important:
title: Important
color: red
new:
title: New
color: grey-lt
note:
title: Note
color: green
warning:
title: Warning
color: yellow
callouts_opacity: 0.4
aux_links:
GitHub: https://github.com/FlightControl-Master/MOOSE
Discord: https://discord.gg/aQtjcR94Qf

View File

@ -0,0 +1,5 @@
@import "./color_schemes/dark";
$green-300: #0d441b;
$red-300: #440d0d;
$grey-dk-300: #adadad;

13
docs/docker-compose.yml Normal file
View File

@ -0,0 +1,13 @@
version: "3.5"
services:
jekyll:
build:
context: ./
ports:
- 4000:4000
volumes:
- .:/usr/src/app
stdin_open: true
tty: true
command: bundle exec jekyll serve -H 0.0.0.0 -t --force_polling

BIN
docs/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

68
docs/index.md Normal file
View File

@ -0,0 +1,68 @@
---
title: Overview
nav_order: 1
layout: home
---
[![Moose-Includes](https://github.com/FlightControl-Master/MOOSE/actions/workflows/build-includes.yml/badge.svg?branch=master)](https://github.com/FlightControl-Master/MOOSE/actions/workflows/build-includes.yml)  
[![Moose-Docs](https://github.com/FlightControl-Master/MOOSE/actions/workflows/build-docs.yml/badge.svg?branch=master)](https://github.com/FlightControl-Master/MOOSE/actions/workflows/build-docs.yml)
# MOOSE framework
MOOSE is a **M**ission **O**bject **O**riented **S**cripting **E**nvironment for mission designers in [DCS World].
It allows to quickly setup complex missions using pre-scripted scenarios using the available classes within the MOOSE Framework.
MOOSE is written in [Lua] which is a small and fast programming language, which is embedded in [DCS World].
## Goal of MOOSE
The goal of MOOSE is to allow mission designers to enhance their scripting with mission orchestration objects,
which can be instantiated from defined classes within the framework. This will allow to write mission scripts with
minimal code embedded. Of course, the richness of the framework will determine the richness of the misson scenarios.
The MOOSE is a service that is produced while being consumed. It will evolve further as more classes are developed
for the framework and as more users are using it.
MOOSE is not a one-man show, it is a collaborative effort and meant to evolve within a growing community around the framework.
Within the community, key users will start supporting, documenting, explaining and even creating new classes for the framework.
It is the ambition to grow this framework as a de-facto standard for mission designers to use.
## Two branches - Choose wisely
In [DCS World] there is a `Stable` version and an `OpenBeta`. New features are released to the `OpenBeta` first and applied to `Stable` later.
People who choose to use `OpenBeta` can use the newest featuest and module, but accept the risk of bugs and unstable updates.
In MOOSE there is a `master` branch, which is comparable to the `Stable` version.
And there is the `development` branch, which is more like the `OpenBeta`.
New modules (called classes in [Lua], like [OPS.Auftrag]) will only available in the `development` branch.
Releases are the most stable approach to use MOOSE.
From time to time the current state of the `master` branch is used to create release.
A release gets a spefific version number and will not be changed later on.
## Documentation
Documentation on the MOOSE class hierarchy will be automatically generated from [LuaDoc] comments inside of the source code of MOOOSE.
You can find the results on these websites:
- Stable `master` branch: <https://flightcontrol-master.github.io/MOOSE_DOCS/>
- `develop` branch: <https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/>
## YouTube Tutorials
There are different tutorial playlists available on YouTube:
- AnyTimeBaby (Pene) has kindly created a [tutorial series for MOOSE](https://youtube.com/playlist?list=PLLkY2GByvtC2ME0Q9wrKRDE6qnXJYV3iT)
with various videos that you can watch.
- FlightControl (initiator of the project) has created a lot of [videos](https://www.youtube.com/@flightcontrol5350/featured) on how to use MOOSE.
They are a little bit outdated, but they still contain a lot of valuable information.
## MOOSE on Discord
MOOSE has a living community of users, beta testers and contributors.
The gathering point is a service provided by [Discord].
If you want to join this community, just click the link below and you'll be on board in no time.
- [Moose for DCS Discord server](https://discord.gg/aQtjcR94Qf)
[DCS World]: https://www.digitalcombatsimulator.com/de/
[Lua]: https://www.lua.org/
[LuaDoc]: https://keplerproject.github.io/luadoc/
[Ops.Auftrag]: https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Ops.Auftrag.html
[Discord]: https://discord.com/

View File

@ -0,0 +1,26 @@
# coding: utf-8
Gem::Specification.new do |spec|
spec.name = "just-the-docs"
spec.version = "0.4.1"
spec.authors = ["Patrick Marsceill", "Matthew Wang"]
spec.email = ["patrick.marsceill@gmail.com", "matt@matthewwang.me"]
spec.summary = %q{A modern, highly customizable, and responsive Jekyll theme for documentation with built-in search.}
spec.homepage = "https://github.com/just-the-docs/just-the-docs"
spec.license = "MIT"
spec.metadata = {
"bug_tracker_uri" => "https://github.com/just-the-docs/just-the-docs/issues",
"changelog_uri" => "https://github.com/just-the-docs/just-the-docs/blob/main/CHANGELOG.md",
"documentation_uri" => "https://just-the-docs.github.io/just-the-docs/",
"source_code_uri" => "https://github.com/just-the-docs/just-the-docs",
}
spec.files = `git ls-files -z ':!:*.jpg' ':!:*.png'`.split("\x0").select { |f| f.match(%r{^(assets|bin|_layouts|_includes|lib|Rakefile|_sass|LICENSE|README|CHANGELOG|favicon)}i) }
spec.executables << 'just-the-docs'
spec.add_development_dependency "bundler", ">= 2.3.5"
spec.add_runtime_dependency "jekyll", ">= 3.8.5"
spec.add_runtime_dependency "jekyll-seo-tag", ">= 2.0"
spec.add_runtime_dependency "rake", ">= 12.3.1"
end

43
docs/repositories.md Normal file
View File

@ -0,0 +1,43 @@
---
title: Repositories
nav_order: 2
---
# MOOSE Repositories
The underlying picture documents the different repositories in the MOOSE framework.
The white ones are edited and are the source of the framework.
The red ones contain generated artefacts. See further the explanation for each repository.
![Graphic](https://raw.githubusercontent.com/FlightControl-Master/MOOSE_DOCS/master/Configuration/Master.png)
## [MOOSE](https://github.com/FlightControl-Master/MOOSE) - For development and static documentation
This repository contains the source lua code of the MOOSE framework.
Also the source files for this documentation are included in this repository.
## [MOOSE_INCLUDE](https://github.com/FlightControl-Master/MOOSE_INCLUDE) - For users (provides generated files)
This repository contains the `Moose.lua` and `Moose\_.lua` file to be included within your missions.
Note that the `Moose\_.lua` is technically the same as `Moose.lua`, but without any commentary or unnecessary whitespace in it.
You only need to load **one** of those files at the beginning of your mission.
## [MOOSE_DOCS](https://github.com/FlightControl-Master/MOOSE_DOCS) - Only to generate documentation website
This repository contains the generated documentation and pictures and other references.
The generated documentation is reflected in html and is published at:
- Stable `master` branch: <https://flightcontrol-master.github.io/MOOSE_DOCS/>
- `develop` branch: <https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/>
## [MOOSE_MISSIONS](https://github.com/FlightControl-Master/MOOSE_MISSIONS) - For users (provides demo missions)
This repository contains all the demonstration missions in packed format (*.miz),
and can be used without any further setup in DCS WORLD.
## [MOOSE_MISSIONS_DYNAMIC](https://github.com/FlightControl-Master/MOOSE_MISSIONS_DYNAMIC) - Outdated
This repository will be removed in future.
## [MOOSE_MISSIONS_UNPACKED](https://github.com/FlightControl-Master/MOOSE_MISSIONS_UNPACKED) - Outdated
This repository will be removed in future.