-
Notifications
You must be signed in to change notification settings - Fork 161
Expand file tree
/
Copy pathfeatures.js
More file actions
117 lines (110 loc) · 5.08 KB
/
features.js
File metadata and controls
117 lines (110 loc) · 5.08 KB
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
import React from 'react';
import ImageBox from '../components/ImageBox';
const featuresList = [
<ImageBox image="gifs/versions.gif" title="Scala versions, dependencies and JVMs"
key="versions" projects="true">
<p>
Scala CLI is built on top of coursier
<br/>
This allow us to manage Scala versions, dependencies and JVMs so you can test your code in different environments by changing single option.
</p>
<p>
Scala CLI ships with all its dependencies
<br/>
No need to fluff with installing JVM or setting up PATH.
</p>
<p>
<i>Some additional setup may be required for <a href="/install#scala-js">JS</a> and <a href="/install#scala-native">Native</a></i>
</p>
</ImageBox>,
<ImageBox image="gifs/universal_tool.gif" title="Universal tool" key="universal"
projects="true">
<p>
If you want to use older <b>version of Scala</b> or
run your code in <b>JS</b> or <b>Native</b> environments we've got you covered.
<br/>
</p>
<p>Switching between platforms or Scala versions is as easy as changing a parameter.</p>
<p> <i>Some additional setup may be required for <a href="/install#scala-js">JS</a> and <a href="/install#scala-native">Native</a></i></p>
</ImageBox>,
<ImageBox
image="buildtools.png"
title="We do not call Scala CLI a build tool" key="buildtool" projects="true">
<p>
Scala CLI shares some similarities with build tools,
but doesn't aim at supporting multi-module projects,
nor to be extended via a task system known from sbt, mill or bazel.
</p>
<p>
Scala ecosystem has multiple amazing build tools, there is no need to create another multipurpose build tool.
</p>
</ImageBox>,
<ImageBox
image="gifs/complete-install.gif" title="Complete installation"
key="complete-install" education="true">
<p>
Scala CLI comes with batteries included. No additional installation is required, no more fluffing with setting up the correct Java version or <code>PATH</code>
</p>
<p>
Scala CLI manages JVMs, Scala and other used tools under the hood.
</p>
</ImageBox>,
<ImageBox
image="gifs/defaults.gif" title="Solid defaults"
key="defaults" education="true">
<p>
No additional configuration is needed to most Scala CLI commands.
</p>
<p>
Scala CLI is configured out of the box to use the latest stable versions and other commands such as formatter or compiler contain reasonable defaults.
</p>
</ImageBox>,
<ImageBox
image="gifs/learning_curve.gif" title="No learning curve"
key="curve" education="true">
<p>
Scala CLI does not use a complex configuration language, its options are simple and self-explanatory.
</p>
<p>
There are no big differences in running repl or .scala files so expanding the results of repl session into a small project does not require learning new concepts from Scala CLI perspective
</p>
</ImageBox>,
<ImageBox
image="gifs/powerful_scripts.gif" title="Scripts are as powerful as other programs" key="scripts-as-apps" scripting="true">
<p>
Scripts in Scala CLI can use dependencies and other features as standard Scala programs. Scala CLI is command-line first, giving access to all its features without the need for any configuration files or specific project structure.
</p>
</ImageBox>,
<ImageBox
image="gifs/embeddable_scripts.gif" title="Embeddable Scripts" key="embed-scripts" scripting="true">
<p>
Scala CLI can be set up in shebang lines, making your *.scala or *.sc (or even .java or .md!) files runnable.
</p>
<p>
Scala CLI supports piping inputs and is designed to be embeddable in other scripts, turning Scala into proper scripting language.
</p>
</ImageBox>,
// <ImageBox
// image="fast-scripts.svg" title="Fast Scripts" key="fast-scripts" scripting="true">
// <p>
// Scala CLI provides multiple ways to reduce the biggest problem of JVM-based scripting solutions: slow start time. Scala CLI aggressively caches inputs removing need for recompilations.
// </p>
// <p>
// Scripts can be packaged into the native applications (using e.g. Scala Native) for even faster cold startups.
// </p>
// </ImageBox>,
// Prototyping
<ImageBox
image="gifs/self-contained-examples.gif" title="Self-contained examples"
key="self-contained-examples" prototyping="true">
<p>
With Scala CLI, configuration can be included in source code so complex examples can be self-contained and shipped as e.g. gist. Moreover, Scala CLI can compile, run and test gists without any manual work!
</p>
<p>
Scala CLI is the perfect tool to submit and reproduce bugs.
</p>
</ImageBox>
]
export default function allImageBoxs() {
return featuresList
}