logo logo
Development: Build

localhost

After checking out the repository and setting up the .envrc a static build of Securepub to serve http://127.0.0.1:8000 and http://127.0.0.1:8001 is generated with

    % just build
cd work            && pnpm install
Scope: all 22 workspace projects
Done in 6.4s
cd work/vendor-j2e && pnpm compile-cli

> vendor-j2e@ compile-cli /private/tmp/Securepub/main/work/vendor-j2e
> ../elm/node_modules/.bin/elm make src/CommandLine.elm --output ./cli.js

Dependencies ready!
Compiling ...
Compiling (2)    CommandLine ───> ./cli.js
Success! Compiled 2 modules.

[ -e work/zola/static/_v1.2401_/jsp ] || just setup-jsp
just remove
work/venv/bin/python work/.sync.py --remove
rm -rf work/{auth,db,dbitems,dbmods,dbsources,dbviews,entries,main}/*.ts
rm -rf work/{progress,rcache,review-s,settings,sw-s,util,uw}/*.ts
rm -rf work/elm/src/*
rm -rf work/zola/content/*/*/*
rm -rf work/zola-s/content/*/*/*
rm -f work/elm/_v1.2401_elm.{added,js,temp.js}
rm -f work/zola/static/_v1.2401_/securepub.js
rm -f work/zola/static/_v1.2401_*.js
rm -f work/zola-s/static/_v1.2401_*.js
rm -rf local local-s sp.zip
rm -rf gl2401 gl2401-s
rm -rf public public-s
setting up venv
Requirement already satisfied: pip in ./venv/lib/python3.11/site-packages
Collecting pip
  Using cached pip-24.0-py3-none-any.whl (2.1 MB)
Installing collected packages: pip
  Attempting uninstall: pip
    Found existing installation: pip 22.3.1
    Uninstalling pip-22.3.1:
      Successfully uninstalled pip-22.3.1
Successfully installed pip-24.0
Collecting mergedeep
  Using cached mergedeep-1.3.4-py3-none-any.whl.metadata (4.3 kB)
Collecting pylint
  Using cached pylint-3.1.0-py3-none-any.whl.metadata (12 kB)
Collecting python-frontmatter
  Using cached python_frontmatter-1.1.0-py3-none-any.whl.metadata
Collecting sh
  Using cached sh-2.0.6-py3-none-any.whl.metadata (3.3 kB)
Collecting platformdirs>=2.2.0 (from pylint)
  Using cached platformdirs-4.2.0-py3-none-any.whl.metadata (11 kB)
Collecting astroid<=3.2.0-dev0,>=3.1.0 (from pylint)
  Using cached astroid-3.1.0-py3-none-any.whl.metadata (4.5 kB)
Collecting isort!=5.13.0,<6,>=4.2.5 (from pylint)
  Using cached isort-5.13.2-py3-none-any.whl.metadata (12 kB)
Collecting mccabe<0.8,>=0.6 (from pylint)
  Using cached mccabe-0.7.0-py2.py3-none-any.whl.metadata (5.0 kB)
Collecting tomlkit>=0.10.1 (from pylint)
  Using cached tomlkit-0.12.4-py3-none-any.whl.metadata (2.7 kB)
Collecting dill>=0.3.6 (from pylint)
  Using cached dill-0.3.8-py3-none-any.whl.metadata (10 kB)
Collecting PyYAML (from python-frontmatter)
  Using cached PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl.metadata
Using cached mergedeep-1.3.4-py3-none-any.whl (6.4 kB)
Using cached pylint-3.1.0-py3-none-any.whl (515 kB)
Using cached python_frontmatter-1.1.0-py3-none-any.whl (9.8 kB)
Using cached sh-2.0.6-py3-none-any.whl (38 kB)
Using cached astroid-3.1.0-py3-none-any.whl (275 kB)
Using cached dill-0.3.8-py3-none-any.whl (116 kB)
Using cached isort-5.13.2-py3-none-any.whl (92 kB)
Using cached mccabe-0.7.0-py2.py3-none-any.whl (7.3 kB)
Using cached platformdirs-4.2.0-py3-none-any.whl (17 kB)
Using cached tomlkit-0.12.4-py3-none-any.whl (37 kB)
Using cached PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl (187 kB)
Installing collected packages: tomlkit, sh, PyYAML, platformdirs, 
  mergedeep, mccabe, isort, dill, astroid, python-frontmatter, pylint
Successfully installed PyYAML-6.0.1 astroid-3.1.0 dill-0.3.8 
  isort-5.13.2 mccabe-0.7.0 mergedeep-1.3.4 platformdirs-4.2.0 
  pylint-3.1.0 python-frontmatter-1.1.0 sh-2.0.6 tomlkit-0.12.4

work/venv/bin/python3 work/.sync.py --force
Copying files
 00.test/_sync.conf:
 01.welcome/_sync.conf:
 02.how-it-works/_sync.conf:
 03.design/_sync.conf:
 04.development/_sync.conf:
 05.deployment/_sync.conf:
 06.about/_sync.conf:
 07.license/_sync.conf:
 10.create/_sync.conf:
 11.profile/_sync.conf:
 20.bundlelist/_sync.conf:
 21.bundle/_sync.conf:
 30.topiclist/_sync.conf:
 31.topic/_sync.conf:
 32.review/_sync.conf:
 40.memberlist/_sync.conf:
 41.member/_sync.conf:
 60.join/_sync.conf:
 61.signin/_sync.conf:
 elm/_sync.conf:
 ts/_sync.conf:
 workflow/_sync.conf:

cd work/elm && pnpm run build-elm # build _v1.2401_elm.js

> elm@ build-elm /private/tmp/Securepub/main/work/elm
>     ./_elm.sh build           # runs elm make

Dependencies ready!
Success! Compiled 161 modules.

    Bundle ───────┬──> _v1.2401_elm.temp.js
    BundleList ───┤
    Create ───────┤
    Join ─────────┤
    Member ───────┤
    MemberList ───┤
    Profile ──────┤
    SignIn ───────┤
    Test ─────────┤
    Topic ────────┤
    TopicList ────┘

cd work/main && pnpm run build-main-js # build _v1.2401_/securepub.js

> ts@ build-main-js /private/tmp/Securepub/main/work/main
> esbuild securepub.js --target=firefox78 --bundle
  --outfile=../zola/static/_v1.2401_/securepub.js

  ../zola/static/_v1.2401_/securepub.js  2.7kb

⚡ Done in 14ms
cd work/main && pnpm run build-main # build _v1.2401_main.js

> ts@ build-main /private/tmp/Securepub/main/work/main
>    pnpm run build-main-ts && pnpm run build-main-es


> ts@ build-main-ts /private/tmp/Securepub/main/work/main
> tsc --noEmit


> ts@ build-main-es /private/tmp/Securepub/main/work/main
> esbuild Main.ts --minify --target=firefox78 --bundle
  --outfile=../zola/static/_v1.2401_main.js


  ../zola/static/_v1.2401_main.js  1.1mb ⚠️

⚡ Done in 322ms
cd work/uw && pnpm run build-uw # build _v1.2401_uw.js

> uw@ build-uw /private/tmp/Securepub/main/work/uw
>    pnpm run build-uw-ts && pnpm run build-uw-es


> uw@ build-uw-ts /private/tmp/Securepub/main/work/uw
> tsc --noEmit


> uw@ build-uw-es /private/tmp/Securepub/main/work/uw
> esbuild uw.ts --bundle         --outfile=../zola/static/_v1.2401_uw.js


  ../zola/static/_v1.2401_uw.js  1011.1kb

⚡ Done in 125ms
cd work/zola && pnpm run build conf/local.toml # zola localhost:8000

> zola@ build /private/tmp/Securepub/main/work/zola
>    ./_zola.sh build "conf/local.toml"

Building site...
Checking all internal links with anchors.
> Successfully checked 1 internal link(s) with anchors.
-> Creating 39 pages (0 orphan) and 91 sections
Done in 223ms.

Prettier...
../../local/_v1.2401_/about/index.html../../local/_v1.2401_/about/index.
../../local/_v1.2401_/bundle/add/index.html../../local/_v1.2401_/bundle/
../../local/_v1.2401_/bundle/index.html../../local/_v1.2401_/bundle/inde
../../local/_v1.2401_/bundlelist/index.html../../local/_v1.2401_/bundlel
../../local/_v1.2401_/count.js../../local/_v1.2401_/count.js 37ms
../../local/_v1.2401_/create/have/index.html../../local/_v1.2401_/create
../../local/_v1.2401_/create/index.html../../local/_v1.2401_/create/inde
../../local/_v1.2401_/deployment/index.html../../local/_v1.2401_/deploym
../../local/_v1.2401_/design/database/BID-Data/index.html../../local/_v1
../../local/_v1.2401_/design/database/BID-Entries/index.html../../local/
../../local/_v1.2401_/design/database/Bundles/index.html../../local/_v1.
../../local/_v1.2401_/design/database/index.html../../local/_v1.2401_/de
../../local/_v1.2401_/design/database/Links/index.html../../local/_v1.24
../../local/_v1.2401_/design/database/Members/index.html../../local/_v1.
../../local/_v1.2401_/design/database/MTID-Activity/index.html../../loca
../../local/_v1.2401_/design/database/Notes/index.html../../local/_v1.24
../../local/_v1.2401_/design/database/TID-Topic/index.html../../local/_v
../../local/_v1.2401_/design/database/TID-Updated/index.html../../local/
../../local/_v1.2401_/design/database/ULID-Bundles/index.html../../local
../../local/_v1.2401_/design/database/ULID-Role/index.html../../local/_v
../../local/_v1.2401_/design/database/User/index.html../../local/_v1.240
../../local/_v1.2401_/design/decisions/index.html../../local/_v1.2401_/d
../../local/_v1.2401_/design/index.html../../local/_v1.2401_/design/inde
../../local/_v1.2401_/design/pages/index.html../../local/_v1.2401_/desig
../../local/_v1.2401_/design/requirements/index.html../../local/_v1.2401
../../local/_v1.2401_/design/sections/index.html../../local/_v1.2401_/de
../../local/_v1.2401_/development/build/index.html../../local/_v1.2401_/
../../local/_v1.2401_/development/index.html../../local/_v1.2401_/develo
../../local/_v1.2401_/development/interactive/index.html../../local/_v1.
../../local/_v1.2401_/development/setup/index.html../../local/_v1.2401_/
../../local/_v1.2401_/development/structure/index.html../../local/_v1.24
../../local/_v1.2401_/how-it-works/bundles/index.html../../local/_v1.240
../../local/_v1.2401_/how-it-works/engagements/index.html../../local/_v1
../../local/_v1.2401_/how-it-works/glossary/index.html../../local/_v1.24
../../local/_v1.2401_/how-it-works/hosts/index.html../../local/_v1.2401_
../../local/_v1.2401_/how-it-works/index.html../../local/_v1.2401_/how-i
../../local/_v1.2401_/how-it-works/members/index.html../../local/_v1.240
../../local/_v1.2401_/how-it-works/topics/index.html../../local/_v1.2401
../../local/_v1.2401_/how-it-works/userbase/appid/index.html../../local/
../../local/_v1.2401_/how-it-works/userbase/index.html../../local/_v1.24
../../local/_v1.2401_/join/index.html../../local/_v1.2401_/join/index.ht
../../local/_v1.2401_/license/browserfs/index.html../../local/_v1.2401_/
../../local/_v1.2401_/license/buffer/index.html../../local/_v1.2401_/lic
../../local/_v1.2401_/license/comlink/index.html../../local/_v1.2401_/li
../../local/_v1.2401_/license/console-log-html/index.html../../local/_v1
../../local/_v1.2401_/license/debug/index.html../../local/_v1.2401_/lice
../../local/_v1.2401_/license/dicebear/index.html../../local/_v1.2401_/l
../../local/_v1.2401_/license/effect-ts/index.html../../local/_v1.2401_/
../../local/_v1.2401_/license/id128/index.html../../local/_v1.2401_/lice
../../local/_v1.2401_/license/index.html../../local/_v1.2401_/license/in
../../local/_v1.2401_/license/ionicons/index.html../../local/_v1.2401_/l
../../local/_v1.2401_/license/itiriri/index.html../../local/_v1.2401_/li
../../local/_v1.2401_/license/javascript-playgrounds/index.html../../loc
../../local/_v1.2401_/license/jetbrains/index.html../../local/_v1.2401_/
../../local/_v1.2401_/license/json-to-elm/index.html../../local/_v1.2401
../../local/_v1.2401_/license/mime/index.html../../local/_v1.2401_/licen
../../local/_v1.2401_/license/smart-buffer/index.html../../local/_v1.240
../../local/_v1.2401_/license/stack-overflow/index.html../../local/_v1.2
../../local/_v1.2401_/license/ts-node/index.html../../local/_v1.2401_/li
../../local/_v1.2401_/license/tslib/index.html../../local/_v1.2401_/lice
../../local/_v1.2401_/license/ulid/index.html../../local/_v1.2401_/licen
../../local/_v1.2401_/license/userbase-com/index.html../../local/_v1.240
../../local/_v1.2401_/license/userbase/index.html../../local/_v1.2401_/l
../../local/_v1.2401_/license/uuid/index.html../../local/_v1.2401_/licen
../../local/_v1.2401_/license/zod/index.html../../local/_v1.2401_/licens
../../local/_v1.2401_/member/add/index.html../../local/_v1.2401_/member/
../../local/_v1.2401_/member/index.html../../local/_v1.2401_/member/inde
../../local/_v1.2401_/memberlist/index.html../../local/_v1.2401_/memberl
../../local/_v1.2401_/profile/add/index.html../../local/_v1.2401_/profil
../../local/_v1.2401_/profile/index.html../../local/_v1.2401_/profile/in
../../local/_v1.2401_/securepub.css../../local/_v1.2401_/securepub.css 2
../../local/_v1.2401_/signin/index.html../../local/_v1.2401_/signin/inde
../../local/_v1.2401_/test/index.html../../local/_v1.2401_/test/index.ht
../../local/_v1.2401_/topic/add/index.html../../local/_v1.2401_/topic/ad
../../local/_v1.2401_/topic/index.html../../local/_v1.2401_/topic/index.
../../local/_v1.2401_/topiclist/index.html../../local/_v1.2401_/topiclis
../../local/_v1.2401_/welcome/index.html../../local/_v1.2401_/welcome/in
../../local/404.html../../local/404.html 1ms
../../local/index.html../../local/index.html 1ms
../../local/sp/_v1.2401_/about/index.html../../local/sp/_v1.2401_/about/
../../local/sp/_v1.2401_/bundle/add/index.html../../local/sp/_v1.2401_/b
../../local/sp/_v1.2401_/bundle/index.html../../local/sp/_v1.2401_/bundl
../../local/sp/_v1.2401_/bundlelist/index.html../../local/sp/_v1.2401_/b
../../local/sp/_v1.2401_/create/have/index.html../../local/sp/_v1.2401_/
../../local/sp/_v1.2401_/create/index.html../../local/sp/_v1.2401_/creat
../../local/sp/_v1.2401_/deployment/index.html../../local/sp/_v1.2401_/d
../../local/sp/_v1.2401_/design/database/BID-Data/index.html../../local/
../../local/sp/_v1.2401_/design/database/BID-Entries/index.html../../loc
../../local/sp/_v1.2401_/design/database/Bundles/index.html../../local/s
../../local/sp/_v1.2401_/design/database/index.html../../local/sp/_v1.24
../../local/sp/_v1.2401_/design/database/Links/index.html../../local/sp/
../../local/sp/_v1.2401_/design/database/Members/index.html../../local/s
../../local/sp/_v1.2401_/design/database/MTID-Activity/index.html../../l
../../local/sp/_v1.2401_/design/database/Notes/index.html../../local/sp/
../../local/sp/_v1.2401_/design/database/TID-Topic/index.html../../local
../../local/sp/_v1.2401_/design/database/TID-Updated/index.html../../loc
../../local/sp/_v1.2401_/design/database/ULID-Bundles/index.html../../lo
../../local/sp/_v1.2401_/design/database/ULID-Role/index.html../../local
../../local/sp/_v1.2401_/design/database/User/index.html../../local/sp/_
../../local/sp/_v1.2401_/design/decisions/index.html../../local/sp/_v1.2
../../local/sp/_v1.2401_/design/index.html../../local/sp/_v1.2401_/desig
../../local/sp/_v1.2401_/design/pages/index.html../../local/sp/_v1.2401_
../../local/sp/_v1.2401_/design/requirements/index.html../../local/sp/_v
../../local/sp/_v1.2401_/design/sections/index.html../../local/sp/_v1.24
../../local/sp/_v1.2401_/development/index.html../../local/sp/_v1.2401_/
../../local/sp/_v1.2401_/how-it-works/bundles/index.html../../local/sp/_
../../local/sp/_v1.2401_/how-it-works/engagements/index.html../../local/
../../local/sp/_v1.2401_/how-it-works/glossary/index.html../../local/sp/
../../local/sp/_v1.2401_/how-it-works/hosts/index.html../../local/sp/_v1
../../local/sp/_v1.2401_/how-it-works/index.html../../local/sp/_v1.2401_
../../local/sp/_v1.2401_/how-it-works/members/index.html../../local/sp/_
../../local/sp/_v1.2401_/how-it-works/topics/index.html../../local/sp/_v
../../local/sp/_v1.2401_/how-it-works/userbase/appid/index.html../../loc
../../local/sp/_v1.2401_/how-it-works/userbase/index.html../../local/sp/
../../local/sp/_v1.2401_/join/index.html../../local/sp/_v1.2401_/join/in
../../local/sp/_v1.2401_/license/index.html../../local/sp/_v1.2401_/lice
../../local/sp/_v1.2401_/member/add/index.html../../local/sp/_v1.2401_/m
../../local/sp/_v1.2401_/member/index.html../../local/sp/_v1.2401_/membe
../../local/sp/_v1.2401_/memberlist/index.html../../local/sp/_v1.2401_/m
../../local/sp/_v1.2401_/profile/add/index.html../../local/sp/_v1.2401_/
../../local/sp/_v1.2401_/profile/index.html../../local/sp/_v1.2401_/prof
../../local/sp/_v1.2401_/signin/index.html../../local/sp/_v1.2401_/signi
../../local/sp/_v1.2401_/test/index.html../../local/sp/_v1.2401_/test/in
../../local/sp/_v1.2401_/topic/add/index.html../../local/sp/_v1.2401_/to
../../local/sp/_v1.2401_/topic/index.html../../local/sp/_v1.2401_/topic/
../../local/sp/_v1.2401_/topiclist/index.html../../local/sp/_v1.2401_/to
../../local/sp/_v1.2401_/welcome/index.html../../local/sp/_v1.2401_/welc
../../local/sp/index.html../../local/sp/index.html 1ms
cd work/review-s && pnpm run build-review-s # build _v1.2401_review.js

> review-s@ build-review-s /private/tmp/Securepub/main/work/review-s
>  pnpm run build-review-ts && pnpm run build-review-es


> review-s@ build-review-ts /private/tmp/Securepub/main/work/review-s
> tsc --noEmit


> review-s@ build-review-es /private/tmp/Securepub/main/work/review-s
> esbuild Review.ts --minify --target=firefox78 --bundle
   --outfile=../zola-s/static/_v1.


  ../zola-s/static/_v1.2401_review.js  152.2kb

⚡ Done in 107ms
cd work/sw-s && pnpm run build-sw-s # build _v1.2401_sw.js
> sw-s@ build-sw-s /private/tmp/Securepub/main/work/sw-s
>    pnpm run build-sw-ts && pnpm run build-sw-es


> sw-s@ build-sw-ts /private/tmp/Securepub/main/work/sw-s
>   tsc --noEmit


> sw-s@ build-sw-es /private/tmp/Securepub/main/work/sw-s
>   esbuild sw.ts   --minify --target=firefox78 --bundle
    --outfile=../zola-s/static/_v1.


  ../zola-s/static/_v1.2401_sw.js  253.9kb

⚡ Done in 52ms
cd work/zola-s && pnpm run build conf/locals.toml # localhost:8001

> zola-s@ build /private/tmp/Securepub/main/work/zola-s
>    ./_zola-s.sh build "conf/locals.toml"

Building site...
Checking all internal links with anchors.
> Successfully checked 0 internal link(s) with anchors.
-> Creating 1 pages (0 orphan) and 2 sections
Done in 12ms.

Prettier...
../../local-s/_v1.2401_/review/frame/index.html../../local-s/_v1.2401_/r
../../local-s/_v1.2401_/review/index.html../../local-s/_v1.2401_/review/
../../local-s/_v1.2401_/securepub-review.css../../local-s/_v1.2401_/secu
../../local-s/404.html../../local-s/404.html 3ms
/tmp/Securepub/main/sp /tmp/Securepub/main
/tmp/Securepub/main

The 'build' target creates two directories: local/ and local-s/. The local.sh script starts a pair of python processes to serve them. You can run % ./local.sh to serve the static files locally. You can also serve the static preview locally with

    % just preview
./local.sh

    Securepub is a static site.  All state is stored in the browser
    and at Userbase.com so you can always safely kill this script
    with Ctrl-C and/or restart as necessary.

+ wait 80616 80617
serving ./local at port 8000
serving ./local-s at port 8001

gl2401.securepub.org

GitLab pages for the gl2401 and gl2401s forks of the r2401 respository serve the two origins Securepub needs. The .gitlab-ci.yml for the gl2401 fork builds the origin for the collaboration pages with

    % just gl2401

gl2401s.securepub.org

The .gitlab-ci.yml for the gl2401s fork builds the origin for the review content with

    % just gl2401s