How to provide content type in module for Drupal 8?
For a module name my_module and a content type called awesome_page, the directory structure would look like:


my_module/

my_module.info.yml
config/install/

node.type.awesome_page.yml




And the file contents would be:

my_module.info.yml:

name: Awesome page content
type: module
description: 'Add awesome content type.'
core: 8.x
dependencies:
  - node


node.type.awesome_page.yml:

type: awesome_page
name: 'Awesome page'
description: '&lt;em&gt;Awesome&lt;/em&gt; pages are a little better than other pages.'
help: ''
new_revision: false
display_submitted: true
preview_mode: 1
status: true
langcode: en


For several other examples, find all modules in core that provide new content types: find . -iname "node.type*"