Skip to content

decaporg/decap-website

Repository files navigation

Netlify Status

Decap CMS Website & Docs

This repository builds decapcms.org. If you'd like to propose changes to the site or docs, you'll find the source files in here.

🏗️ Migration to Hugo

October 2025: This site has been migrated from Gatsby to Hugo for improved performance and maintainability.

  • Production site: Built with Hugo (root directory)

Installing

You need Hugo installed on your machine: https://gohugo.io/getting-started/quick-start/

This repository is set up to be developed with Visual Studio Code editor. Please install reccommended extensions listed in extensions.json

Use npm install to install project dependencies before running local development commands.

If this is your first time running the project, run

npx husky init

When you have that run one of these commands for local dev server:

hugo server or npm run dev

and open your local site on http://localhost:1313/

Development

We use BEM naming convention for CSS class names.

We follow the standard Javascript style.

Linters

There are 2 linters currently configured in the npm scripts:

Linter Configuration Files

  • stylelint.config.js - Stylelint configuration using ES modules
  • eslint.config.js - ESLint configuration using ES modules

Running Linters

# Run all linters
npm run lint

# Run individual linters
npx stylelint "**/*.scss"
npx eslint .

Auto-fixing

Linters will automatically fix issues when possible:

  • VS Code: Auto-fixes on save (if recommended extensions are installed)
  • Command line: Use --fix flag with eslint and stylelint
  • Pre-commit hook: Automatically runs lint-staged which fixes staged files

Pre-commit Hook

A pre-commit git hook is configured using Husky and lint-staged. It:

  • Runs linters only on staged files for better performance
  • Auto-fixes issues when possible
  • Prevents commits if there are unfixable errors

The hook configuration is in .husky/pre-commit and runs npx lint-staged, which uses the lint-staged configuration in package.json.

Built With

Content Management

Decap CMS admin is available at /admin/ when the local server is running.

Local CMS workflow

hugo server
# Open http://localhost:1313/admin/

# Optional local backend mode
npx decap-server

Dependencies

Last updated: July 2025: all dependencies are on their latest versions.

Key development dependencies:

  • ESLint 9.13.0 with neostandard configuration
  • Stylelint 16.10.0 with SCSS support
  • HTMLHint 1.1.4
  • Husky 9.1.6 for Git hooks
  • lint-staged 16.1.2 for pre-commit linting
  • PostCSS 8.5.6 with PurgeCSS and Autoprefixer

The project uses ES modules ("type": "module") for modern JavaScript configuration files.

About

Source of Decap website and docs

Topics

Resources

Stars

Watchers

Forks

Contributors