README
GerminoCli
GerminoCli creates templates for Controllers, Factories and Views.
Install:
npm install germinocli
Run:
germinocli
How to use:
Now you can create:
1. Factories:
- Factory Name (Required)
- Attributes: separated by # (name:type:value). Value is optional. Data types allowed: String, Number, Boolean and Array. Example: firstName:string:Abdulkalam#age:number:70#hobbies:array:[satellite,literature]
- Dependencies: separated by commas. Example: $http,$q
1.1 Example:
prompt: Enter a name for your factory: Employee
prompt: Write properties for your factory separated by # (name:type:value) : name:string#price:number
prompt: Write dependencies for your factory separated by , : dependentService
This generate a .js named Employee.js:
(function() {
app.factory('Employee', Employee);
Employee.$inject = ['dependentService'];
function EmployeeFactory(Employee) {
var Employee = {
name: null,
salary: null,
};
return Employee;
}
})();
2. Controller
- Controller name (Required)
- Attributes: separated by # (name:type:value). Value is optional. Data types allowed: String, Number, Boolean and Array. Example: Example: firstName:string:Abdulkalam#age:number:70#hobbies:array:[satellite,literature].
- Dependencies: separated by commas. Example: $http,$q, ($scope already added).
2.1 Example
prompt: Enter a name for your controller: EmployeeController
prompt: Write properties for your controller separated by # (name:type:value) : name:string#price:number
prompt: Write dependencies for your controller separated by , ($scope already added): dependentService
This generate a .js:
//EmployeeController.js
(function() {
app.controller('EmployeeController', EmployeeController);
EmployeeController.$inject = ['AnotherService', '$scope'];
function EmployeeController(dependentService, $scope) {
$scope.name = null;
$scope.salary = null;
}
})();
3. Controller + View
- Controller name (Required)
- Attributes: separated by # (name:type:value). Value is optional. Data types allowed: String, Number, Boolean and Array. Example: Example: firstName:string:Abdulkalam#age:number:70#hobbies:array:[satellite,literature].
- Dependencies: separated by commas. Example: $http,$q, ($scope already added).
- Name of view (Required)
3.1 Example
prompt: Enter a name for your controller: EmployeeController
prompt: Write properties for your controller separated by # (name:type:value) : name:string#price:number
prompt: Write dependencies for your controller separated by , ($scope already added): dependentService
prompt: Name for view: : EmployeeView
This generate a .js and .html:
//EmployeeController.js
(function() {
app.controller('EmployeeController', EmployeeController);
EmployeeController.$inject = ['AnotherService', '$scope'];
function EmployeeController(dependentService, $scope) {
$scope.name = null;
$scope.salary = null;
}
})();
//EmployeeView.html
<input type="text" ng-model="name">
<input type="number" ng-model="salary">
4. API Services
- Service name
- Services url
4.1 Example
prompt: Entity name: employee
prompt: Url: http://www.server.com/api/employee
This generate a .js file:
//EmployeeService.js
(function() {
app.factory('EmployeeService', EmployeeService);
EmployeeService.$inject = ['$http', '$q'];
function EmployeeService($http, $q) {
var vm = {};
vm.getEmployee = function(id) {
var deferred = $q.defer();
var url = 'http://www.server.com/api/employee' + id;
$http.get(url)
.success(deferred.resolve)
.error(deferred.reject);
return deferred.promise;
};
vm.createEmployee = function(Employee) {
var deferred = $q.defer();
var url = 'http://www.server.com/api/employee
$http.post(url, Employee)
.success(deferred.resolve)
.error(deferred.reject);
return deferred.promise;
};
vm.updateEmployee = function(Employee) {
var deferred = $q.defer();
var url = 'http://www.server.com/api/employee';
$http.put(url, Employee)
.success(deferred.resolve)
.error(deferred.reject);
return deferred.promise;
};
vm.deleteEmployee = function(id) {
var deferred = $q.defer();
var url = 'http://www.server.com/api/employee + id;
$http.delete(url)
.success(deferred.resolve)
.error(deferred.reject);
return deferred.promise;
};
return vm;
}
})();