https://github.com/idorobots/fullstack-challenge-starter-scala
A starter project for fullstack challenges. Includes some basic FE-, BE- and ops-related groundwork for recruitment assignments.
https://github.com/idorobots/fullstack-challenge-starter-scala
devops docker fullstack-boilerplate scala typescript
Last synced: about 2 months ago
JSON representation
A starter project for fullstack challenges. Includes some basic FE-, BE- and ops-related groundwork for recruitment assignments.
- Host: GitHub
- URL: https://github.com/idorobots/fullstack-challenge-starter-scala
- Owner: Idorobots
- Created: 2018-01-22T01:17:20.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2021-01-12T18:56:33.000Z (over 5 years ago)
- Last Synced: 2025-02-13T06:18:18.378Z (over 1 year ago)
- Topics: devops, docker, fullstack-boilerplate, scala, typescript
- Language: JavaScript
- Homepage:
- Size: 46.9 KB
- Stars: 0
- Watchers: 3
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Fullstack Challenge
A full-stack-ish technical challenge for a company.
## Backend part
To run the included tests (hopefuly I wrote some ¯\\\_(ツ)\_/¯) run either of the following commands:
```
sbt clean-test
```
To build & package the project:
```
sbt clean-compile
sbt docker:publishLocal
```
Ensure that the Docker daemon is up an running in order to create an image. The image will be based on `openjdk:8` so it'll download a bit of crap on the first run. To then run the backend execute either command:
```
sbt run
docker run -p 8081:1234 -e REST_HOST=0.0.0.0 -e REST_PORT=1234 -e LOG_LEVEL=DEBUG fullstack-challenge-be:latest
```
## Frontend part
To run the tests:
```
npm run test # Runs the tests inside of Firefox & Chrome.
npm run test:ci # Runs tests inside of a headless browser.
npm run test:watch # Runs the tests in an interactive mode - suitable for development.
```
To build the project:
```
npm run build # Builds a debug version of the project.
npm run build:release # Builds a "release" "optimized" version of the project.
npm run build:watch # Rebuilds the project automatically on any source changes.
```
To package the project with Docker ensure that the Docker daemon is running and run:
```
npm run package
```
To run the project after building the image simply execute:
```
docker run -p 8080:80 -e BACKEND_URL="localhost:8081" fullstack-challenge-fe:latest
```
(Alternatively, you can start a static file server inside of the `dist` directory instead of building a Docker image for the frontend.)
Once everything is set up, you can browse `localhost:8080` for the challenge submition.