Skip to content

climprocpred/climprocpred.github.io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

105 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Climate Processes and Predictability Research Group Website

This repository contains the source code for the Climate Processes and Predictability Research Group's academic website, built with Hugo and the Wowchemy theme.

πŸ“‹ Table of Contents

🌟 Overview

This website serves as the digital presence for the Climate Processes and Predictability Research Group, showcasing:

  • Research projects and publications
  • Team member profiles
  • Academic events and opportunities
  • Datasets and resources
  • Contact information

The site is built using Hugo, a fast static site generator, with the Wowchemy academic theme providing a modern, responsive design optimized for academic content.

πŸ›  Technology Stack

  • Static Site Generator: Hugo v0.100+
  • Theme: Wowchemy v5.6.0
  • CSS Preprocessor: SCSS
  • JavaScript: Vanilla JS with MathJax integration
  • Deployment: GitHub Pages
  • Content Management: Netlify CMS (optional)

πŸ“ Project Structure

climprocpred.github.io/
β”œβ”€β”€ assets/                 # Source assets (SCSS, JS)
β”‚   β”œβ”€β”€ js/
β”‚   β”‚   └── custom.js      # Custom JavaScript functionality
β”‚   └── scss/
β”‚       └── custom.scss    # Custom styles
β”œβ”€β”€ css/                   # Compiled CSS files
β”œβ”€β”€ js/                    # JavaScript libraries and configurations
β”‚   β”œβ”€β”€ mathjax-config.js  # MathJax configuration
β”‚   └── wowchemy-slides.js # Presentation functionality
β”œβ”€β”€ content/               # Hugo content files (not shown in build)
β”œβ”€β”€ static/                # Static assets (images, files)
β”œβ”€β”€ layouts/               # Custom Hugo templates (not shown in build)
β”œβ”€β”€ config/                # Hugo configuration (not shown in build)
└── public/                # Generated static site (this directory)

πŸš€ Getting Started

Prerequisites

Local Development

  1. Clone the repository

    git clone https://github.com/climprocpred/climprocpred.github.io.git
    cd climprocpred.github.io
  2. Install dependencies (if using npm/yarn for asset management)

    npm install
    # or
    yarn install
  3. Start development server

    hugo server -D
  4. View the site Open http://localhost:1313 in your browser.

πŸ’» Development

Adding New Content

  • Publications: Add to content/publication/
  • Projects: Add to content/project/
  • Team Members: Add to content/authors/
  • Events: Add to content/event/
  • Blog Posts: Add to content/post/

Customizing Styles

Edit assets/scss/custom.scss for custom CSS. The file includes:

  • Slideshow container styles
  • Navigation dot styling
  • Custom component overrides

Adding JavaScript Functionality

Edit assets/js/custom.js for custom JavaScript. Current features include:

  • Automatic slideshow functionality
  • Image carousel with navigation dots

πŸ“š Code Documentation

JavaScript Files

assets/js/custom.js

Custom JavaScript functionality for the website.

Functions:

  • showSlides(): Manages automatic slideshow with 2-second intervals
  • slideIndex: Global variable tracking current slide position

Usage:

<!-- HTML structure required -->
<div class="slideshow-container">
  <div class="mySlides">...</div>
  <div class="mySlides">...</div>
  <!-- Navigation dots -->
  <span class="dot"></span>
  <span class="dot"></span>
</div>

js/mathjax-config.js

Configuration for MathJax mathematical rendering.

Features:

  • Inline math support: $...$ and \(...\)
  • Display math support: $$...$$ and \[...\]
  • Error handling with noerrors package
  • Markmap compatibility

js/wowchemy-slides.js

Presentation functionality using Reveal.js.

Features:

  • Markdown support in slides
  • Search functionality
  • Speaker notes
  • Mathematical rendering with KaTeX
  • Zoom capabilities
  • Mermaid diagram support
  • Menu system

SCSS Files

assets/scss/custom.scss

Custom stylesheet for website components.

Components:

  • .slideshow-container: Main slideshow wrapper
  • .mySlides: Individual slide styling
  • .dot: Navigation dot styling
  • .active: Active dot state

πŸš€ Deployment

GitHub Pages

This site is configured for GitHub Pages deployment:

  1. Automatic Deployment: Push to main branch triggers automatic build
  2. Manual Deployment: Use GitHub Actions or Netlify
  3. Custom Domain: Configured via _headers and _redirects

Build Process

# Build for production
hugo --minify

# Build with draft content
hugo -D

# Build for specific environment
hugo --environment production

🀝 Contributing

Development Workflow

  1. Create a feature branch

    git checkout -b feature/your-feature-name
  2. Make your changes

    • Follow the existing code style
    • Test locally before committing
    • Update documentation as needed
  3. Submit a pull request

    • Provide clear description of changes
    • Include screenshots for UI changes
    • Reference any related issues

Code Style Guidelines

  • JavaScript: Use ES6+ features, meaningful variable names
  • SCSS: Follow BEM methodology, use meaningful class names
  • HTML: Semantic markup, accessibility considerations
  • Content: Markdown format, clear structure

Testing

  • Test on multiple browsers (Chrome, Firefox, Safari, Edge)
  • Verify responsive design on mobile devices
  • Check accessibility with screen readers
  • Validate HTML and CSS

πŸ“ž Support

For questions or issues:

  • Create an issue on GitHub
  • Contact the development team
  • Check Hugo and Wowchemy documentation

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


Last Updated: December 2024
Maintained by: Climate Processes and Predictability Research Group

About

Research Group

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages