2025-03-27 23:25:57 -08:00
2025-03-27 23:25:57 -08:00
2025-03-27 23:25:57 -08:00
2025-03-27 23:25:57 -08:00
2025-03-05 03:03:52 -08:00
2025-03-09 05:09:25 -07:00
2025-03-03 00:48:21 -08:00
2025-03-03 00:48:21 -08:00
2025-03-27 23:25:57 -08:00
2025-02-15 04:31:20 -08:00
2025-01-11 09:38:19 -08:00
2024-08-07 11:30:29 -08:00
2025-01-11 04:47:23 -08:00
2024-07-12 06:41:34 -08:00
2024-08-07 11:30:29 -08:00
2025-01-10 19:10:04 -08:00
2025-01-16 12:23:58 -08:00
2025-03-27 23:25:57 -08:00
2025-03-09 05:09:25 -07:00
2025-03-22 19:40:16 -08:00
2024-04-18 20:51:09 +00:00
2025-03-27 23:25:57 -08:00
2025-03-05 03:03:52 -08:00
2025-03-09 05:09:25 -07:00

futureporn.net

Tests Status Build Status Elixir Postgres Built with Devbox

Source Code for https://futureporn.net

See ./ARCHITECTURE.md for an overview of the infrastructure components.

Getting Started

The main gist is as follows.

  1. install docker wget -O- get.docker.com | bash

  2. Install devbox curl -fsSL https://get.jetify.com/devbox | bash

  3. Install development environment & packages using devbox.

    devbox install

  4. Run database and other accessories with docker compose up --watch

  5. In another terminal, run the phoenix "bright" app with devbox run bright:dev

  6. Visit http://localhost:4000

If all went well, editing source code will automatically affect the website running in your browser.

backup/restore dev database

@see https://stackoverflow.com/a/29913462/1004931

backup

Use devbox helper script

devbox run backup

restore

cat ./backups/your-backup.sql | docker exec -i postgres_db psql -U postgres

testing

there is some undesirable behavior when running tests because nektos/act mimicks github actions. we are banned from github so we aren't using that. instead, we use gitea act_runner. github actions Job runner runs on docker 'host' network. gitea act_runner runs on a custom named bridge network. e.g. GITEA-ACTIONS-TASK-974_WORKFLOW-ci_JOB-Tests-Checks-test_phoenix-network confusing, right? It totally is! when we are working with gitea act_runner, we can use dns names, e.g. test-db. when we are working with nektos/act, we must use the IP address of the service container. WTF there must be a better way

Languages
Rust 45.4%
Elixir 33%
Python 10.1%
HTML 3.1%
Shell 2.6%
Other 5.7%