## ascii-art-web ### Objectives Ascii-art-web consists in creating and running a server, in which it will be possible to use a web **GUI** (graphical user interface) version of your last project, [ascii-art](../ascii-art). Your webpage must allow the use of different [banners](../ascii-art). Implement the following HTTP endpoints: 1. GET `/`: Sends HTML response, the main page.\ 1.1. GET Tip: [go templates](https://golang.org/pkg/html/template/) to receive and display data from the server. 2. POST `/ascii-art`: that sends data to Go server (text and a banner)\ 2.1. POST Tip: use form and other types of [tags](https://developer.mozilla.org/en-US/docs/Web/HTML/Element) to make the post request.\ The main page must have: - text input - radio buttons, select object or anything else to switch between banners - button, which sends a POST request to '/ascii-art' and outputs the result on the page. ### HTTP status code Your endpoints must return appropriate HTTP status codes. - OK (200), if everything went without errors. - Not Found, if nothing is found, for example templates or banners. - Bad Request, for incorrect requests. - Internal Server Error, for unhandled errors. ## Markdown In the root project directory create a `README.MD` file with the following sections and contents: - Description - Authors - Usage: how to run - Implementation details: algorithm ### Instructions - HTTP server must be written in **Go**. - HTML templates must be in the project root directory _templates_. - The code must respect the [good practices](../good-practices/README.md). ### Allowed packages - Only the [standard go](https://golang.org/pkg/) packages are allowed ### Usage - [Here's an example](http://patorjk.com/software/taag/#p=display&f=Graffiti&t=Type%20Something%20).