Missing docstring for autoconfdb
.
autostart_app(path::String = "."; autostart::Bool = true) :: Nothing
If autostart
is true
, the newly generated Genie app will be automatically started.
Missing docstring for binfolderpath
.
controller_file_name(resource_name::Union{String,Symbol})
Computes the controller file name based on the resource name.
Missing docstring for db_intializer
.
db_support(app_path::String = ".") :: Nothing
Writes files used for interacting with the SearchLight ORM.
fullstack_app(app_name::String) :: Nothing
Writes the files necessary to create a full stack Genie app.
generate_project(name)
Generate the Project.toml
with a name and a uuid. If this file already exists, generate Project_sample.toml
as a reference instead.
install_app_dependencies(app_path::String = ".") :: Nothing
Installs the application's dependencies using Julia's Pkg
Missing docstring for install_db_dependencies
.
Missing docstring for install_searchlight_dependencies
.
microstack_app(app_name::String, app_path::String = ".") :: Nothing
Writes the file necessary to create a microstack app.
minimal(app_name::String, app_path::String = abspath(app_name), autostart::Bool = true) :: Nothing
Creates a minimal Genie app.
mvc_support(app_path::String = ".") :: Nothing
Writes the files used for rendering resources using the MVC stack and the Genie templating system.
newapp(app_name::String; autostart::Bool = true, fullstack::Bool = false, dbsupport::Bool = false, mvcsupport::Bool = false) :: Nothing
Scaffolds a new Genie app, setting up the file structure indicated by the various arguments.
Arguments
app_name::String
: the name of the app (can be the full path where the app should be created).autostart::Bool
: automatically start the app once the file structure is createdfullstack::Bool
: the type of app to be bootstrapped. The fullstack app includes MVC structure, DB connection code, and asset pipeline files.dbsupport::Bool
: bootstrap the files needed for DB connection setup via the SearchLight ORMmvcsupport::Bool
: adds the files used for HTML+Julia view templates rendering and working with resourcesdbadapter::Union{String,Symbol,Nothing} = nothing
: pass the SearchLight database adapter to be used by default
(one of dbadapter
is nothing
, an adapter will have to be selected interactivel at the REPL, during the app creation process.
Examples
julia> Genie.Generator.newapp("MyGenieApp")
2019-08-06 16:54:15:INFO:Main: Done! New app created at MyGenieApp
2019-08-06 16:54:15:DEBUG:Main: Changing active directory to MyGenieApp
2019-08-06 16:54:15:DEBUG:Main: Installing app dependencies
Resolving package versions...
Updating `~/Dropbox/Projects/GenieTests/MyGenieApp/Project.toml`
[c43c736e] + Genie v0.10.1
Updating `~/Dropbox/Projects/GenieTests/MyGenieApp/Manifest.toml`
2019-08-06 16:54:27:INFO:Main: Starting your brand new Genie app - hang tight!
_____ _
| __|___ ___|_|___
| | | -_| | | -_|
|_____|___|_|_|_|___|
┌ Info:
│ Starting Genie in >> DEV << mode
â””
[ Info: Logging to file at MyGenieApp/log/dev.log
[ Info: Ready!
2019-08-06 16:54:32:DEBUG:Main: Web Server starting at http://127.0.0.1:8000
2019-08-06 16:54:32:DEBUG:Main: Web Server running at http://127.0.0.1:8000
newapp_fullstack(name::String; autostart::Bool = true) :: Nothing
Template for scaffolding a new Genie app suitable for full stack web applications (includes MVC structure, DB support, and frontend asset pipeline).
Arguments
name::String
: the name of the appautostart::Bool
: automatically start the app once the file structure is createddbadapter::Union{String,Symbol,Nothing} = nothing
: pass the SearchLight database adapter to be used by default
(one of dbadapter
is nothing
, an adapter will have to be selected interactivel at the REPL, during the app creation process.
newapp_mvc(name::String; autostart::Bool = true) :: Nothing
Template for scaffolding a new Genie app suitable for MVC web applications (includes MVC structure and DB support).
Arguments
name::String
: the name of the appautostart::Bool
: automatically start the app once the file structure is createddbadapter::Union{String,Symbol,Nothing} = nothing
: pass the SearchLight database adapter to be used by default
(one of dbadapter
is nothing
, an adapter will have to be selected interactivel at the REPL, during the app creation process.
newapp_webservice(name::String; autostart::Bool = true, dbsupport::Bool = false) :: Nothing
Template for scaffolding a new Genie app suitable for nimble web services.
Arguments
name::String
: the name of the appautostart::Bool
: automatically start the app once the file structure is createddbsupport::Bool
: bootstrap the files needed for DB connection setup via the SearchLight ORMdbadapter::Union{String,Symbol,Nothing} = nothing
: pass the SearchLight database adapter to be used by default
(one of dbadapter
is nothing
, an adapter will have to be selected interactivel at the REPL, during the app creation process.
newcontroller(controller_name::Union{String,Symbol}) :: Nothing
Creates a new controller
file. If pluralize
is false
, the name of the controller is not automatically pluralized.
newcontroller(resource_name::String) :: Nothing
Generates a new Genie controller file and persists it to the resources folder.
newresource(resource_name::Union{String,Symbol}; pluralize::Bool = true, context::Union{Module,Nothing} = nothing) :: Nothing
Creates all the files associated with a new resource. If pluralize
is false
, the name of the resource is not automatically pluralized.
newresource(resource_name::String, config::Settings) :: Nothing
Generates all the files associated with a new resource and persists them to the resources folder.
newtask(task_name::Union{String,Symbol}) :: Nothing
Creates a new Genie Task
file.
Missing docstring for pkggenfile
.
Missing docstring for pkgproject
.
Missing docstring for post_create
.
remove_searchlight_initializer(app_path::String = ".") :: Nothing
Removes the SearchLight initializer file if it's unused
resource_does_not_exist(resource_path::String, file_name::String) :: Bool
Returns true
if the indicated resources does not exists - false otherwise.
scaffold(app_name::String, app_path::String = "") :: Nothing
Writes the file necessary to scaffold a minimal Genie app.
Missing docstring for set_files_mod
.
setup_resource_path(resource_name::String) :: String
Computes and creates the directories structure needed to persist a new resource.
setup_nix_bin_files(path::String = ".") :: Nothing
Creates the bin/server and bin/repl binaries for *nix systems
setup_windows_bin_files(path::String = ".") :: Nothing
Creates the bin/server and bin/repl binaries for Windows
Missing docstring for validname
.
write_app_custom_files(path::String, app_path::String) :: Nothing
Writes the Genie app main module file.
Missing docstring for write_db_config
.
write_resource_file(resource_path::String, file_name::String, resource_name::String) :: Bool
Generates all resource files and persists them to disk.
write_secrets_file(app_path=".")
Generates a valid config/secrets.jl
file with a random secret token.