feat: project structure
This commit is contained in:
parent
a942723186
commit
8c9893846c
2 changed files with 22 additions and 5 deletions
10
README.md
10
README.md
|
@ -10,18 +10,20 @@ This project is far from being ready to use so for now these also include planne
|
|||
- [ ] CSR support
|
||||
- [ ] Hydration
|
||||
- [ ] router
|
||||
- [ ] RPC integration or server functions
|
||||
- [ ] ReScala reactive backend
|
||||
- [ ] zio server integration
|
||||
|
||||
### TODO
|
||||
|
||||
- [ ] Full type safety, eliminate ? as generic param and asInstanceOf where possible
|
||||
- [ ] Type safety, eliminate ? as generic param and asInstanceOf where possible
|
||||
- [ ] AirStream reactive backend
|
||||
- [ ] other server integrations
|
||||
|
||||
## Packages
|
||||
|
||||
- sfs - different renderers (String, dom, hydration) and reactivity bindings
|
||||
- dom - shared jvm/js html builder which includes: tags, attributes, props, svg utils
|
||||
- possible to use from other libraries which need a js+jvm html/dom builder
|
||||
- dom - shared jvm/js html builder which includes: tags, attributes, props, svg, utils
|
||||
- possible to use from other libraries which need a js+jvm html/dom builder
|
||||
- router - implements a universal router for ssr and csr/hydration
|
||||
- reactive/* - various reactive backends
|
||||
- integrations/* - various server integrations
|
17
build.sbt
17
build.sbt
|
@ -1,4 +1,4 @@
|
|||
ThisBuild / scalaVersion := "3.5.0"
|
||||
ThisBuild / scalaVersion := "3.5.1"
|
||||
ThisBuild / versionScheme := Some("semver-spec")
|
||||
|
||||
ThisBuild / publishMavenStyle := true
|
||||
|
@ -58,6 +58,14 @@ lazy val sfs = crossProject(JSPlatform, JVMPlatform)
|
|||
)
|
||||
.dependsOn(dom)
|
||||
|
||||
lazy val sfsRouter = crossProject(JSPlatform, JVMPlatform)
|
||||
.crossType(CrossType.Pure)
|
||||
.in(file("./router"))
|
||||
.settings(
|
||||
name := "sfs-router",
|
||||
version := "0.1.0-alpha"
|
||||
)
|
||||
|
||||
lazy val sfsReScala = crossProject(JSPlatform, JVMPlatform)
|
||||
.crossType(CrossType.Pure)
|
||||
.in(file("./reactive/rescala"))
|
||||
|
@ -65,3 +73,10 @@ lazy val sfsReScala = crossProject(JSPlatform, JVMPlatform)
|
|||
name := "sfs-rescala",
|
||||
version := "0.1.0-alpha"
|
||||
)
|
||||
|
||||
lazy val sfsZio = project
|
||||
.in(file("./integrations/zio"))
|
||||
.settings(
|
||||
name := "sfs-zio",
|
||||
version := "0.1.0-alpha"
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue