Skip to content
/ base-camp Public
forked from suomato/base-camp

Awesome WordPress starter theme for developers based on modern web technologies.

License

Notifications You must be signed in to change notification settings

mlq/base-camp

 
 

Repository files navigation

Dependency Status Dependency Status Dependency Status License

About Base Camp

Awesome WordPress starter theme for developers based on modern web technologies. Base Camp 1.0.0 is available.

Features

  • Bulma (Responsive CSS framework based on Flexbox)
  • Timber
    • Twig Template Engine
    • Cleaner and better code
    • Separates the logic from presentation
  • Webpack
    • Sass / Scss for stylesheets (Minimize in production)
    • ES6 for Javascript (Minimize in production)
    • Automatic Cache Busting
    • Split javascript code to two chunks, app.js and vendor.js
    • Vuejs for boosting frontend development
    • BrowserSync for synchronised browser testing
  • Luna (Command-line interface included with Base Camp)

Requirements

Installation

  • Go your themes folder and runcomposer create-project suomato/base-camp
  • cd base-camp
  • yarn or npm install
  • define your dev-server url to webpack.config.js file
  • yarn watch or npm run watch
  • Happy developing :)

Structure

base-camp/                                          # Theme root
├── app/                                            # Theme logic
│   ├── config/                                     # Theme config
│   │   ├── wp/                                     # WordPress specific config
│   │   │   ├── menus.php                           # Register here WordPress navigation menus
│   │   │   ├── scripts-and-styles.php              # Register here WordPress scripts and styles
│   │   │   ├── sidebars.php                        # Register here WordPress sidebars
│   │   │   └── theme-supports.php                  # Register here WordPress theme features
│   │   ├── autoload.php                            # Includes all config files (DON'T REMOVE THIS)
│   │   └── timber.php                              # Timber specific config
│   ├── timber-extends/                             # Extended Timber Classes
│   │   └── BaseCampSite.php                        # Extended TimberSite Class
│   ├── helpers.php                                 # Common helper functions
├── resources/                                      # Theme assets and views
│   ├── assets/                                     # Front-end assets
│   │   ├── js/                                     # Javascripts
│   │   │   └── components/                         # Vue Components
│   │   ├── sass/                                   # Styles
│   │   │   └── components/                         # Partials
│   ├── languages/                                  # Language features
│   │   ├── base-camp.pot                           # Template for translation
│   │   └── messages.php                            # Language strings
│   ├── views/                                      # Theme Twig files
│   │   ├── components/                             # Partials
│   │   ├── footer/                                 # Theme footer templates
│   │   └── header/                                 # Theme header templates

Luna (Command-line interface)

Make Custom Post Type

This Command helps you to create a Custom Post Type very fast.

php luna make:custom-post-type {name}

The argument is singular form. if noun have irregular plural which do not behave in standard way(singular+s), exception can be defined by plural option e.g.

php luna make:custom-post-type person --plural=people

The new file is created to /app/config/wp/custom-post-types/{name}.php

Make Route

This Command helps you to create a route for WordPress API clearer and faster way.

php luna make:route {name}

The new file is created to /app/config/wp/routes/{name}.php. The created file comes with the well documented boilerplate.

About

Awesome WordPress starter theme for developers based on modern web technologies.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HTML 41.6%
  • PHP 38.2%
  • CSS 10.4%
  • JavaScript 8.9%
  • Vue 0.9%