:::::::: ::: :::::::::::: :::::::: :::::::: ::: ::: ::::::::
:+: :+::+: :+::+: :+::+: :+::+: :+::+: :+::+: :+:
+:+ +:+ +:++:+ +:++:+ +:+ +:++:+ +:+ +:+
+#+ +#+ +:++#++:++#: +#++:++#+++#+ +:++#+ +:+ +#+
+#+ +#+ +#++#+ +#+ +#++#+ +#+ +#+ +#+ +#+
#+# #+##+# #+##+# #+##+# #+##+# #+# #+#+#+# #+#
######## ######## ### ### ######## ######## ### ##########
This is a next generation of my previous Computer components web-application. This one is consists of two separated parts: the back-end and the front-end. The back-end is written in Kotlin language using the Ktor framework which is used for developing server applications. The front-end is written in Dart language, and it uses the Flutter framework. Flutter is a very powerful framework for developing multi-platform applications. In this project it's basically used for creating UI.
- Native dark theme
- PC configurator
- Catalogue browser
- Configuration saver and price totalizer
- Database administration
- Logging in, out and registration
- User sessions via encrypted cookies
- Order history tracking
- Server files viewing, uploading and deleting
The front-end part can be build with this command:
flutter build web --web-renderer canvaskit --base-href / --dart2js-optimization O4
Generated files must be placed into the src/main/resources/static
folder.
The back-end part can be built using this command:
gradlew buildFatJar
Gradle will create two jar files. To be able running this app in the Docker-container
the cursov_back-all.jar
must be placed in the same folder where the docker-compose.yml
and the Dockerfile
are.
This application requires Docker and docker-compose to run. App uses port 8080 and 5432.
This command will build and run both the server and the database containers:
docker-compose run --build
after these procedures the application will be available at:
http://localhost:8080
in any browser, if the launch fails
first time restart the container, this happens because there's no
existing docker volume of the database, which is created on the
first launch. To stop the app just send the interruption signal by
holding Ctrl and pressing C, execute this command to
remove its containers:
docker-compose down