All Projects → vala-lang → Valadoc Org

vala-lang / Valadoc Org

Licence: lgpl-2.1
Build tools used to generate valadoc.org

Programming Languages

vala
323 projects

Projects that are alternatives of or similar to Valadoc Org

Cordova Docs
Apache Cordova Documentation
Stars: ✭ 315 (+425%)
Mutual labels:  documentation, website
Getkirby.com
Source code and content for the Kirby website
Stars: ✭ 57 (-5%)
Mutual labels:  documentation, website
Easy Hexo
🤘 Build your own website with Hexo, the easy way. | 轻松使用 Hexo 建站。
Stars: ✭ 314 (+423.33%)
Mutual labels:  documentation, website
Swagger Toolbox
💡 Swagger schema model (in yaml, json) generator from json data
Stars: ✭ 194 (+223.33%)
Mutual labels:  documentation, website
Reactjs.org
The React documentation website
Stars: ✭ 6,697 (+11061.67%)
Mutual labels:  documentation, website
Preact Www
📖 Preact documentation website.
Stars: ✭ 272 (+353.33%)
Mutual labels:  documentation, website
Website
Yarn package manager website
Stars: ✭ 374 (+523.33%)
Mutual labels:  documentation, website
Lodash.com
The Lodash website.
Stars: ✭ 119 (+98.33%)
Mutual labels:  documentation, website
Docusaurus
Easy to maintain open source documentation websites.
Stars: ✭ 29,053 (+48321.67%)
Mutual labels:  documentation, website
Ru.reactjs.org
React documentation website in Russian / Официальная русская версия сайта React
Stars: ✭ 444 (+640%)
Mutual labels:  documentation, website
Dvc.org
🔗 DVC website and documentation
Stars: ✭ 171 (+185%)
Mutual labels:  documentation, website
Docslikecode
Read stories, learn through practice, share with others, to treat docs as code.
Stars: ✭ 28 (-53.33%)
Mutual labels:  documentation, website
Jenkins.io
A static site for the Jenkins automation server
Stars: ✭ 165 (+175%)
Mutual labels:  documentation, website
Dlang.org
Pages for the dlang.org website, home of the D Programming Language
Stars: ✭ 274 (+356.67%)
Mutual labels:  documentation, website
Typemill
TYPEMILL is a simple and lightweight Flat-File-CMS for authors and publishers.
Stars: ✭ 150 (+150%)
Mutual labels:  documentation, website
Documentation Html Template
A Sample Documentation Template for Themes, Templates and Plugins
Stars: ✭ 322 (+436.67%)
Mutual labels:  documentation, website
Code Cookbook
The Haxe Code Cookbook - A community driven resource website for learning Haxe in practise
Stars: ✭ 84 (+40%)
Mutual labels:  documentation, website
Elementsproject.org
Source code for the ElementsProject.org website
Stars: ✭ 84 (+40%)
Mutual labels:  documentation, website
Rabbitmq Website
RabbitMQ website and documentation guides
Stars: ✭ 433 (+621.67%)
Mutual labels:  documentation, website
Website
🌐 The Babel documentation website
Stars: ✭ 631 (+951.67%)
Mutual labels:  documentation, website

Valadoc.org

Bountysource Build Status

Stays crunchy, even in milk.

This package contains build-tools used to generate valadoc.org and ideally shouldn't be used to generate other pages.

Building

In order to build the docs you will need the following:

  • valadoc >= 0.35.0
  • php
  • 4 GB of free space

On elementary OS or Ubuntu run:

sudo add-apt-repository ppa:vala-team
sudo apt update
sudo apt install valac valadoc libvaladoc-dev unzip php php-curl

Arch or derivatives run:

pacman -S vala php

Next, install JS dependencies:

npm install

After you have valadoc installed, you can move to building the documentation. Simply run:

make serve

This will take a bit of time, so grab yourself a cup of coffee; if you’re impatient, run:

make serve-mini

for a minimal test version. If you encounter an error at this step, please see the common pitfalls section. After you completed building, you should see a valadoc.org folder.

To access the documentation navigate your browser to http://localhost:7777.

Searching

For a more complete experience, you will need to install sphinxsearch and xsltproc.

On elementary OS or Ubuntu run:

sudo apt install sphinxsearch xsltproc

The run the following command to generate search indexes:

make serve-search

This will (eventually!) start a sphinx daemon on port 51413.

Add New Packages

Open documentation/packages.xml and add a new package-entry.

Use <external-package> to create external links:

<external-package name="package-name" link="http://path/to/docs">
  short description
</external-package>

Use <package> to build and include documentation for vapi files:

<package name="gdl-1.0">
  short description
</package>

The following attributes are supported:

Name Description
name The vapi name
deprecated Set it to '"true"' to mark a package as deprecated
maintainers List of binding maintainers
gir The GIR file used to extract documentation from
c-docs Link to C documentation
ignore Do not build documentation for this entry
home Homepage link
flags Additional vala flags (Missing dependencies, ...)
gallery Link to a GTK-Doc widget gallery
vapi-image-source Source to download images from

Referenced GIR and vapi-files have to be part of one of the following repositories:

Add New Source Code Examples

Copy your examples to examples/<vapi-name>/ and add a new entry to examples/<vapi-name>/<vapi-name>.valadoc.examples:

<example>
  <title>Example Title</title>
  <image>optional-screenshot.png</image>
  <file>file-name-1.vala</file>
  <file>file-name-2.vala</file>
  <compile>valac file-name1.vala file-name-2.vala ...</compile>
  <node>Associated.Symbol.name1</node>
  <node>Associated.Symbol.name2</node>
</example>

If this is the first example for the package, add a line to the check-examples target of Makefile.

Add Handwritten Documentation

Create a new file called <vapi-name>.valadoc in documentation/<vapi-name>/:

...

/**
 * My valadoc comment
 */
c::c_symbol_name
...

/**
 * My valadoc comment
 */
Vala.Symbol.Name

Tool Overview

  • generator: Parses packages.xml files describing all packages. It is responsible for building up the page. It fetches resources such as images from specified sources, computes valadoc-calls, builds documentation for specified packages and puts-together the whole page. (make serve, make serve-mini)
  • configgen: Used to generate configuration files for our search index.
  • valadoc-example-gen: Internally used to generate example listings.
  • valadoc-example-tester: Compiles and checks all registered examples. (make test-examples)

Common Pitfalls

Uncaught Error: Class 'mysqli' not found

  • Uncomment extension=mysqli.so in your OS's php.ini (find /etc -name php.ini)

error: failed to load driver

  • Your valadoc version does not support the requested vala version. Install a recent vala version and recompile valadoc.
  • Change VALAC_VERSION in Makefile.

Other errors:

  • Check LOG in the root of this repo for more information
  • Have you run out of disk space?

Contact And Help

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].