Skip to content

Commit bbbf97a

Browse files
committed
feat: add default readme for the generated project
1 parent 8d48622 commit bbbf97a

File tree

1 file changed

+68
-0
lines changed

1 file changed

+68
-0
lines changed

src/main/g8/README.md

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# ✨ $name$
2+
3+
[![License](https://img.shields.io/github/license/$organization$/$name;format="lower,snake"$?style=flat-square)](/LICENSE)
4+
5+
[![GitHub Repo stars](https://img.shields.io/github/stars/$organization$/$name;format="lower,snake"$?style=flat-square)](https://github.com/$organization$/$name;format="lower,snake"$/stargazers)
6+
7+
[![Continuous Integration status](https://img.shields.io/github/actions/workflow/status/$organization$/$name;format="lower,snake"$/ci.yml?style=flat-square)](https://github.com/$organization$/$name;format="lower,snake"$/actions/workflows/ci.yml)
8+
9+
$description$
10+
11+
## 🚀 Environment setup
12+
13+
You only need the common tooling used for developing Scala applications:
14+
15+
- [JDK](https://www.oracle.com/java/technologies/downloads/)
16+
- [SBT](https://www.scala-sbt.org/download)
17+
18+
<details>
19+
<summary>Installing instructions for macOS with SDKMAN!</summary>
20+
21+
If you use macOS, we would recommend using SDKMAN! to manage different JDK versions and tooling:
22+
23+
1. [Install SDKMAN with homebrew](https://github.com/sdkman/homebrew-tap?tab=readme-ov-file#installation)
24+
2. Install the JDK you prefer. If you ask us, we will opt for:
25+
1. [Check the latest Java LTS JDK version](https://endoflife.date/oracle-jdk)
26+
2. Check the latest Zulu distribution version for that LTS with:
27+
```shell
28+
sdk list java
29+
```
30+
3. Install it:
31+
```shell
32+
sdk install java XX.YY.ZZ-zulu
33+
```
34+
3. Install the latest SBT:
35+
```shell
36+
sdk install sbt
37+
```
38+
</details>
39+
40+
## ✅ Tests
41+
42+
Just run:
43+
44+
```shell
45+
sbt test
46+
```
47+
48+
There is also the `sbt t` alias 😊
49+
50+
## 🤽‍ Pre-push Git hook
51+
52+
There's one Git hook included. It's inside the `doc/hooks` folder, and it will run the `prep` SBT task before pushing to any remote.
53+
54+
This `prep` task is intended to run all the checks you consider before pushing.
55+
At this very moment, it tries to compile and check the code style rules with ScalaFmt.
56+
57+
You can define what this task does by modifying the `prep` task in the `build.sbt` file.
58+
We like the approach of just having to run 1 single SBT task instead of multiple tasks because it's more efficient (the hook doesn't have to create multiple SBT sessions), and also because this way we can control the pre push tasks with the SBT alias defined at the `build.sbt` without altering the hooks.
59+
60+
If you want to install this hook, just `cd doc/hooks` and run `./install-hooks.sh`.
61+
62+
## ⚖️ License
63+
64+
See [`LICENSE`](LICENSE).
65+
66+
## 🤔 About
67+
68+
Project developed by $organization$ and bootstrapped with the [Codely Scala Basic Skeleton (powered by Giter 8)](https://github.com/CodelyTV/scala-basic-skeleton.g8).

0 commit comments

Comments
 (0)