amosmos / laravel-cli-create-user by amosmos

An artisan command to create, list and remove users in a laravel application from the cli
10,151
17
3
Package Data
Maintainer Username: amosmos
Maintainer Contact: amos@boaideas.com (Amos Shacham)
Package Create Date: 2017-08-21
Package Last Update: 2022-11-10
Home Page:
Language: PHP
License: MIT
Last Refreshed: 2024-04-18 15:06:52
Package Statistics
Total Downloads: 10,151
Monthly Downloads: 37
Daily Downloads: 0
Total Stars: 17
Total Watchers: 3
Total Forks: 7
Total Open Issues: 1

Easily create, list and remove Laravel users with a CLI command

Latest Version on Packagist Software License StyleCI Total Downloads

Using this artisan command it's easy to create Laravel users from the CLI whenever you need them. If you want, it will even email the user their credentials.

The command will validate the user details using Laravel's regular validation engine (which means you can create your own rules). If you want, the command can create a random password for you.

We also added commands to list all existing users and to easily remove users.

Requirements

The package is based on the defaul User model that ships with Laravel, so it assumes you're using a model (you can name it anything you want) with name, email and password fields.

Installation

You can install the package via composer:

composer require boaideas/laravel-cli-create-user

If you're installing the package on Laravel 5.5 or higher, you're done (The package uses Laravel's auto package discovery).

If you're using Laravel 5.4 or less, add the BOAIdeas\CreateUser\CreateUserServiceProvider service provider to your providers array:

// config/app.php

'providers' => [
    ...
    BOAIdeas\CreateUser\CreateUserServiceProvider::class,
];

Usage

Create a new user

From your CLI execute:

php artisan user:create

You will be asked for the user's name, email and password, and then the user account will be created. If you choose, a random password will be created for you.

Input validation

Your input will be validated using Laravel's validation engine with Laravel's default user input rules (you can change the rules if you want).

Email user credentials

You will be asked if you want to send an email to the newly created user with their credentials. If you do, the command will send a regular Laravel notification to the user's email, so make sure you've sert your app's mail settings.

The notification is using the default APP_NAME, APP_URL, MAIL_FROM_ADDRESS and MAIL_FROM_NAME so make sure they're set correctly.

List all existing users

From your CLI execute:

php artisan user:list

You will be presented with a table of all existing users.

Remove a user (by ID)

From your CLI execute:

php artisan user:remove {user_id}

The command will confirm that you want to remove that user and will remove it.

Configuration

By default, the package assumes your User model is called User and validates your model input with the default rules that Laravel uses for users creation.

If you want to change any of these settings, you can publish the config file with:

php artisan vendor:publish --provider="BOAIdeas\CreateUser\CreateUserServiceProvider"

This is the content of the published config file:

// config/createuser.php

return [
    /*
    * The class name of the media model to be used.
    */
    'model' => 'App\User',

    /*
    * The validation rules to check for user model input.
    */
    'validation_rules' => [
    	'name' => 'string|max:255',
    	'email' => 'string|email|max:255|unique:users',
    	'password' => 'string|min:6',
    ],

];

Credits

Alternatives

License

The MIT License (MIT). Please see License File for more information.