GithubHelp home page GithubHelp logo

sgi-capp-at2 / collaboraonline.github.io Goto Github PK

View Code? Open in Web Editor NEW

This project forked from collaboraonline/collaboraonline.github.io

0.0 0.0 0.0 9 MB

Community website for Collabora Online: Build Collabora Online; Build for Android; Build for iOS; FAQ; Communication channels; etc

HTML 99.31% CSS 0.69%

collaboraonline.github.io's Introduction

Table of Contents

Work and push to the source branch

The branch with the name source hosts all source files used in the creation of the website via hugo. In turn, master branch is then only used to host the generated result (public folder)

Directory

  • Posts (buildit, easyhacks, translate, filebugs) are written in markdown and are located in content/post/*.md
  • Images content/images/
  • We can also have different authors, and since then everything will be public we can maybe use different authors according to the person who wrote them. content/authors/ then each post and page has an attribute name authors (we can have multiple per content)
  • Docs page (Documentation): content/docs.md

See how it looks without server

If you just want to check how the website looks and do not want to run local server

  • You can, after all it's a static website
  • just download master branch as a .zip
  • Unzip it and open it
  • There is an index.html, you can open with your web browser, it will work Caveats: since you are not runing a local server when you click a link it will not find dinamycally the .html of that directoy. Thus it will show you a non found page. Example:
  • You clicked Build instructions
  • It showed something like:
index of file:///home/pedrosilva/collaboraonline-page/public/post/buildit/

Name
index.html

To circunvent this you can either click that index.html under Name or you can simply type it at the end of that page address like so: file:///home/pedrosilva/collaboraonline-page/public/post/buildit/index.html

Note: ideally we would have this in one folder inside of CollaboraOffice.com so everyone with Basic Auth could check it

Generate and Run local a server

  1. Install Hugo: https://gohugo.io/getting-started/installing/
  • Official packages for Debian and Ubuntu: sudo apt-get install hugo
  • Official packages for Fedora, Red Hat and CentOS sudo dnf install hugo
  • For openSUSE
    • Official for Tumbleweed: sudo zypper install hugo view in store
    • Experimental for Leap 15.2 packages view in store
      • sudo zypper addrepo https://download.opensuse.org/repositories/devel:languages:go/openSUSE_Leap_15.2/devel:languages:go.repo
      • sudo zypper refresh
      • zypper install hugo
  • with homebrew for linux; macOS: brew install hugo note: https://github.com/gohugoio/hugo/releases
  1. Repository and branches
  • Choose a local folder
  • Clone it git clone https://github.com/CollaboraOnline/CollaboraOnline.github.io.git .
  • Change branch to source git checkout source
  • git worktree add -B master public origin/master : Creates a local public folder and be able to manage both branches within the same working tree, allowing to have a mixed of branches checked out at the same time. With this we can generate the site into that public folder, and have it be mirrored in the master branch.
  1. Generate live static website and run server (while watching files etc so it does not need to refresh it will do it automatically)

run hugo server in the root of your source branch local copy

Deploy to master:

when we want to publish the generated static website (resulting from the changes in source branch) we can run ./deploy.sh

  • the script checks for git status and will not proceed if the dir is not clean

  • removed any old generated version you might have locally (so anything inside of public)

  • runs hugo to generate the website into the public folder

  • pushes the contents of public folder to master branch

  • master: The master branch will store the public website files once they are all built.

  • source: additional branch to store all of the source files.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.