Mendix Documentation
This repository contains the Mendix documentation, which is served on https://docs.mendix.com.
Build status:
Working in the Mx10 Private Repo
To make Mx10 Beta 1 updates here, please do the following:
- Create a separate branch off of the
mx-10-branch
.- Do not commit directly to
development
orproduction
!
- Do not commit directly to
- Make your documentation changes.
- Create a pull request with those changes. Make sure you chose the
mx-10-branch
as the base branch. - Your componentโs dedicated technical writer will be assigned to review your work.
Contribute
Want to contribute? Take a look at How to Contribute to the Mendix Documentation. It will guide you through the process of submitting updates to the docs directly from Github or from a local branch.
Local Build
You can clone a local copy of the repository and build local previews. The Mendix documentation is built on top of Hugo and Node.JS. The theme of the page is based on Docsy. To develop the documentation locally, follow the steps in the next section.
Setting Up
Cloning the Repo
To clone the repo there are a few things to keep in mind:
- If you are running on Windows, the directory path for the local directory should not be too long, otherwise some files will reach the limits of gitโs file length. A base path of up to 50 characters works - 64 characters is currently too long.
- If you are using a Git GUI-based tool (such as Sourcetree), make sure you have Recurse submodules checked. Github Desktop does this automatically for you.
- If you are cloning the repo via Git commands from a terminal, run:
git clone --recurse-submodules https://github.com/mendix/docs
Clone the repo through one of the above mentioned methods. Check that you have content within the directory /themes/docsy/
.
Installing Dependencies
- Download and install NodeJS. Use the version indicated at the top of this readme.
- In a terminal at the root of the repository run:
npm install
. - Download the 0.91 Hugo extended version.
- Extract hugo.exe from the archive and place it in the root of the repo directory. None of the other files are needed.
Changes made to your local repository, such as adding the Hugo executable, should be excluded from git control. If any new/changed files are added to your uncommitted files, please do not commit the changes.
Running the Server
To run a local version of the site:
-
Run cmd:
hugo server --environment development
Once the site is built you will see a table indicating how many pages have been created. You will need to wait until the server is set up before you can see the site.
-
Go to http://localhost:1313/ and see the site live.
See the Hugo Server documentation for more options (for example, if you want to change the port on which the site is published)
Potential Issues
If you are using a Mac, you might get an error too many open files
or fatal error: pipe failed
. By default, your Mac is probably set to restrict the number of open files. You will need to override this, see Docsy known issues for more information.
If your system has a low memory limit, add the --renderToDisk
parameter to the Hugo command, for example hugo server --environment development --renderToDisk
. With this option, Hugo will only load pages on demand; without the --renderToDisk
option, Hugo will load all documentation into memory for faster access.