mementomori 5d6bf1c5da first commit | %!s(int64=2) %!d(string=hai) anos | |
---|---|---|
gradle | %!s(int64=2) %!d(string=hai) anos | |
src | %!s(int64=2) %!d(string=hai) anos | |
webpack.config.d | %!s(int64=2) %!d(string=hai) anos | |
LICENSE | %!s(int64=2) %!d(string=hai) anos | |
Procfile | %!s(int64=2) %!d(string=hai) anos | |
README.md | %!s(int64=2) %!d(string=hai) anos | |
app.json | %!s(int64=2) %!d(string=hai) anos | |
build.gradle.kts | %!s(int64=2) %!d(string=hai) anos | |
gradle.properties | %!s(int64=2) %!d(string=hai) anos | |
gradlew | %!s(int64=2) %!d(string=hai) anos | |
gradlew.bat | %!s(int64=2) %!d(string=hai) anos | |
settings.gradle.kts | %!s(int64=2) %!d(string=hai) anos | |
system.properties | %!s(int64=2) %!d(string=hai) anos |
Приложение демонстрирующее работу с CRUD базы данных, аутентификацию и идентификацию новых пользователей, постраничное разделение приложения с помощью React Router и работу с паттернами проектирования веб-приложений. Демо приложения.
Пользовательский интерфейс написан с помощью библиотеки KVision и фреймворка Kotlin/JS.\ Серверная часть использует программный интерфейс KVision для работы с Spring Boot. Приложение написано на мультиплатформенной архитектуре с использованием разделяемого кода для пользовательского интерфейса и серверной части, при сборке проекта этот код будет автоматически скампилирован в JSON-RPC.\ Серверная часть приложения базируется на Kotlin coroutine с использованием Spring Webflux, работая полностью асинхронно. Приложение использует СУБД H2.
После сборки приложения с помощью системы сборки Gradle, необходимо воспользоваться следующими командами:
./gradlew backendRun
- запускает сервер Spring Boot, слушающий порт :8080
;./gradlew -t frontendRun
- запускает webpack сервер, слушающий порт :3000
.Приложение расположится по адресу: http://localhost:3000.
Команда ./gradlew jar
собирает JAR файл включающий в себя всё для работы серверной части и пользовательского интерфейса приложения в папке build/libs/omelet-1.0-SNAPSHOT.jar
.