Giter Club home page Giter Club logo

www.haskell.org's Introduction

Haskell.org Website

This repository holds the source code and content for www.haskell.org. Questions about and issues with the site can be raised in this repository, and PRs can be made to change content. More general administrative issues with the site or related haskell.org infrastructure are better raised directly with the admin team. Not everything beneath www.haskell.org is generated from this repository. See the list of other subsites below.

Developing the website

The website is built as a Hakyll static site, which builds both as a nix derivation and a standalone cabal project.

Community contributions

We welcome contributions from the community. To see which things we need particular help with, please see the community contributions meta-ticket.

If you have your own idea for a change you would like to see you are welcome to submit a PR. Before you start work on your idea you might like to file a new issue to discuss it with the maintainers to get an estimate for how likely it is to be accepted. PRs are accepted according to the PR policy of this repository.

Making Changes

The easiest way to see the effect of your changes is to use the buildAndWatch script and then point your web browser to http://localhost:8000. When you are finished editing or want to re-build the Hakyll part of the site, you can stop the script by pressing Control+c (C-c).

If you are only making changes to the content of the site, you can leave this script running and it will automatically pick up changes and re-build the site for you.

If you want to change the builder, or if you encounter an error where your changes to the content aren't being picked up, need to stop the script and re-start it.

Submitting Changes

Once you're satisfied with your changes, make a PR and the maintainers will try to review it as soon as we can.

Working On The Builder

The builder is the static site generator that turns the markdown files, CSS, images, and scripts into a website. It lives in the builder. Most of the time, you won't need to make changes to the builder and you can follow the instructions in the Contributing Changes section above.

If you want to make a quick change or two, you can continue to use the buildAndWatch script to rebuild changes, but for more substantial changes this might increase the build cycle time too much. In this case, you can build the builder using either nix or cabal. Directions for both are given below:

Manually Building the Site With Cabal

If you don't have nix installed, or if you are inside of the project's nix shell, you will want to use cabal to compile the builder. To do so, enter the builder directory and compile the program with:

cabal v2-build

Once compiled, the builder must be run from the project root directory so that it can find all of the content. To run the builder, you need to first find the name of the executable. From the builder directory, you can find the executable path by running:

cabal v2-exec -- which haskell-org-site

Using that path, you can run the builder from the project root directory.

Manually Building the Site With Nix

If you have nix installed, you can have nix build the builder by running:

nix-build -A builder

You may then run the builder binary from the result directory:

./result/bin/haskell-org-site build

Deploying

The site will automatically be deployed live to http://www.haskell.org/ every time a branch is merged to master. Alternatively an admin for this GitHub repository can deploy the site by visiting the Deploy workflow page, clicking the "Run workflow" dropdown, choosing the branch to build and deploy, and clicking the "Run workflow" button.

Subsites

Not all subsites of www.haskell.org are built from this repository. Some of the others are

Subsite Source Owner Details
cabal/ cabal-website Cabal maintainers Details
ghc/ Details
ghc-perf/ Joachim Breitner Details
ghcup/ ghcup-hs Julian Ospald
haddock/ Redirect Haddock maintainers Details
haskell-symposium/ Haskell Symposium organisers
platform/ Redirect
alex/ Redirect Alex maintainers Details
arrows/ Ross Patterson
communities/ Details
definition/ Haskell Prime committee Details
happy/ Redirect Happy maintainers Details
haskell-workshop/ Haskell Symposium organisers Details
hugs/ Details
nhc98/ York Functional Programming Group Details
onlinereport/ Haskell Prime committee Details
tutorial/ Details

Details on subsites

www.haskell.org's People

Contributors

tikhonjelvis avatar tomjaguarpaw avatar rebeccaskinner avatar gwils avatar tritlo avatar gbaz avatar ketzacoatl avatar romefeller avatar kleidukos avatar ffaf1 avatar noughtmare avatar enmcarv avatar ericson2314 avatar soupi avatar albert-vill avatar aviaviavi avatar andys8 avatar sekunho avatar martinsos avatar hasufell avatar expede avatar emilypi avatar dschrempf avatar dekudekuplex avatar mhitza avatar sadikkuzu avatar alt-romes avatar robx avatar goldfirere avatar 3rafal avatar

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.