Trying to create a block plugin module I am trying to write a custom block module in Drupal 8 that will allow me to place this block into my pages using the block layout screen.

I'm very new to Drupal, so this is very much a "hello world" project (initially) to figure out how this works.  To this end, I have been following Youtube video instructions as well as reading through whatever documentation I can find on Internet and also a couple of books, but to no avail [yet].

What I have done is creating a walker directory in the modules folder, where I have created the Walker.info.yml file, whose content is the following.

name: Walker
description: A filewalker
core: 8.x
package: Custom
type: module


In the same directory, I have created the Walker.module file.

/**
 * @file
 * Code for the walker module.
 */


I have then created the module/walker/src/Plugin/Block/ directory and the WalkerBlock.php file with the following content.

/**
 * @file
 * Code for the walker block.
 */

namespace Drupal\walker\Plugin\Block;

use Drupal\Core\Block\BlockBase;

/**
 * Provides a walker block
 * 
 * @Block(
 *   id = "walker",
 *   admin_label = @Translation("The walker block"),
 *   category = @Translation("Blocks")
 * )
 */

class WalkerBlock extends BlockBase {
  public function build() {
    return array('#markup' =&gt; 'Walker block');
  }
}


If I run the command "find . -type f | grep Walker" from my root Drupal directory, I get the following output.

./modules/Walker/Walker.module
./modules/Walker/src/Plugin/Block/WalkerBlock.php
./modules/Walker/Walker.info.yml


Yet, though the documentation and videos I have read suggest that this should be all I require, the Walker block does not appear in the block layout screen as an option that I can place in one of the block regions. 

Can anyone see what I'm doing wrong?

I cleared the cache from /admin/config/development/performance.
Ok can you go to drupal8/admin/modules 

and see :



Your: 


walker.info.yml is correct 
your Walker.module id fine (however i would use (walker as the dir and walker.module aka non caps)
your block looks fine 


Thinking Rename all to 
./modules/walker/walker.module
./modules/walker/src/Plugin/Block/WalkerBlock.php
./modules/walker/walker.info.yml

as could be Name space issue as "Drupal\walker\Plugin\Block" vs "Drupal\Walker\Plugin\Block" ?

but really every thing looks fine
When you install the module you should be able to place the block in 
admin/structure/block