Hello World!
Creating your first application can be a bit choicy because of the flexibility of the architectural logics which defines how pages should be rendered. Although we have 3 architectural logics which are standard, basic and index logics, on this page we are going to use the standard logic pattern to create our first application.

Adding a new webpage (or route)
We can easily add a new page (route) by running the following commands in the terminal
  php mi add:route "routeName"
                            
Now that we know the syntax, let's head on to add a new webpage called "home".
Adding webpage home
  php mi add:route Home
                              
The command above will create a new route "Home" in the windows/Routes directory. The file created will resemble the format below:
Home.php (windows/Routes)
  <?php
  
  namespace spoova\mi\windows\Routes\Home;
  
  use Window;
  
  class Home extends Window {
      
      public function __construct(){
  
          self::call($this,
              [
                  window(":") => 'home'
              ]
          );
  
      }
  
      public function home() {
  
          // self::load('home', fn() => compile() );
          
      }
  
      /**
        * Add name of routes
        *
        * @return array
        */
      public static function addRoutes(array $array = []) : array {
  
          return [
              // 'routeName' => 'routePath'
          ];
  
      }
  
  } 
                          
Assuming your project folder is named app, once the file above is generated, when you visit the url address http://localhost/app/home on your browser, you should see a blank page. The home() method above is called from the __construct() method using the shutter call() method. This will be discussed later in the course of this tutorial. However, since we know that the home() method is called, we can load our rex template files from the particular method called. To do this, let's create a new template file called "home" by running the command below:
console: add home.rex.php
  php mi add:rex home
                          
The command above will add the home.rex.php file into the windows/Rex directory. Once this file is added, we will add our first "hello world" text into the template file and load it from the root method. The final template and route file Home.php will look like the format below:
home.rex.php (windows/Rex)
  <!DOCTYPE html>
  <html lang="en">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Home</title>
  </head>
  <body>
    Hello World
  </body>
  </html>
                          
Home.php (windows/Routes)
  <?php
  
  namespace spoova\mi\windows\Routes\Home;
  
  use Window;
  
  class Home extends Window {
      
      public function __construct(){
  
          self::call($this,
              [
                  window(":") => 'home'
              ]
          );
  
      }
  
      function home() {
  
          self::load('home', fn() => compile() ); //template loaded
          
      }
  
      /**
        * Add name of routes
        *
        * @return array
        */
      public static function addRoutes(array $array = []) : array {
  
          return [
              // 'routeName' => 'routePath'
          ];
  
      }
  
  } 
                          
Once we visit the http://localhost/app/home on the browser, the text "Hello World" will be displayed.