Signal drop!
Relay (operand.online) is unreachable.
Usually, a dropped signal means an upgrade is happening. Hold on!
Sorry, no connección.
Hang in there while we get back on track
gram: op
Operand
Program
- You'll need Nix or NixOS.
- You'll need Postgres running locally in the background.
# open a nix shell:
sudo echo "extra-experimental-features = flakes nix-command" >> /etc/nix/nix.conf
nix develop
# run elixir & phoenix commands:
mix deps.get
mix setup
iex -S mix phx.server
- Go check
0.0.0.0:4000.
Upcoming Changes
- [ ] Rephrase codebase; replace Elixir, using more Gleam!
Made using Phoenix
Logged Changes:
2025-10-13
11:23:14 | f0b0b0d[clean] page names (for link peeks).2025-10-12
20:52:04 | 88fdede[gram] add a `clone` link on gram index page.2025-09-23
02:14:35 | d92995e[source][changelog] ignore labels.2025-09-04
11:02:34 | 7182d37[home][relay] drop caddy config zone.10:53:24 | ad60c26[mix] rearrange deploy commands.10:50:37 | 0401f17[msg] drop broken `n8n`-backed message forms.2025-09-03
19:49:29 | 0ba505a[addr] bind on 0.0.0.017:15:51 | 5c93dd2Revert "[nix] run on `aarch64`"2025-08-25
04:19:53 | e8518cd[yarn] all prod dependencies.04:01:03 | 9bda3f3[yarn] drop `postinstall`.03:52:13 | ed4c71e[yarn] encode binary path of `napi-postinstall`03:47:38 | e348511[nix] run on `aarch64`2025-08-17
10:27:52 | 165a190[repair] remaining `LiveView` `<.link>`s2025-08-10
21:59:33 | 1cd0d1b[clean] basic clean-up of dead code.21:48:14 | c1075e0[issue] drop unused `issue` module.21:35:05 | 921326b[queri] drop unused `queri` modules.21:18:34 | 0e6b055[arrange] make campaign make sense on mobile.16:30:24 | d7a93c2[campaign] send donorbox to margin.16:23:49 | 1302af5[campaign] add donorbox campaigns to home page.16:20:43 | da35807[campaign] add donorbox campaigns to chronicle pages.11:33:12 | 32e1325[repair] use normal `<a>` links.2025-08-08
11:16:26 | 794eb58[base] repair source code changelog summary.2025-08-07
20:41:58 | 3320d66Add missing `napi-postinstall` script.20:33:28 | 60b5080[yarn] add missing `napi-postinstall`20:27:01 | 9336b77[yarn] add perhaps-missing dependency.20:22:01 | eee2da5[ash][admin] display communiques.18:56:35 | 6b308b2display messages based on n8n submissions.16:09:00 | 05fb05aadd `Op.Communique.Message.channel`16:01:30 | 29961b8handle client dependencies properly.15:28:40 | 3014890change share menu icon.15:27:40 | a807659[ash] add `Op.Communique.Message`15:03:15 | 2ca35fa[igniter] obey spacing opinions.15:02:48 | c774517[igniter] add `ash_postgres` dependency.14:54:42 | bccb83b[mix] re-space `heroicons` dependency.14:48:12 | 81bea25[mix] depend on `call` package.2025-08-02
18:27:56 | 834a05fAdd `Source.Base`, scan code bases.2025-07-20
21:55:51 | 211233f[home][relay] apply `String.trim`21:53:21 | d6a09e2[home][relay] be less obnoxious, use language.21:40:07 | cd06c0a[source][changelog] group by day!18:02:05 | 3dc634b[ignore] `.call`18:01:53 | 20f637d[space] shrink chronicle width.2025-07-16
20:57:01 | de2ed1a[chronicle] clean up double-`main` labels.20:46:53 | 0792724[icon] load icons properly in vite.20:40:39 | 503ac2e[deps] add `live_debugger`.19:03:19 | cddfb09[color] dropdown menu surgery.14:08:43 | f567252[upgrade] `esbuild -> vite`; bump tailwind & daisy2025-07-10
18:51:15 | 426da83[source] repair nodes index.14:18:31 | 84c6ceb[splash] load splashes held in page codebase.14:17:52 | d409cce[domain] drop issues stream, & unused code.11:55:09 | c736493[dash] use `/dash/board` and `/dash/oban`.11:51:11 | 3df591c[oban] add migration.11:38:01 | 2e9e641[plug] properly secure dashboards.01:24:04 | 043c566enable dashboards behind `Plug.BasicAuth`01:06:25 | 2b06033[igniter] routes changes.01:05:57 | 219d59e[oban][igniter] `nd mix oban_web.install`01:02:22 | 0269b0c[oban][igniter] `nd mix oban.install`2025-07-09
23:53:27 | 907e19a[deps] add `oban`.23:49:48 | 33b88ea[sync] disable `phoenix_sync`.23:39:03 | 45ae601[deps] add `igniter` explicitly.23:36:31 | c2fdf47[deps] drop `mneme`, run `mix deps.update`2025-07-02
17:42:28 | e314fd2[home][relay] rename heading as "Pro `pose`".16:48:38 | b4f4388[relay] clean up caddy relay display rules.16:01:56 | 93b1a44Add [nu][relay] link on homepage.15:55:38 | 27473de[home][css] repair grid sidebar spacing.15:55:09 | 2a58ff7[relay] describe Caddy subdomain relays.2025-06-28
14:20:44 | 426ab9adrop more mermaid code.2025-06-27
15:45:31 | cdb20e6make pages readable on small screens.14:09:53 | 9e86750shrink chronicle horizontally.2025-06-26
15:34:09 | bffdc50simple homepage rearrangement.15:24:12 | 259109eAdd email on homepage.2025-06-17
17:33:13 | 1302806[js] drop remaining (bulky) mermaid dependency.2025-06-15
13:25:57 | fe9e97erender linebreaks on occasion.08:59:12 | bea67aerender video proporcional to page.2025-06-03
02:43:37 | e4344cc[render] html in pages is permissible.2025-05-30
14:33:54 | 3b1059b[rss] embed chronicle page body in rss.14:11:50 | 61b7d33[issue] drop unused links.13:55:16 | 8ed7828[rss] add RSS link in menu.13:52:01 | b0937a9[rss] Add a chronicle RSS page!2025-05-29
15:03:00 | b242563[gram][base] repair annoying error in clone recipe.15:02:45 | bb22146[domain] rephrase summary.2025-05-17
16:21:32 | 8ecb4f2[gram] repair cloning recipe on gram base page.2025-05-13
14:56:09 | 5949c83[source] compress homepage chronicle column.14:55:42 | 7978a17[source] drop changelog graph.2025-04-07
11:18:01 | 723a8f4[upgrade] run on modern-grade phoenix.09:09:55 | db6e9fc[phoenix_live_view@1.0] drop `input` components.2025-04-02
02:45:00 | 1408ecf[home] drop inaccessible subdomain programs.2025-03-26
20:14:43 | f427bb0`Source.Page`: repair address, log errors.2025-03-17
16:19:26 | 9b4e853[repair] gram index page, based on `Source.Node`.16:09:09 | 92af7cadrop `priv/page` symlink.2025-03-16
18:16:37 | 207fc31[repair] small changes across `Source.Page`.15:41:42 | c23fbabrender pages using `Source.Page` and `Source.Node`.2025-02-27
19:57:27 | 7be5b26drop `live_motion`, upgrade deps.18:56:00 | c1998c9[page][rearrange] rely on `Source.Page` module.2025-02-26
16:37:58 | c5e0ff2[dash] place dashboard on `/dash`.16:37:41 | fe92916[source] begin degrading `Base`, use `Source`.2025-02-12
08:08:38 | a89b673change "prod" -> :prod.08:08:12 | eab73d3minor page summary checque.2025-02-11
23:25:56 | 203103frephrase "Pro `gram`".12:41:37 | dfe7d08repair more errors, pages and labels.11:42:02 | fd89aecrepair menu bar share address, drop `msg` icon.10:55:10 | 6f26b31undo rendering errors caused by `MDEx` upgrade.10:52:11 | 815814f[nix] upgrade and rephrase `flake.nix`2025-02-04
19:08:45 | d198435[domain][index] rephrase.2025-01-16
12:58:00 | 4117503[prod] perhaps `live_reload` can manage `share/`.12:42:40 | a28ffb6minor css change.12:38:28 | 6daa199[share/issue] summarise, or render issue body.2025-01-12
10:55:57 | e4cde05Change error message.2025-01-11
12:42:35 | 32bb83f[gram][graph] long session, no luck aligning changes.10:52:50 | ea29ed1[gram][base] repair annoying error in clone recipe.10:50:07 | 2b4d6b1[gram][graph] begin codebase display using mermaid.21:10:23 | d56d9e1[gram] search among code page names.09:47:57 | 0e211d6share `paper.` subdomain, graphic design link.09:47:16 | b543b75splice `lib/gram.ex` and add a `Mirror` module.2025-01-09
20:58:42 | ac4a0ac[gram][base] minor changes in module.08:03:42 | 898b24e[press] combine common issue and page code.2025-01-01
15:19:09 | 87c6d7fdrop `<code>` in gram node links.13:00:00 | d88a151clean up gram summaries in a page preamble.2024-12-30
18:11:52 | a3a1823ignore `.gz`-compiled blobs.18:08:20 | 7dbbb90pro mise a calendar, bring back `msg.`17:29:53 | 2ebbaa3mark each code node in proper marks.10:13:22 | 472b2ebdrop issues; keep in share.2024-12-29
18:43:00 | bbddc5crearrange home page.17:48:19 | 2972af8Disqualify scrapers on `/gram/*/.git`01:16:24 | b63f2f6color gram changelog links.01:00:57 | 9bd8d1eDrop links in gram changelog hashes.2024-12-20
21:50:22 | 3cefb3e[gram][changes] properly break up composer / message.21:35:55 | da8f054Include `gnupg` as a signing check.13:11:07 | 8d40d10simplify css rules in gram base.12:47:39 | 6f5e259repair missing `@GRAM_BASE`12:30:20 | a21c7e0display change log on gram base page.2024-12-17
14:33:37 | 37fcb86[arrange] `/issue` -> `/share/issue`, same as pages.2024-12-05
13:43:35 | 2e0d02e[gram] display README on each gram index.13:42:41 | a839ab9[readme] rearrange, drop old guidance.13:42:23 | c1115b9[delayed] ignore compiled sideloaded code.2024-10-26
23:34:30 | 1328dc4Reapply colorscheme logic.2024-10-25
14:39:52 | 92c670fhomepage cleanup.2024-10-06
11:40:12 | cb842bbRearrange homepage, hide issues.11:15:53 | fb416d5cancel splashes using `#`.2024-09-02
18:35:40 | 284e389[deploy] Repair channel binding in prod.17:05:53 | 3084dc4Rearrange gram node display.17:03:45 | 730b958[gram] Repair node index.16:37:42 | 8afe322[/gram] Small issue reading bases.13:17:55 | 7c5d808Add lens shim.13:17:42 | c0dc087Re-lay homepage.13:16:07 | d7dcf2f[repair] heroicons11:56:58 | e535a98display grams by reading `.git/*`11:55:18 | edab685[mix] Use `ex_heroicons`, cleaner packaging.04:03:32 | 15f7d2abegin reading code bases under `/gram`.2024-08-29
13:17:18 | b454548[mix] replace `timex` using `tox`.13:00:03 | 5a3f751[mix] drop swoosh properly.12:55:54 | c9d58a0[nix] add `openssl`.12:48:35 | 6282d11[nix] use normal elixir.12:44:12 | 3870b86[mix] add `swoosh` back in.12:34:32 | 21dc34d[mix] update2024-08-28
10:41:33 | 8c24b18[splash] change hourly.10:14:31 | c9373ec[splash] Place splashes inside `./share`2024-08-25
14:55:46 | 246db04[splash] all on, plus console.12:29:27 | 43dceaa[splash] ganged.2024-08-24
16:43:56 | 4f46c99simple splash.2024-08-23
20:33:43 | 5ca8d00splash splash.15:06:29 | ff6e775[splash] eerie.15:06:06 | 18ef9c9Rearrange splashes inside code.11:01:07 | 55a6926grand splash.2024-08-20
00:37:10 | 36fc3b9Shrink issues sidebar.00:31:39 | 6a2631aRelay homepage.00:07:09 | 30c3846more splash.2024-08-19
18:18:41 | f6a734aAdd some opinions.2024-08-15
22:07:48 | 4687527Drop `asciinema-player` (minor repair)21:44:26 | 9e6663bDurable copy on home page.18:00:23 | 24374c4Link pages in a nearby share.17:54:20 | cf060b4nix upgrade.17:37:34 | 8523da3Repair codebase appearance and dimensions.2024-08-10
21:11:14 | 5b2059dBuild using `/assets/build.js`2024-08-07
23:30:17 | a352ce3[daily] [/home/calliope/base/code/operand/page] 2024-08-07 - menu-bar2024-07-01
15:44:26 | 3b53eddReshare! Small dependency changes.15:16:42 | b1b3d9aRepair addressing issues in `README.md`2024-06-23
16:04:51 | d6a8943Replace Cowboy, use Bandit.2024-06-21
22:16:08 | 10748adHope I can compile cowboy soon.21:10:16 | 61b5e38[operand][pain] cross-pollinación.21:00:42 | 0d867e4Add a `nushell/reedline` plea submission16:32:22 | 8f36ae9More upgrades.14:58:55 | 01a3c1aCowboy mucking.14:39:59 | b6d9494Upgrade cowboy, hope error disappears.13:19:41 | 72e539a`nix flake update`13:19:15 | fd37686Reload on issue changes.10:54:44 | 1cb3bd1Rephrase page address scheme.10:33:25 | 95fff40Include necessary `OpWeb.Course` module.10:16:42 | 3aeeeeaShare a couple issues; nushell and operand.2024-06-20
01:21:21 | 223e1adChange up address in disconneccion message.00:32:59 | 8089c12Drop nonresponding `labori.us` link.00:29:21 | 6787f1cAdd a mechanism designed around share issuances.2024-06-15
10:21:29 | c751bcdChange signal drop message.10:10:49 | 9f1b69fChange broken-signal message.10:07:09 | b6fa103Align chronicle pages in middle, discard sessions.07:35:53 | 8ce47ddBring back plausible using a memory of compilación.07:34:39 | 596497fBring back plausible using env var.07:22:38 | 321f6eeErase plausible inclusion link.01:56:01 | 2bdb229Disable `egit` dependency.01:38:43 | 403d6bcEnable phoenix using elixir releases.00:12:25 | 0fe99e5Include colorscheme in params.2024-06-14
05:23:32 | 9798daaRearrange a more linear domain index page.03:48:13 | b9238b9Add `egit` dependency.03:47:53 | 5fbe095Rearrange color schemes in domain menu.2024-05-12
16:22:35 | 3af4893add `session.place` usage numbers link.2024-05-10
00:54:17 | 9966d82repair broken code link in header.00:38:05 | 76dabdcAdd a docs compilación phase.2024-05-08
16:20:49 | 8e28de2Add `/gear`.16:20:18 | 2adb16frender page summary as `.md`2024-05-04
16:21:02 | 2ecff06Scroll in chronicle day by day.14:54:43 | ecf1d7fRename `ChronicleLive` -> `Chronicle`.11:57:36 | a8dd25fRender board decision around bank.05:10:09 | 9b318c1recognize "role=link".05:04:49 | c1d78bchide menu bar `<li/>` markers.05:03:15 | 8acf0b7Clean up days in each chronicle page.2024-05-02
19:15:10 | 9a7f1fcrebuild `/chronicle` pages.12:07:36 | 2d04861Enable hex `live_motion` across liveview pages.11:17:41 | 20d7294Add a calendar in our chronicle.2024-04-30
15:04:12 | 29e912fAdd an `/images/favicon.ico`2024-04-29
17:51:16 | 5ea2f03Older code, inside `play_test`.2024-04-21
14:40:25 | 4e8d2dbAdd `mneme` and quicken coding loop.2024-04-17
20:37:00 | cdbcab8Repair `/queri` addresses and specs.20:36:19 | 8526edaUse normal grid alignment.16:14:17 | 30e898cAdd `microvm` description in `flake.nix`.2024-03-23
23:05:16 | 9c29f30drop `luxury`, nonreadable.23:04:56 | 768c687Use `:3999` as a special channel.22:51:56 | 1a98d98Record sessions.17:36:32 | ffe65afUse "Operand Company" in page names.16:48:20 | d0e9a7adeploy mode changes.16:38:14 | 3e0994bUpgrade nixpacks packages.16:20:12 | 782e0b4Rehash all incorporación remarks, prepare signing.2024-03-08
05:40:40 | 2e2e3cdPrepare incorp submission.2024-03-07
18:38:33 | 7b9b889Rebase as `Op`, bring in `Press`.2024-03-04
08:36:18 | 05c9302Basic copy changes and cleanup.2024-02-17
13:20:38 | 0c6d8a2Use `nixpkgs-unstable`.03:02:06 | c605e69Deploy using nixpacks on dokku.2024-02-16
23:39:20 | d952365Add a background flash message on homepage.23:20:35 | ced28aaRearrange homepage and add map links.22:56:12 | f31dc52Add `hacdc.org` copy on homepage.22:15:45 | e9290feAdd a color chooser icon.22:04:30 | d00de26Rearrange colors and add social links.21:28:06 | 5808d36Add HacDC logo and name.2024-02-06
12:55:42 | ab3645f`mix phx.gen.live Base Queri queries # ...`12:32:13 | 0c96406Change placeholder color.08:23:07 | 5e5436dMake Phoenix homepage pop.2024-02-05
15:41:44 | d773ffcAdd color chooser on homepage.15:33:12 | be38ddf`g apply`: Rearrange colorscheme menu.15:29:18 | f19f01c`g apply`: Add colored link icons on all links.15:15:26 | 17c3c36`g apply`: Add basic color schemes.15:05:26 | 856a6c9Make README more specialized.15:02:15 | 926f720`g apply`: Apply basic DaisyUI themes.14:58:18 | ccea912`g apply`: Reorder dependencies.14:57:21 | f9f4979`nix develop --command bash -c 'mix phx.new hac'`14:55:21 | 1b387ecAdd `flake.lock`2024-02-01
17:10:54 | 74f78fe[base] `://hacdc.org`; `nix develop`
Code Pages:
- .formatter.exs
- .gitignore
- Procfile
- README.md
- app.json
- assets/build.js
- assets/css/app.css
- assets/css/header.css
- assets/css/page/home.css
- assets/js/app.js
- assets/package.json
- assets/public/cache_manifest.json
- assets/public/corp/2024-04-21.dlcp.png
- assets/public/corp/CP575Notice_1704499942839.pdf
- assets/public/corp/dlcp.CorpForProfitDomesticInitialFiling.pdf
- assets/public/corp/dlcp.cert.pdf
- assets/public/fonts/fa-solid-900.ttf
- assets/public/images/favicon.ico
- assets/public/images/logo.svg
- assets/public/images/screen.png
- assets/public/robots.txt
- assets/tailwind.config.js
- assets/vendor/topbar.js
- assets/vite.config.mjs
- assets/yarn.lock
- config/config.exs
- config/dev.exs
- config/prod.exs
- config/runtime.exs
- config/test.exs
- flake.lock
- flake.nix
- lib/compile.ex
- lib/op.ex
- lib/op/application.ex
- lib/op/communique.ex
- lib/op/communique/message.ex
- lib/op/mailer.ex
- lib/op/repo.ex
- lib/op_web.ex
- lib/op_web/components/core_components.ex
- lib/op_web/components/layouts.ex
- lib/op_web/components/layouts/app.html.heex
- lib/op_web/components/layouts/root.html.heex
- lib/op_web/controllers/error_html.ex
- lib/op_web/controllers/error_json.ex
- lib/op_web/controllers/rss_controller.ex
- lib/op_web/controllers/rss_xml.ex
- lib/op_web/controllers/rss_xml/index.xml.eex
- lib/op_web/course.ex
- lib/op_web/endpoint.ex
- lib/op_web/gettext.ex
- lib/op_web/live/chronicle/show.ex
- lib/op_web/live/chronicle/show.html.heex
- lib/op_web/live/domain/index.ex
- lib/op_web/live/domain/index.html.heex
- lib/op_web/live/gram/base.ex
- lib/op_web/live/gram/base.html.heex
- lib/op_web/live/gram/node.ex
- lib/op_web/live/gram/node.html.heex
- lib/op_web/mirror/base.ex
- lib/op_web/router.ex
- lib/op_web/telemetry.ex
- lib/render.ex
- lib/source.ex
- lib/source/base.ex
- lib/source/node.ex
- lib/source/page.ex
- lib/splash.ex
- mix.exs
- mix.lock
- nixpacks.toml
- priv/gettext/en/LC_MESSAGES/errors.po
- priv/gettext/errors.pot
- priv/repo/migrations/.formatter.exs
- priv/repo/migrations/20250710045841_add_oban.exs
- priv/repo/migrations/20250807185905_initialize_extensions_1.exs
- priv/repo/migrations/20250807191944_communique_messages.exs
- priv/repo/migrations/20250807200747_communique_message_channel.exs
- priv/repo/seeds.exs
- priv/resource_snapshots/repo/extensions.json
- priv/resource_snapshots/repo/messages/20250807191944.json
- priv/resource_snapshots/repo/messages/20250807200747.json
- priv/static/images/logo.svg
- test/op/base_test.exs
- test/op/play_test.exs
- test/op_web/controllers/error_html_test.exs
- test/op_web/controllers/error_json_test.exs
- test/op_web/controllers/page_controller_test.exs
- test/op_web/live/queri_live_test.exs
- test/support/conn_case.ex
- test/support/data_case.ex
- test/support/fixtures/base_fixtures.ex
- test/test_helper.exs