-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdewdrop.nimble
More file actions
64 lines (47 loc) · 1.4 KB
/
dewdrop.nimble
File metadata and controls
64 lines (47 loc) · 1.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# Package
version = "0.1.0"
author = "nepeckman"
description = "A serving file editor"
license = "AGPL-3.0-or-later"
srcDir = "src"
bin = @["dewdrop"]
# Dependencies
requires "nim >= 0.19.9"
requires "jester 0.4.1"
requires "cligen 0.9.18"
requires "karax 1.0.0"
let parcelProd = "./node_modules/.bin/parcel build src/client/index.html --no-source-maps -d build/client --public-url ./client"
let parcelDev = "./node_modules/.bin/parcel watch src/client/index.html --no-source-maps -d build/client --public-url ./client"
proc folderSetup() =
mkdir("./build")
mkdir("./build/client")
mkdir("./build/server")
exec "chmod o+r ./build/client"
proc devClient() =
folderSetup()
exec parcelDev
proc devServer() =
folderSetup()
exec "nimble c -o:build/server/dew src/dewdrop.nim"
proc prodClient() =
exec "rm -rf ./build"
folderSetup()
exec parcelProd
proc prodServer() =
exec "nimble c -o:build/server/dew -d:release src/dewdrop.nim"
task devClient, "Builds client code":
devClient()
task devServer, "Builds the server":
devServer()
task dev, "Builds the project":
devServer()
devClient()
task prodServer, "Builds the project":
prodServer()
task prod, "Builds the project":
prodClient()
prodServer()
task clean, "Remove build folder":
exec "rm -rf ./build"
task run, "Run dewdrop":
exec "./build/server/dew testfiles/test.js testfiles/test.yaml"