static void Main(string[] args)
    {
        var routes = new List <Route>()
        {
            new Route()
            {
                Name     = "Home Directory",
                Method   = SimpleHttpServer.Enums.RequestMethod.GET,
                UrlRegex = "^/home$",
                Callable = (request) =>
                {
                    return(new HttpResponse()
                    {
                        StatusCode = SimpleHttpServer.Enums.ResponseStatusCode.Ok,
                        ContentAsUTF8 = File.ReadAllText("../../content/home.html")
                    });
                }
            },
            // - Add New Page

            new Route()
            {
                Name     = "About Directory",
                Method   = SimpleHttpServer.Enums.RequestMethod.GET,
                UrlRegex = "^/about$",
                Callable = (request) =>
                {
                    return(new HttpResponse()
                    {
                        StatusCode = SimpleHttpServer.Enums.ResponseStatusCode.Ok,
                        ContentAsUTF8 = File.ReadAllText("../../content/about.html")
                    });
                }
            },
            new Route()
            {
                Name     = "About CSS",
                Method   = SimpleHttpServer.Enums.RequestMethod.GET,
                UrlRegex = "^/content/css/about.css$",
                Callable = (request) =>
                {
                    var response = new HttpResponse()
                    {
                        StatusCode    = SimpleHttpServer.Enums.ResponseStatusCode.Ok,
                        ContentAsUTF8 = File.ReadAllText("../../content/css/about.css")
                    };
                    response.Header.ContentType = "text/css";
                    return(response);
                }
            },

            new Route()
            {
                Name     = "Products Directory",
                Method   = SimpleHttpServer.Enums.RequestMethod.GET,
                UrlRegex = "^/Products",
                Callable = (request) =>
                {
                    return(new HttpResponse()
                    {
                        StatusCode = SimpleHttpServer.Enums.ResponseStatusCode.Ok,
                        ContentAsUTF8 = PageLoader.GetProductsPage(request.Content)
                                        //  ContentAsUTF8 = File.ReadAllText("../../content/Products.html")
                    });
                }
            },
            new Route()
            {
                Name     = "Products Directory",
                Method   = SimpleHttpServer.Enums.RequestMethod.POST,
                UrlRegex = "^/Products",
                Callable = (request) =>
                {
                    return(new HttpResponse()
                    {
                        StatusCode = SimpleHttpServer.Enums.ResponseStatusCode.Ok,
                        ContentAsUTF8 = PageLoader.GetProductsPage(request.Content)
                                        //  ContentAsUTF8 = File.ReadAllText("../../content/Products.html")
                    });
                }
            },
            new Route()
            {
                Name     = "Products CSS",
                Method   = SimpleHttpServer.Enums.RequestMethod.GET,
                UrlRegex = "^/content/css/Products.css$",
                Callable = (request) =>
                {
                    var response = new HttpResponse()
                    {
                        StatusCode    = SimpleHttpServer.Enums.ResponseStatusCode.Ok,
                        ContentAsUTF8 = File.ReadAllText("../../content/css/Products.css")
                    };
                    response.Header.ContentType = "text/css";
                    return(response);
                }
            },

            new Route()
            {
                Name     = "Contacts Directory",
                Method   = SimpleHttpServer.Enums.RequestMethod.GET,
                UrlRegex = "^/Contacts",
                Callable = (request) =>
                {
                    return(new HttpResponse()
                    {
                        StatusCode = SimpleHttpServer.Enums.ResponseStatusCode.Ok,
                        ContentAsUTF8 = File.ReadAllText("../../content/Contacts.html")
                    });
                }
            },
            new Route()
            {
                Name     = "Contacts Directory",
                Method   = SimpleHttpServer.Enums.RequestMethod.POST,
                UrlRegex = "^/Contacts",
                Callable = (request) =>
                {
                    return(new HttpResponse()
                    {
                        StatusCode = SimpleHttpServer.Enums.ResponseStatusCode.Ok,
                        ContentAsUTF8 = File.ReadAllText("../../content/Contacts.html")
                    });
                }
            },
            new Route()
            {
                Name     = "Contacs CSS",
                Method   = SimpleHttpServer.Enums.RequestMethod.GET,
                UrlRegex = "^/content/css/contacts.css$",
                Callable = (request) =>
                {
                    var response = new HttpResponse()
                    {
                        StatusCode    = SimpleHttpServer.Enums.ResponseStatusCode.Ok,
                        ContentAsUTF8 = File.ReadAllText("../../content/css/contacts.css")
                    };
                    response.Header.ContentType = "text/css";
                    return(response);
                }
            },



            //END

            new Route()
            {
                Name     = "Carousel CSS",
                Method   = SimpleHttpServer.Enums.RequestMethod.GET,
                UrlRegex = "^/content/css/carousel.css$",
                Callable = (request) =>
                {
                    var response = new HttpResponse()
                    {
                        StatusCode    = SimpleHttpServer.Enums.ResponseStatusCode.Ok,
                        ContentAsUTF8 = File.ReadAllText("../../content/css/carousel.css")
                    };
                    response.Header.ContentType = "text/css";
                    return(response);
                }
            },
            new Route()
            {
                Name     = "Bootstrap JS",
                Method   = SimpleHttpServer.Enums.RequestMethod.GET,
                UrlRegex = "^/bootstrap/js/bootstrap.min.js$",
                Callable = (request) =>
                {
                    var response = new HttpResponse()
                    {
                        StatusCode    = SimpleHttpServer.Enums.ResponseStatusCode.Ok,
                        ContentAsUTF8 = File.ReadAllText("../../content/bootstrap/js/bootstrap.min.js")
                    };
                    response.Header.ContentType = "application/x-javascript";
                    return(response);
                }
            },
            //TODO Add route for bootstrap.min.css
            new Route()
            {
                Name     = "Bootstrap CSS",
                Method   = SimpleHttpServer.Enums.RequestMethod.GET,
                UrlRegex = "^/bootstrap/css/bootstrap.min.css$",
                Callable = (request) =>
                {
                    var response = new HttpResponse()
                    {
                        StatusCode    = SimpleHttpServer.Enums.ResponseStatusCode.Ok,
                        ContentAsUTF8 = File.ReadAllText("../../content/bootstrap/css/bootstrap.min.css")
                    };
                    response.Header.ContentType = "text/css";
                    return(response);
                }
            },
        };

        var httpServer = new HttpServer(8081, routes);

        httpServer.Listen();
    }