Skip to content

kevingurney/arrow-site

This branch is 226 commits behind apache/arrow-site:main.

Folders and files

NameName
Last commit message
Last commit date
Jan 24, 2023
Jan 26, 2023
Jul 8, 2020
Dec 20, 2022
Aug 4, 2020
Feb 16, 2023
Jan 26, 2023
Feb 12, 2021
Feb 12, 2021
Jan 31, 2022
Jan 5, 2023
Jan 24, 2023
Dec 8, 2022
Feb 12, 2021
Aug 24, 2021
Aug 24, 2021
Feb 12, 2021
Mar 15, 2022
Mar 15, 2022
Oct 5, 2022
Oct 5, 2022
Feb 17, 2022
Dec 19, 2022
Jul 24, 2020
Feb 15, 2023
Dec 19, 2022
Dec 19, 2022
Dec 11, 2020
Oct 19, 2022
Dec 11, 2020
Jul 20, 2022
Aug 24, 2021
Feb 14, 2023
Nov 19, 2021
Sep 27, 2020
Jul 24, 2020
Jul 14, 2021
Feb 17, 2022
Feb 12, 2021

Repository files navigation

Apache Arrow Website

Overview

Jekyll is used to generate HTML files from the Markdown + templates in this repository. The built version of the site is kept on the asf-site branch, which gets deployed to https://arrow.apache.org.

Adding Content

To add a blog post, create a new markdown file in the _posts directory, following the model of existing posts. In the front matter, you should specify an "author". This should be your Apache ID if you have one, or it can just be your name. To add additional metadata about yourself (GitHub ID, website), add yourself to _data/contributors.yml. This object is keyed by apacheId, so use that as the author in your post. (It doesn't matter if the ID actually exists in the ASF; all metadata is local to this project.)

Prerequisites

With non-EOL-ed Ruby installed, run the following commands to install Jekyll.

gem install bundler
bundle install

We also need Node.JS to use webpack for maintaining dependent JavaScript and CSS libraries.

We can install webpack and dependent JavaScript and CSS libraries automatically by following command lines to preview or build the site. So we just need to install Node.JS here.

Previewing the site

Run the following and open http://localhost:4000/ to preview generated site locally:

bundle exec rake

Deployment

On commits to the master branch of apache/arrow-site, the rendered static site will be published to the asf-site branch using GitHub Actions. On a fork, it will deploy to your gh-pages branch for deployment via GitHub Pages; this is useful for previewing changes you're proposing.

FYI: We can also generate the site for https://arrow.apache.org/ to _site/ locally by the following command line:

JEKYLL_ENV=production bundle exec rake generate

Updating Code Documentation

To update the documentation, you can run the script ./dev/gen_apidocs.sh in the apache/arrow repository. This script will run the code documentation tools in a fixed environment.

C (GLib)

First, build Apache Arrow C++ and Apache Arrow GLib. This assumes that you have checkouts your forks of arrow and arrow-site alongside each other in your file system.

mkdir -p ../cpp/build
cd ../cpp/build
cmake .. -DCMAKE_BUILD_TYPE=debug
make
cd ../../c_glib
./autogen.sh
./configure \
  --with-arrow-cpp-build-dir=$PWD/../cpp/build \
  --with-arrow-cpp-build-type=debug \
  --enable-gtk-doc
LD_LIBRARY_PATH=$PWD/../cpp/build/debug make GTK_DOC_V_XREF=": "
rsync -r doc/reference/html/ ../../arrow-site/asf-site/docs/c_glib/

JavaScript

cd ../js
npm run doc
rsync -r doc/ ../../arrow-site/asf-site/docs/js

Then add/commit/push from the asf-site/ git checkout.

Using Docker

If you don't wish to change or install ruby and nodejs locally, you can use docker to build and preview the site with a command like:

docker run -v `pwd`:/arrow-site -p 4000:4000 -it ruby bash
cd arrow-site
apt-get update
apt-get install -y npm
gem install bundler
bundle install
# Serve using local container address
bundle exec rake HOST=0.0.0.0

Then open http://locahost:4000 locally

About

Mirror of Apache Arrow site

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 61.6%
  • Python 9.5%
  • Ruby 8.5%
  • CSS 8.3%
  • JavaScript 5.1%
  • SCSS 4.5%
  • Shell 2.5%