not really known
Go to file
2023-05-01 14:13:37 -07:00
.github/workflows Try busting node cache. 2023-03-14 16:21:21 -07:00
codegen Generate missing types and doc comments for docs command. 2023-04-19 18:10:55 -07:00
cypress Add FieldView.valueButton helpers, and rerun loaders when query params are changed to ensure that GET form submissions reload data. 2023-02-18 12:31:32 -08:00
docs Update 3.0-upgrade-notes.md 2023-04-06 08:55:01 -07:00
examples Update docs for elm-pages scripts. 2023-05-01 14:12:42 -07:00
generator Turn off help option so that elm-pages run Stars --help gives CLI options output for Stars script. 2023-05-01 14:13:37 -07:00
plugins Rename BackendTask.Custom.get -> BackendTask.Custom.run. 2023-01-17 07:14:03 -08:00
review Ignore error. 2023-01-17 17:21:39 -08:00
src Simplify Scripts so that the entrypoint only requires elm-pages as a dependency. 2023-05-01 14:13:17 -07:00
tests Update some projects. 2023-04-19 10:49:48 -07:00
.all-contributorsrc docs: update .all-contributorsrc [skip ci] 2020-07-19 18:23:51 +00:00
.gitignore Add boilerplate for elm-codegen. 2022-09-12 10:16:00 -07:00
.gitmodules Add git submodule for vendoring elm-codegen. 2022-09-20 13:18:02 -07:00
.nvmrc Use newer node version. 2022-01-20 19:20:15 -08:00
.prettierrc Add prettier config. 2021-07-10 07:53:14 -07:00
CHANGELOG-ELM.md Update changelog. 2021-08-03 13:39:00 -07:00
CHANGELOG-NPM.md Update changelog. 2021-08-27 11:52:11 -07:00
CONTRIBUTING.md Add webpack performance profiling instructions 2020-08-18 14:41:26 -07:00
cypress.config.ts Remove empty cypress plugins config. 2023-01-24 16:15:13 -08:00
docs.json Update docs.json. 2023-04-17 12:50:43 -07:00
elm-tooling.json Update dependencies. 2022-11-15 16:40:02 -08:00
elm.json Bump Elm package. 2023-04-19 10:59:59 -07:00
jsconfig.json Set up proof of concept for webpack-free build. 2020-10-10 18:07:36 -07:00
LICENSE Add LICENSE file. 2019-09-20 13:58:20 -07:00
netlify.toml Update Netlify script. 2023-03-14 16:35:40 -07:00
package-lock.json 3.0.0-beta.34 2023-04-19 11:00:08 -07:00
package.json 3.0.0-beta.34 2023-04-19 11:00:08 -07:00
README.md Update versions and compatability key. 2023-04-19 11:00:46 -07:00
test.sh Update test script. 2023-03-24 12:10:41 -07:00
tsconfig.json Add tsconfig to try to fix cypress build error. 2023-01-24 16:08:09 -08:00
update-compatibility-keys.js Update versions and compatability key. 2023-04-19 11:00:46 -07:00

elm-pages Netlify Status Build Status npm Elm package

All Contributors

Deploy to Netlify

A statically typed site generator, written with pure Elm.

Getting Started Resources

Key features

SEO made easy

With elm-pages, SEO is as easy as calling a type-safe, high-level Elm API and passing in data from your content's metadata.

The metadata is just Elm data that you define however you want, using a Json Decoder to grab data out of your markdown frontmatter.

import MyMetadata exposing (MyMetadata)

head : BlogMetadata -> List (Head.Tag Pages.PathKey)
head meta =
  Seo.summaryLarge
    { canonicalUrlOverride = Nothing
    , siteName = "elm-pages"
    , image =
      { url = PagesNew.images.icon
      , alt = meta.description
      , dimensions = Nothing
      , mimeType = Nothing
      }
    , description = meta.description
    , locale = Nothing
    , title = meta.title
    }
    |> Seo.article
      { tags = []
      , section = Nothing
      , publishedTime = Just (Date.toIsoString meta.published)
      , modifiedTime = Nothing
      , expirationTime = Nothing
      }

Optimized for performance

elm-pages has a set of features built-in to make sure your page is blazing fast on any device.

  • Automatic page pre-rendering
  • Page content is split up per-page so page content downloads and parses just-in-time
  • Page pre-fetching on link hover

Try out elm-pages, open up Lighthouse, and see for yourself! Or check out https://elm-pages.com (find the source code in the examples/docs/ folder).

What's next?

Take a look at the current projects to see the current priorities!

https://github.com/dillonkearns/elm-pages/projects

Compatibility Key

You will see an error if the NPM and Elm package do not have a matching Compatibility Key. Usually it's best to upgrade to the latest version of both the Elm and NPM packages when you upgrade. However, in case you want to install versions that are behind the latest, the Compatibility Key is included here for reference.

Current Compatibility Key: 14.

Contributors

Thanks goes to these wonderful people (emoji key):


Daniel Marín

💻

Steven Vandevelde

💻

Johannes Maas

📓 💻

Wiktor Toporek

💻

Luke Westby

💻

This project follows the all-contributors specification. Contributions of any kind welcome!