My personal blog written mostly in Scala and Java.
Trying finally tagless
with extensive effects
.
- version:
0.4.2
Scala3
the programming languageJava
the programming language for better performenceJVM
the runtimesbt
the build toolcats
andcats-effect
for corescala.js
andscalatags
for front endcirce
for Json processinghttp4s
,doobie
andquill
for back end
- Please refer to the configuration file
- Please refer to the Skeleton guide
- The Skeleton online repl! You can try Skeleton directly on web page! Check Skeleton notebook
- Please refer to the Development log
The HTTP server is modeled as a simple function:
Request[F] => OptionT[F, Response[F]]
where F
is the computation effect.
All trait are parameterized with computation effects (e.g. F[_]
).
One can easily extend more implementations of
the program without changing any existed code.
Using The ReaderT pattern
.
Just given
the static blog configuration, then everything done!
given blog.Configuration = Configuration.staticBlog
given blog.Configuration = Configuration.onlineBlog
cd <this folder>
sbt
compile
server/run
- Go to http://localhost:8080/
cd <this folder>
sbt
compile
skeleton/run register <skeleton script file path> <new blog title>