2017-03-23 23:22:05 +01:00
# Examples
2017-03-13 14:16:12 +01:00
This folder provides easy to understand code snippets on how to get started with web development with the Go programming language using the [Iris ](https://github.com/kataras/iris ) web framework.
It doesn't contains "best ways" neither explains all its features. It's just a simple, practical cookbook for young Go developers!
## Table of Contents
2017-03-24 01:51:10 +01:00
<!-- when the new book will be ready I should add the link here -->
< img align = "right" src = "http://iris-go.com/assets/book/cover_4.jpg" width = "300" / >
2017-03-13 14:16:12 +01:00
2017-03-23 23:25:59 +01:00
* [Level: Beginner ](beginner )
* [Hello World ](beginner/hello-world/main.go )
* [Routes (using httprouter) ](beginner/routes-using-httprouter/main.go )
* [Routes (using gorillamux) ](beginner/routes-using-gorillamux/main.go )
2017-03-24 12:00:55 +01:00
* [Internal Application File Logger ](beginner/file-logger/main.go )
2017-03-23 23:25:59 +01:00
* [Write JSON ](beginner/write-json/main.go )
* [Read JSON ](beginner/read-json/main.go )
* [Read Form ](beginner/read-form/main.go )
* [Favicon ](beginner/favicon/main.go )
* [File Server ](beginner/file-server/main.go )
* [Send Files ](beginner/send-files/main.go )
2017-03-24 01:25:00 +01:00
* [Stream Writer ](beginner/stream-writer/main.go )
* [Listen UNIX Socket ](beginner/listen-unix/main.go )
* [Listen TLS ](beginner/listen-tls/main.go )
* [Listen Letsencrypt (Automatic Certifications) ](beginner/listen-letsencrypt/main.go )
2017-03-23 23:25:59 +01:00
* [Level: Intermediate ](intermediate )
* [Send An E-mail ](intermediate/e-mail/main.go )
* [Upload/Read Files ](intermediate/upload-files/main.go )
* [Request Logger ](intermediate/request-logger/main.go )
* [Profiling (pprof) ](intermediate/pprof/main.go )
* [Basic Authentication ](intermediate/basicauth/main.go )
* [HTTP Access Control ](intermediate/cors/main.go )
* [Cache Markdown ](intermediate/cache-markdown/main.go )
* [Localization and Internationalization ](intermediate/i18n/main.go )
* [Recovery ](intermediate/recover/main.go )
* [Graceful Shutdown ](intermediate/graceful-shutdown/main.go )
2017-03-24 01:25:00 +01:00
* [Custom TCP Listener ](intermediate/custom-listener/main.go )
* [Custom HTTP Server ](intermediate/custom-httpserver/main.go )
2017-03-23 23:25:59 +01:00
* [View Engine ](intermediate/view )
* [Overview ](intermediate/view/overview/main.go )
* [Embedding Templates Into Executable ](intermediate/embedding-templates-into-app )
* [Template HTML: Part Zero ](intermediate/view/template_html_0/main.go )
* [Template HTML: Part One ](intermediate/view/template_html_1/main.go )
* [Template HTML: Part Two ](intermediate/view/template_html_2/main.go )
* [Template HTML: Part Three ](intermediate/view/template_html_3/main.go )
* [Template HTML: Part Four ](intermediate/view/template_html_4/main.go )
* [Custom Renderer ](intermediate/view/custom-renderer/main.go )
* [Password Hashing ](intermediate/password-hashing/main.go )
* [Sessions ](intermediate/sessions )
* [Overview ](intermediate/sessions/overview/main.go )
* [Encoding & Decoding the Session ID: Secure Cookie ](intermediate/sessions/securecookie/main.go )
* [Standalone ](intermediate/sessions/standalone/main.go )
* [With A Back-End Database ](intermediate/sessions/database/main.go )
* [Flash Messages ](intermediate/flash-messages/main.go )
* [Websockets ](intermediate/websockets )
* [Ridiculous Simple ](intermediate/websockets/ridiculous-simple/main.go )
* [Overview ](intermediate/websockets/overview/main.go )
* [Connection List ](intermediate/websockets/connectionlist/main.go )
* [Native Messages ](intermediate/websockets/naive-messages/main.go )
* [Secure ](intermediate/websockets/secure/main.go )
* [Custom Go Client ](intermediate/websockets/custom-go-client/main.go )
* [Level: Advanced ](advanced )
2017-03-24 01:25:00 +01:00
* [Transactions ](advanced/transactions/main.go )
2017-03-23 23:25:59 +01:00
* [HTTP Testing ](advanced/httptest/main_test.go )
* [Watch & Compile Typescript source files ](advanced/typescript/main.go )
* [Cloud Editor ](advanced/cloud-editor/main.go )
* [Online Visitors ](advanced/online-visitors/main.go )
* [URL Shortener using BoltDB ](advanced/url-shortener/main.go )
2017-03-24 01:25:00 +01:00
* [Subdomains ](advanced/subdomains )
* [Single ](advanced/subdomains/single/main.go )
* [Multi ](advanced/subdomains/multi/main.go )
* [Wildcard ](advanced/subdomains/wildcard/main.go )
2017-03-23 23:22:05 +01:00
2017-03-24 01:51:10 +01:00
> Don't forget to take a quick look or add your own [examples in the community's repository](https://github.com/iris-contrib/examples)!
> Developers should read the official [documentation](https://godoc.org/gopkg.in/kataras/iris.v6), in depth, for better understanding.