blob: 631bc6b799f92103b2ec64c40e31fc41498166e3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# golings
[![build and test](https://github.com/mauricioabreu/golings/actions/workflows/test.yml/badge.svg)](https://github.com/mauricioabreu/golings/actions/workflows/test.yml)
![gopher](misc/gopher-dance.gif)
> rustlings but for golang this time
You may know [rustlings](https://github.com/rust-lang/rustlings), right? If you don't, please go ahead and check out.
`rustlings` is awesome. It is a CLI app designed to teach the awesome Rust programming language through exercises.
`golings` has the very same idea, but for the [Go programming language](https://go.dev/)
## Installing
First, you need to have `go` installed. You can install it by visiting the [Go downloads page](https://go.dev/dl/)
There are two ways to install
### go install
```sh
go install github.com/mauricioabreu/golings/golings@latest
```
### Binaries
Go to the [releases page](https://github.com/mauricioabreu/golings/releases) and choose the option that best fits your environment.
## Doing exercises
First, clone this repository
```sh
git clone git@github.com:mauricioabreu/golings.git
```
All the exercises can be found in the directory `golings/exercises/<topic>`.
If you want to run a single exercise:
```sh
golings run variables1
```
In case you are stuck and need a hint:
```sh
golings hint variables1
```
To list all exercise while checking your progress:
```sh
golings list
```
To compile and run all the exercises:
```sh
golings verify
```
## Contributing
See [CONTRIBUTING.md](./CONTRIBUTING.md)
## Learning resources
* [Golang official tutorial](https://go.dev/doc/tutorial/)
* [Go by example](https://gobyexample.com)
* [Aprenda Go](https://www.youtube.com/playlist?list=PLCKpcjBB_VlBsxJ9IseNxFllf-UFEXOdg)
|