{"repo":"indoorvivants/smithy4s-fullstack-template","free":true,"listed":false,"github":"https://github.com/indoorvivants/smithy4s-fullstack-template","clone":"git clone https://github.com/indoorvivants/smithy4s-fullstack-template.git","description":"Full-stack web application with Scala 3, using Smithy4s","language":"Scala","stars":22,"topics":["flyio","playwright","postgresql","scala","scala3","scalajs","smithy","smithy4s","skunk"],"license":null,"category":"databases-storage","readme_excerpt":"Fullstack Scala application with Smithy4s This is a full-stack Scala application (simple key-value management store), made with the following excellent libraries and technologies: 1. Scala 3 2. Smithy4s and Smithy for the API and protocol definition between backend and frontend (and in tests) 3. Scala.js and Laminar for the SPA frontend 4. PostgreSQL and Skunk for database access 5. Weaver-Test for unit and integration testing 6. Playwright tests for frontend testing, using the dedicated Weaver integration The entire app is auto-deployed to Fly.io, you can see the live version here . This has moved to my own cluster, live version here . Fly.io specific code left in the repository, but the app won't be deployed there anymore. It started out as a trimmed down version of an app I've built in my 4-part blogpost series about full-stack Scala and Smithy4s. The blog series should answer a lot of the design questions you might have in much greater detail than the margins of this tome allow. What is it for? Starting a full stack application with Smithy4s is by far not the most lightweight approach, but if you are comfortable with some of the technologies involved, this puts your project immediately on a more solid footing than if you started small and re-wrote later (such rewrites tend to rarely happen, instead cruft is being added on and accumulated). By using Smithy as the contract between frontend and backend, we immediately turn backend into a solid API, and ensure that the intera","default_branch":null,"files":null,"tree":[],"storefront":"/r/indoorvivants","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/indoorvivants/smithy4s-fullstack-template/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}