Current section
Files
Jump to
Current section
Files
doc/readme.html
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="x-ua-compatible" content="ie=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="generator" content="ExDoc v0.28.3"> <meta name="project" content="template_generator v0.1.0"> <title>Template Generator — template_generator v0.1.0</title> <link rel="stylesheet" href="dist/elixir-d5ff82e6b0f5651c0ac0.css" /> <script src="dist/sidebar_items-6bfb3178f9.js"></script> <script src="docs_config.js"></script> <script async src="dist/app-a088a6cc33ae3464193e.js"></script> </head> <body data-type="extras"> <script> try { var settings = JSON.parse(localStorage.getItem('ex_doc:settings') || '{}'); if (settings.theme === 'dark' || ((settings.theme === 'system' || settings.theme == null) && window.matchMedia('(prefers-color-scheme: dark)').matches) ) { document.body.classList.add('dark') } } catch (error) { } </script><div class="main"><section class="sidebar"> <button class="sidebar-button sidebar-toggle" aria-label="toggle sidebar"> <i class="ri-menu-line ri-lg" title="Collapse/expand sidebar"></i> </button> <form class="sidebar-search" action="search.html"> <button type="submit" class="search-button" aria-label="Submit Search"> <i class="ri-search-2-line" aria-hidden="true" title="Submit search"></i> </button> <button type="button" tabindex="-1" class="search-close-button" aria-label="Cancel Search"> <i class="ri-close-line ri-lg" aria-hidden="true" title="Cancel search"></i> </button> <label class="search-label"> <p class="sr-only">Search</p> <input name="q" type="text" class="search-input" placeholder="Search..." aria-label="Input your search terms" autocomplete="off" /> </label> </form> <div class="autocomplete"> <div class="autocomplete-results"> </div> </div> <div class="sidebar-header"> <div class="sidebar-projectDetails"> <a href="template_generator.html" class="sidebar-projectName" translate="no">template_generator </a> <strong class="sidebar-projectVersion" translate="no"> v0.1.0 </strong> </div> <ul class="sidebar-listNav"> <li><a id="extras-list-link" href="#full-list">Pages</a></li> <li><a id="modules-list-link" href="#full-list">Modules</a></li> <li><a id="tasks-list-link" href="#full-list"><span translate="no">Mix</span> Tasks</a></li> </ul> </div> <div class="gradient"></div> <ul id="full-list" class="sidebar-fullList"></ul></section><section class="content"> <div class="content-outer"> <div id="content" class="content-inner"><h1><button class="settings display-settings"> <i class="ri-settings-3-line"></i> <span class="sr-only">Settings</span></button> <a href="https://github.com/viniciuslcpereira97/template-generator/blob/main/README.md#L1" title="View Source" class="view-source" rel="help"> <i class="ri-code-s-slash-line" aria-hidden="true"></i> <span class="sr-only">View Source</span> </a> <span>Template Generator</span></h1><p>Elixir project templates generation.</p><h2 id="docs" class="section-heading"> <a href="#docs" class="hover-link"><i class="ri-link-m" aria-hidden="true"></i> <p class="sr-only">docs</p> </a> Docs</h2><ul><li><a href="https://github.com/viniciuslcpereira97/template-generator/blob/main/README_pt_BR.md">PTBR</a></li></ul><h2 id="installation" class="section-heading"> <a href="#installation" class="hover-link"><i class="ri-link-m" aria-hidden="true"></i> <p class="sr-only">installation</p> </a> Installation</h2><h3 id="github" class="section-heading"> <a href="#github" class="hover-link"><i class="ri-link-m" aria-hidden="true"></i> <p class="sr-only">github</p> </a> Github</h3><p><em>Latest</em></p><pre><code class="makeup sh" translate="no"><span class="">> mix archive.install github viniciuslcpereira97/template-generator</span></code></pre><p><em>Specific branch</em></p><pre><code class="makeup sh" translate="no"><span class="">> mix archive.install github viniciuslcpereira97/template-generator branch $BRANCH</span></code></pre><p><em>Specific version</em></p><pre><code class="makeup sh" translate="no"><span class="">> mix archive.install github viniciuslcpereira97/template-generator tag $RELEASE_TAG</span></code></pre><h3 id="hex" class="section-heading"> <a href="#hex" class="hover-link"><i class="ri-link-m" aria-hidden="true"></i> <p class="sr-only">hex</p> </a> Hex</h3><pre><code class="makeup sh" translate="no"><span class="">> mix archive.install hex template_generator</span></code></pre><h2 id="configure" class="section-heading"> <a href="#configure" class="hover-link"><i class="ri-link-m" aria-hidden="true"></i> <p class="sr-only">configure</p> </a> Configure</h2><h3 id="example-template-folder-structure" class="section-heading"> <a href="#example-template-folder-structure" class="hover-link"><i class="ri-link-m" aria-hidden="true"></i> <p class="sr-only">example-template-folder-structure</p> </a> Example template folder structure</h3><pre><code class="makeup elixir" translate="no"><span class="o">.</span><span class="w"></span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">example</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">schemas</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">example</span><span class="o">.</span><span class="n">ex</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">services</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">example</span><span class="o">.</span><span class="n">ex</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">user</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">user</span><span class="o">.</span><span class="n">ex</span></code></pre><p>Set your templates directory's path in your <code class="inline">config.exs</code>.</p><pre><code class="ex">config :generator, templates_dir: "./templates", templates: [ my_awesome_template: "example" ]</code></pre><p><code class="inline">templates_dir</code>: Directory with all available templates<code class="inline">templates</code>: the key is an alias for your template and the value is the template folder name found at your <code class="inline">templates_dir</code></p><h2 id="usage" class="section-heading"> <a href="#usage" class="hover-link"><i class="ri-link-m" aria-hidden="true"></i> <p class="sr-only">usage</p> </a> Usage</h2><p>To create a new project based on an template you should run the following command:</p><pre><code class="makeup sh" translate="no"><span class="">> mix generator.new ./apps/my-awesome-new-folder --template=my_awesome_template</span></code></pre><h2 id="results" class="section-heading"> <a href="#results" class="hover-link"><i class="ri-link-m" aria-hidden="true"></i> <p class="sr-only">results</p> </a> Results</h2><h3 id="project-folder-structure-before-running-the-task" class="section-heading"> <a href="#project-folder-structure-before-running-the-task" class="hover-link"><i class="ri-link-m" aria-hidden="true"></i> <p class="sr-only">project-folder-structure-before-running-the-task</p> </a> Project folder structure before running the task</h3><pre><code class="makeup elixir" translate="no"><span class="o">.</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">generator</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">mix</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">tasks</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">generator</span><span class="o">.</span><span class="n">new</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">path</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">adapters</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">git_resolver</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">json_resolver</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">local_resolver</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">path_creator</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">path_resolver</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template_directory</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template_file</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">logic</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">schemas</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template_directory</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template_file</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">paths</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">project</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">adapters</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">project</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">logic</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">schemas</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">project</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">projects</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">adapters</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">logic</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">schemas</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">templates</span><span class="o">.</span><span class="n">ex</span><span class="w"></span></code></pre><h3 id="project-folder-structure-after-running-the-task" class="section-heading"> <a href="#project-folder-structure-after-running-the-task" class="hover-link"><i class="ri-link-m" aria-hidden="true"></i> <p class="sr-only">project-folder-structure-after-running-the-task</p> </a> Project folder structure after running the task</h3><pre><code class="makeup elixir" translate="no"><span class="o">.</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">generator</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">mix</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">tasks</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">generator</span><span class="o">.</span><span class="n">new</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">my</span><span class="o">-</span><span class="n">awesome</span><span class="o">-</span><span class="n">new</span><span class="o">-</span><span class="n">folder</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">schemas</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">example</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">services</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">example</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">user</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">user</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">path</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">adapters</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">git_resolver</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">json_resolver</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">local_resolver</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">path_creator</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">path_resolver</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template_directory</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template_file</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">logic</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">schemas</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template_directory</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template_file</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">paths</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">project</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">adapters</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">project</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">logic</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">schemas</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">project</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">projects</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">adapters</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">├</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">logic</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">schemas</span><span class="w"></span><span class="err">│</span><span class="w"> </span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">template</span><span class="o">.</span><span class="n">ex</span><span class="w"></span><span class="err">└</span><span class="err">─</span><span class="err">─</span><span class="w"> </span><span class="n">templates</span><span class="o">.</span><span class="n">ex</span></code></pre><div class="bottom-actions"> <div class="bottom-actions-item"> <a href="api-reference.html" class="bottom-actions-button" rel="prev"> <span class="subheader"> ← Previous Page </span> <span class="title">API Reference </span> </a> </div> <div class="bottom-actions-item"> <a href="readme_pt_br.html" class="bottom-actions-button" rel="next"> <span class="subheader"> Next Page → </span> <span class="title">Template Generator </span> </a> </div></div> <footer class="footer"> <p> On Hex.pm: <span class="line"> <a href="https://hex.pm/packages/template_generator/0.1.0" class="line footer-hex-package">Package</a> <a href="https://preview.hex.pm/preview/template_generator/0.1.0" class="line">Preview</a> <a href="https://preview.hex.pm/preview/template_generator/0.1.0/show/README.md">(current file)</a> </span> <button class="line footer-button display-quick-switch"> Search </button> </p> <p> Built using <a href="https://github.com/elixir-lang/ex_doc" title="ExDoc" target="_blank" rel="help noopener" translate="no">ExDoc</a> (v0.28.3) for the <a href="https://elixir-lang.org" title="Elixir" target="_blank" translate="no">Elixir programming language</a> </p> </footer> </div> </div></section></div> </body></html>