full-stack-zio
- TODO list - MongoDB
- Small Flappy Bird game with scoreboard - Postgres
The game is badly optimised because of not working directly with canvas. It is just my demo focusing on react with scalajs. - Auth example (register, singin, signout, secured endpoint) - Postgres
- API documentation - Swagger
- Small chat with websockets
- GraphQL example
https://full-stack-zio.herokuapp.com/
- scala
- ZIO
- cats-core
- http4s
- pureconfig
- circe
- swagger
- reactivemongo
- doobie
- flyway
- caliban
- scalajs
- slinky (react)
- diode
- bootstrap
- circe
- ???
- more?
sbt stage
docker-compose up -d web
- open
http://localhost:8080
in browser
sbt stage
- set
MONGO_URL_FULL_STACK_ZIO
env variable
example:MONGO_URL_FULL_STACK_ZIO=mongodb://test:test@localhost:27017/test
- set
DATABASE_URL_FULL_STACK_ZIO
env variable
example:DATABASE_URL_FULL_STACK_ZIO="jdbc:postgresql://localhost:5432/fullstackzio?user=test&password=test"
- run
./target/universal/stage/bin/app
- open
http://localhost:8080
in browser
-
docker
rundocker-compose up -d mongo postgres
-
other
setMONGO_URL_FULL_STACK_ZIO
env variable
example:MONGO_URL_FULL_STACK_ZIO=mongodb://test:test@localhost:27017/test
setDATABASE_URL_FULL_STACK_ZIO
env variable
example:DATABASE_URL_FULL_STACK_ZIO="jdbc:postgresql://localhost:5432/fullstackzio?user=test&password=test"
fastOptJS::webpack
~fastOptJS
open js/src/main/resources/index-dev.html
in browser
reStart
http://localhost:8080/
Run server normally reStart
.
Run js: fastOptJS::webpack
and fastOptJS
.
Open js/src/main/resources/index-dev.html
in browser.
When server changed run reStart
.
When js changed run fastOptJS
.