Description
https://dev.to/sake_92/render-static-site-from-scala-code
sbt-hepek alternatives and similar packages
Based on the "Sbt plugins" category.
Alternatively, view sbt-hepek alternatives based on common mentions on social networks and blogs.
-
sbt-assembly
Deploy über-JARs. Restart processes. (port of codahale/assembly-sbt) -
sbt-dependency-graph
sbt plugin to create a dependency graph for your project -
sbt-jmh
"Trust no one, bench everything." - sbt plugin for JMH (Java Microbenchmark Harness) -
sbt-revolver
An SBT plugin for dangerously fast development turnaround in Scala -
sbt-updates
sbt plugin that can check Maven and Ivy repositories for dependency updates -
better-monadic-for
Desugaring scala `for` without implicit `withFilter`s -
sbt-microsites
An sbt plugin to create awesome microsites for your project -
sbt-mima-plugin
A tool for catching binary incompatibility in Scala -
sbt-ensime
Generates .ensime config files for SBT projects http://ensime.org/build_tools/sbt -
sbt-sonatype
A sbt plugin for publishing Scala/Java projects to the Maven central. -
sbt-ci-release
sbt plugin to automate Sonatype releases from GitHub Actions -
sbt-dependency-check
SBT Plugin for OWASP DependencyCheck. Monitor your dependencies and report if there are any publicly known vulnerabilities (e.g. CVEs). :rainbow: -
sbt-header
sbt-header is an sbt plugin for creating file headers, e.g. copyright headers -
sbt-play-scalajs
SBT plugin to use Scala.js along with any sbt-web server. -
sbt-unidoc
sbt plugin to create a unified Scaladoc or Javadoc API document across multiple subprojects. -
sbt-api-mappings
An Sbt plugin that fills apiMappings for common Scala libraries. -
sbt-sublime
An sbt plugin for generating Sublime Text projects with library dependencies sources -
sbt pom reader plugin
Translates xml -> awesome. Maven-ish support for sbt. -
sbt-scala-js-map
A Sbt plugin that configures source mapping for Scala.js projects hosted on Github -
sbt-versions
Plugin that checks for updated versions of your project's dependencies. -
sbt-pantarhei
sbt plugin building and publishing release notes from github pull requests -
sbt-classfinder
SBT plugin for retrieving runtime information about the classes and traits in a project
Clean code begins in your IDE with SonarLint
Do you think we are missing an alternative of sbt-hepek or a related project?
README
sbt-hepek
Welcome to sbt-hepek, an sbt plugin for rendering Scala object
s to files.
See also hepek, static content generator that builds upon this plugin.
Examples
Installing
Make sure you are using sbt 1.x!
Adding following line to the project/plugins.sbt
file, in your project:
addSbtPlugin("ba.sake" % "sbt-hepek" % "0.2.1")
and enable it in your build.sbt
:
enablePlugins(HepekPlugin)
// logLevel in hepek := Level.Debug // enable to see which objects are rendered
Using
Main task of sbt-hepek is called hepek
.
When executed, it will render all Scala object
s that extend Renderable
trait to respective files, relative to the hepekTarget
folder.
Example:
import java.nio.file.Paths
import ba.sake.hepek.core.Renderable
object RenderMe extends Renderable {
override def render =
"Some text..." // arbitrary Scala code
override def relPath =
Paths.get("renderme.txt")
}
Default value for hepekTarget
is hepekTarget := target.value / "web" / "public" / "main"
.
The good old target
folder.
When you run sbt hepek
task, you'll find the renderme.txt
file in the target/web/public/main
folder with contents you specified by the render
method.
About the name
A "hepek" in Bosnian language is a jargon for a thing/thingy/stuff...
It is used when we don't know the name of a thing: "Give me that ... hepek".
Also, it is used in the famous show called "Top lista nadrealista" as a name for an advanced device which calms down situations of various kinds.
Fun fact
I think that this is the first project that tried this approach, namely, using first-class Scala object
s for this kind of stuff.
Correct me if I'm wrong... _^
Contact
Author of the plugin is Sakib Hadžiavdić.
Twitter: @sake_92
Email: [email protected]
License
This code is open source software licensed under the Apache 2.0 License.
*Note that all licence references and agreements mentioned in the sbt-hepek README section above
are relevant to that project's source code only.