-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit dac6293
Showing
27 changed files
with
3,944 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
name: Publish Docker image | ||
on: | ||
push: | ||
branches: | ||
- "main" | ||
tags: | ||
- "v*" | ||
jobs: | ||
push_to_registry: | ||
name: Push Docker image to Docker Hub | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Check out the repo | ||
uses: actions/checkout@v2 | ||
- name: Compile frontend bundle | ||
working-directory: ./frontend | ||
run: | | ||
npm install | ||
npm run build | ||
- name: Docker meta | ||
id: meta | ||
uses: docker/metadata-action@v3 | ||
with: | ||
images: tpanum/hjem | ||
tags: | | ||
type=ref,event=branch | ||
type=semver,pattern={{version}} | ||
type=semver,pattern={{major}}.{{minor}} | ||
type=semver,pattern={{major}} | ||
- name: Login to DockerHub | ||
uses: docker/login-action@v1 | ||
with: | ||
username: ${{ secrets.DOCKER_USERNAME }} | ||
password: ${{ secrets.DOCKER_PASSWORD }} | ||
|
||
- name: Build and push | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
push: true | ||
tags: ${{ steps.meta.outputs.tags }} | ||
labels: ${{ steps.meta.outputs.labels }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
FROM golang:1.16 as builder | ||
RUN mkdir /build | ||
WORKDIR /build | ||
COPY *.go go.mod go.sum ./ | ||
COPY app app | ||
COPY frontend frontend | ||
RUN ls -lha /build | ||
WORKDIR /build/app | ||
RUN CGO_ENABLED=1 GOOS=linux go build -a -tags netgo -ldflags "-linkmode external -extldflags -static" -o hjem main.go | ||
|
||
FROM alpine:latest | ||
RUN apk --no-cache add ca-certificates | ||
WORKDIR / | ||
RUN mkdir app data | ||
WORKDIR /app | ||
COPY --from=builder /build/app/hjem /app | ||
|
||
ENTRYPOINT [ "./hjem"] | ||
|
||
CMD [ "-db-file" "/data/hjem.db" ] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
MIT License | ||
|
||
Copyright (c) 2021 Thomas Kobber Panum | ||
|
||
Permission is hereby granted, free of charge, to any person obtaining a copy | ||
of this software and associated documentation files (the "Software"), to deal | ||
in the Software without restriction, including without limitation the rights | ||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
copies of the Software, and to permit persons to whom the Software is | ||
furnished to do so, subject to the following conditions: | ||
|
||
The above copyright notice and this permission notice shall be included in all | ||
copies or substantial portions of the Software. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
SOFTWARE. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
# Hjem | ||
Dette værktøj er designet til at **støtte huskøbere** til at kunne danne sig et overblik **historiske købspriser for nærområdet** givet man har **udset sig en matrikel** (hus/lejlighed). | ||
|
||
Værktøjet er skabt pågrund at manglende indsigt for købere i boligmarkedet, som gør det svært at lave en rimelighedsbetragtning for udbudspriser uden at blive overfuset af en ejendomsmægler. | ||
|
||
![Eksempel for Østerbro 90, st. tv.](./example.png) | ||
|
||
## Anvendelse | ||
Den simplest måde at anvende værktøjet på (for de fleste) er nok ved brug af [Docker](https://en.wikipedia.org/wiki/Docker_(software)), det er så simpelt som at køre følgende kommando: | ||
|
||
``` shell | ||
docker run -p 8080:8080 tpanum/hjem | ||
``` | ||
|
||
Så er værktøjet tilgængeligt på addressen: `http://localhost:8080`. Hvis der ønsker adgang til sqlite databasen som indeholder rådata, kan den gøres tilgængelig ved at mounte `/data` mappen, e.g. tilføj argumentet `-v /data:$(pwd)/<din_mappe_her>`. Husk dog at rå data også er tilgængeligt gennem web interfacet som CSV. | ||
|
||
### Fra source | ||
Projektet kan også køres direkte fra source, men så skal følgende steps udføres: | ||
|
||
1) Byg frontend: `cd frontend && npm install && npm run build && cd ..` | ||
2) Kør webserver: `cd app && go run main.go` | ||
|
||
Bemærk dog at dette kræver Go (version `1.16+`) og at `npm` er installeret. | ||
|
||
## Analyserne | ||
Værktøjet udfører nogle projekteringer som er *meget simple*, og der en masse aspekter som kan have påvirket den nuværerende udbudspris som ikke afspejles ud fra projekteringerne. Disse aspekter omfatter blandt andet: | ||
|
||
**Aspekter som kan hæve prisen**: Tilbygning, renovering, omstrukturering af nærområdet, øget popularitet for området, øget efterspørgsel. | ||
|
||
**Aspekter som kan sænke prisen**: Faldet popularitet for området, højere udbud, ingen renovering. | ||
|
||
|
||
|
||
## Data | ||
De priser som vises i værktøjet, har følgende karakteristika: | ||
|
||
- Der vises kun priser af samme typer af matrikler, som den søgte. *Det er kun huspriser som anvendes når der søges på en matrikel som er et hus*. | ||
- Priser som vises er kun dem som betegnes som *almindelig fritsalg*. | ||
- Priser er for nærområdet fra den søgte matrikel (radius fra matrikel), og er ikke påvirket af postnumre. | ||
- Som standard, filtreres indhentede priser som ligger langt fra normal området. *Denne filtrering kan dog fjernes*. | ||
|
||
## Det med småt | ||
Værktøjer indsamler kun data fra offentligt tilgængelige kilder, men af juridiske hensyn fraskriver mig et hvert ansvaret for de opslag værktøjet skulle udføre under sin kørsel. |
Oops, something went wrong.