Skip to content

mjones129/themegen

Repository files navigation


ThemeGen

Bootstrap your next WordPress theme just by answering a few questions.


Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. How It Works
  4. Roadmap
  5. Contributing

About The Project

Product Screen Shot

This tool alows developers to quickly generate a WordPress theme and bootstrap a custom website by simply answering a few quick questions.

(back to top)

Built With

Node

NPM

(back to top)

Getting Started

This project is intended to help other WordPress developers who are comfortable building custom themes and plugins, working with NodeJS and NPM, as well as some basic command line skills. The idea is to simply run clone the repo and install the dependencies, execute the program in the terminal, and follow the question prompts.

Prerequisites

As mentioned above, this is a WordPress plugin that will depend on a few other things being in place. Here's a brief rundown of what's required:

  • WordPress version 6.3.1 or higher
  • PHP version 8.2 or higher
  • NodeJS version 18.18 or higher
  • Git

Installation

  1. Open a terminal window and navigate to the wordpress theme folder like so: cd wp-content/themes/.
  2. Clone this repository. git clone https://github.com/mjones129/themegen.git && cd themegen.
  3. Install deps by running npm install.
  4. Execute the ThemeGen file by running npm run themegen.
  5. Follow the prompts.

(back to top)

How It Works

A new WordPress theme will be generated in your directory and your selected plugins will be downloaded and installed automagically.

Made a mistake? Want to quickly delete all your files and run a create a new theme with different options? Simply run npm clearblocks. This will delete all the files that were created when generating a Blocks theme. There is currently no clearclassic option.

(back to top)

Roadmap

  • Add Classic Theme Support
  • Add Blocks Theme Support
  • Download and install a custom list of plugins in parallel
  • Add support for custtom colors defined during generation
  • Add basic theme template files for Blocks themes
  • Add basic theme template files for Classic themes

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request