Laserfiche Developer Documentation: https://developer.laserfiche.com First published 5/23/2024
- Install Ruby and bundler
- See the instructions here to install jekyll and bundler.
- You may need to add the zscaler.crt (rename extension to .pem) to your rubygems certificate folder, e.g.:
C:\Ruby33-x64\lib\ruby\3.3.0\rubygems\ssl_certs\rubygems.org - You may also need to paste the zscaler.crt content into
C:\Ruby33-x64\bin\etc\ssl\cert.pem
- You may need to add the zscaler.crt (rename extension to .pem) to your rubygems certificate folder, e.g.:
- Verify installation running check.rb
- run
gem install bundler - run
gem install jekyll- If fails to download a package, you may need to manually download and install it. E.g.
gem install ffi -v 1.17.0
- If fails to download a package, you may need to manually download and install it. E.g.
- See the instructions here to install jekyll and bundler.
- navigate to the src directory
- remove the Gemfile.lock, if it exists
- run
bundle install - run
bundle exec jekyll serve
-
Check installations and versions:
gem --version bundle --version jekyll --version
- Navigate to directory
<project_path>/src. - Run
bundle installto install all the dependencies needed to serve.- Troubleshoot:
- If you see error
Gem::RemoteFetcher::FetchError bad response Forbidden 403, stay under directory/srcand follow the steps in the dependency issues in the prerequisites to install the dependency from a local .gem file.
- If you see error
- Troubleshoot:
- Run
bundle exec jekyll serve --destination ../_siteto build and serve the documentation. - Open http://localhost:4000 in a browser.
All website content is defined under the folder /src/docs. Each page is defined by a folder containing a file named index.md, and optionally linked static assets such as images.
The index.md jekyll front matter defines page data such as navigation order, title, and optional nested pages. For example:
---
layout: default
title: Laserfiche Title
nav_order: 2
has_children: true
---
To view changes in the browser:
cd src
bundle exec jekyll serve --livereload`Browse http://localhost:4000
To redirect from a list of links to a page, add a redirect-from key in the front matter of the page, and then list the links you want to redirect from in a bulleted list. For example:
---
layout: default
title: Save a Document to Laserfiche
redirect_from:
- /docs/user-documentation/save-to-laserfiche
- /docs/user-docs/save-to-lf
nav_order: 1
parent: Laserfiche Title
---
To check if there are any dead relative links in the project, navigate to src, and run
jekyll build
bundle exec rakeNOTE: If rake fails with error Could not open library 'libcurl.dll'
- Download CURL from https://curl.se/download.html
- Copy the correct version of the curl DLL (e.g. libcurl-x64.dll for Windows 64 bit) into the Ruby bin folder (e.g.
C:\Ruby33-x64\bin) and rename tolibcurl.dll.
- Trigger the documentation build pipeline from your feature branch.
- Download the artifact
github-pagesfrom the your build. - Extract the
artifact.tarfile from the artifact. - Extract the files from the
artifact.tarfile. - Create a website in IIS pointing to the folder containing the extracted files. NOTE: IIS may not work if the folder is under
Users/your.name. - Open the website from IIS.
- Trigger the documentation build pipeline from your feature branch.
- Download the artifact
github-pagesfrom the your build. - Extract the files from the artifact and navigate to the directory of the extracted files.
- Run
jekyll serveand browse http://127.0.0.1:4000/
To push documentation changes to production, create a Pull Request to merge into the default branch. The PR completion will trigger the documentation build pipeline which builds and publishes the documentation. You can view the results on Github Pages.