ohmyxo

442a476 · gmorell · 2026-05-19 04:06

168 files +14540 -0

Files changed

added .dockerignore
+46 −0
@@ -0,0 +1,46 @@
1 +# This file excludes paths from the Docker build context.
2 +#
3 +# By default, Docker's build context includes all files (and folders) in the
4 +# current directory. Even if a file isn't copied into the container it is still sent to
5 +# the Docker daemon.
6 +#
7 +# There are multiple reasons to exclude files from the build context:
8 +#
9 +# 1. Prevent nested folders from being copied into the container (ex: exclude
10 +# /assets/node_modules when copying /assets)
11 +# 2. Reduce the size of the build context and improve build time (ex. /build, /deps, /doc)
12 +# 3. Avoid sending files containing sensitive information
13 +#
14 +# More information on using .dockerignore is available here:
15 +# https://docs.docker.com/engine/reference/builder/#dockerignore-file
16 +
17 +.dockerignore
18 +
19 +# Ignore git, but keep git HEAD and refs to access current commit hash if needed:
20 +#
21 +# $ cat .git/HEAD | awk '{print ".git/"$2}' | xargs cat
22 +# d0b8727759e1e0e7aa3d41707d12376e373d5ecc
23 +.git
24 +!.git/HEAD
25 +!.git/refs
26 +
27 +# Common development/test artifacts
28 +/cover/
29 +/doc/
30 +/test/
31 +/tmp/
32 +.elixir_ls
33 +
34 +# Mix artifacts
35 +/_build/
36 +/deps/
37 +*.ez
38 +
39 +# Generated on crash by the VM
40 +erl_crash.dump
41 +
42 +# Static artifacts - These should be fetched and built inside the Docker image
43 +# https://hexdocs.pm/phoenix/Mix.Tasks.Phx.Gen.Release.html#module-docker
44 +/assets/node_modules/
45 +/priv/static/assets/
46 +/priv/static/cache_manifest.json
added .formatter.exs
+6 −0
@@ -0,0 +1,6 @@
1 +[
2 + import_deps: [:ecto, :ecto_sql, :phoenix],
3 + subdirectories: ["priv/*/migrations"],
4 + plugins: [Phoenix.LiveView.HTMLFormatter],
5 + inputs: ["*.{heex,ex,exs}", "{config,lib,test}/**/*.{heex,ex,exs}", "priv/*/seeds.exs"]
6 +]
added .gitignore
+37 −0

Click to load diff…

added .gitlab-ci.yml
+58 −0

Click to load diff…

added AGENTS.md
+510 −0

Click to load diff…

added Dockerfile
+109 −0

Click to load diff…

added README.md
+18 −0

Click to load diff…

added assets/css/app.css
+360 −0

Click to load diff…

added assets/js/app.js
+83 −0

Click to load diff…

added assets/tsconfig.json
+32 −0

Click to load diff…

added assets/vendor/daisyui-theme.js
+124 −0

Click to load diff…

added assets/vendor/daisyui.js
+1031 −0

Click to load diff…

added assets/vendor/heroicons.js
+43 −0

Click to load diff…

added assets/vendor/topbar.js
+138 −0

Click to load diff…

added compose.yml
+16 −0

Click to load diff…

added config/config.exs
+157 −0

Click to load diff…

added config/dev.exs
+105 −0

Click to load diff…

added config/prod.exs
+33 −0

Click to load diff…

added config/runtime.exs
+206 −0

Click to load diff…

added config/test.exs
+64 −0

Click to load diff…

added deploy/README.md
+70 −0

Click to load diff…

added deploy/kubernetes/00-namespace.yaml
+4 −0

Click to load diff…

added deploy/kubernetes/10-rbac.yaml
+32 −0

Click to load diff…

added deploy/kubernetes/20-postgres.yaml
+54 −0

Click to load diff…

added deploy/kubernetes/30-secrets.example.yaml
+19 −0

Click to load diff…

added deploy/kubernetes/40-certificate.yaml
+21 −0

Click to load diff…

added deploy/kubernetes/50-services.yaml
+52 −0

Click to load diff…

added deploy/kubernetes/60-deployment.yaml
+85 −0

Click to load diff…

added deploy/kubernetes/70-ingress.yaml
+26 −0

Click to load diff…

added deploy/standalone/.env.example
+6 −0

Click to load diff…

added deploy/standalone/docker-compose.yml
+53 −0

Click to load diff…

added deploy/standalone/quadlet/README.md
+63 −0

Click to load diff…

added deploy/standalone/quadlet/ircd-postgres.container
+23 −0

Click to load diff…

added deploy/standalone/quadlet/ircd-postgres.volume
+5 −0

Click to load diff…

added deploy/standalone/quadlet/ircd-site-encrypt.volume
+5 −0

Click to load diff…

added deploy/standalone/quadlet/ircd.container
+43 −0

Click to load diff…

added deploy/standalone/quadlet/ircd.env.example
+14 −0

Click to load diff…

added deploy/standalone/quadlet/ircd.network
+7 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd.ex
+9 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/accounts.ex
+297 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/accounts/scope.ex
+33 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/accounts/user.ex
+132 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/accounts/user_notifier.ex
+84 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/accounts/user_token.ex
+156 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/application.ex
+57 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/channels.ex
+235 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/channels/channel_membership.ex
+36 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/channels/channel_record.ex
+43 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/cluster/horde_registry.ex
+24 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/cluster/horde_supervisor.ex
+24 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/cluster/node_listener.ex
+55 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/irc/auth.ex
+65 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/irc/chan_serv.ex
+395 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/irc/channel.ex
+880 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/irc/connection.ex
+1393 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/irc/hlc.ex
+47 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/irc/listener.ex
+33 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/irc/message.ex
+94 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/irc/message_log.ex
+147 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/irc/services.ex
+29 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/irc/stats.ex
+48 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/irc/tls_listener.ex
+121 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/mailer.ex
+3 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/release.ex
+30 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/repo.ex
+5 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd/themes.ex
+23 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web.ex
+114 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/components/core_components.ex
+498 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/components/layouts.ex
+208 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/components/layouts/root.html.heex
+36 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/controllers/error_html.ex
+24 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/controllers/error_json.ex
+21 −0

Click to load diff…

modified ?
+0 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/controllers/user_session_controller.ex
+67 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/endpoint.ex
+109 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/gettext.ex
+25 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/live/home_live.ex
+184 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/live/user_live/confirmation.ex
+94 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/live/user_live/login.ex
+134 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/live/user_live/registration.ex
+89 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/live/user_live/settings.ex
+160 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/router.ex
+78 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/telemetry.ex
+93 −0

Click to load diff…

added lib/oh_my_ex_oh_ircd_web/user_auth.ex
+287 −0

Click to load diff…

added mix.exs
+99 −0

Click to load diff…

added mix.lock
+58 −0

Click to load diff…

added priv/gettext/en/LC_MESSAGES/errors.po
+112 −0

Click to load diff…

added priv/gettext/errors.pot
+109 −0

Click to load diff…

added priv/repo/migrations/.formatter.exs
+4 −0

Click to load diff…

added priv/repo/migrations/20260519003212_create_users_auth_tables.exs
+30 −0

Click to load diff…

added priv/repo/migrations/20260520000000_create_channels.exs
+18 −0

Click to load diff…

added priv/repo/migrations/20260521000000_add_modes_to_channels.exs
+10 −0

Click to load diff…

added priv/repo/migrations/20260522000000_create_channel_memberships.exs
+18 −0

Click to load diff…

added priv/repo/seeds.exs
+11 −0

Click to load diff…

modified ?
+0 −0

Click to load diff…

added priv/static/images/logo.svg
+6 −0

Click to load diff…

added priv/static/robots.txt
+5 −0

Click to load diff…

added rel/overlays/bin/migrate
+5 −0

Click to load diff…

added rel/overlays/bin/migrate.bat
+1 −0

Click to load diff…

added rel/overlays/bin/server
+5 −0

Click to load diff…

added rel/overlays/bin/server.bat
+2 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/accounts_test.exs
+397 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/channels_test.exs
+59 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/irc/auth_test.exs
+25 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/irc/chan_serv_test.exs
+169 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/irc/channel_modes_test.exs
+348 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/irc/channel_ops_test.exs
+252 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/irc/channel_persistence_test.exs
+265 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/irc/connection_integration_test.exs
+304 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/irc/crdt_merge_test.exs
+81 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/irc/message_log_test.exs
+38 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/irc/message_test.exs
+70 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/irc/tls_listener_test.exs
+79 −0

Click to load diff…

added test/oh_my_ex_oh_ircd/tls_mode_test.exs
+27 −0

Click to load diff…

added test/oh_my_ex_oh_ircd_web/controllers/error_html_test.exs
+14 −0

Click to load diff…

added test/oh_my_ex_oh_ircd_web/controllers/error_json_test.exs
+12 −0

Click to load diff…

added test/oh_my_ex_oh_ircd_web/controllers/user_session_controller_test.exs
+147 −0

Click to load diff…

added test/oh_my_ex_oh_ircd_web/live/user_live/confirmation_test.exs
+118 −0

Click to load diff…

added test/oh_my_ex_oh_ircd_web/live/user_live/login_test.exs
+109 −0

Click to load diff…

added test/oh_my_ex_oh_ircd_web/live/user_live/registration_test.exs
+82 −0

Click to load diff…

added test/oh_my_ex_oh_ircd_web/live/user_live/settings_test.exs
+212 −0

Click to load diff…

added test/oh_my_ex_oh_ircd_web/user_auth_test.exs
+390 −0

Click to load diff…

added test/support/conn_case.ex
+79 −0

Click to load diff…

added test/support/data_case.ex
+58 −0

Click to load diff…

added test/support/fixtures/accounts_fixtures.ex
+89 −0

Click to load diff…

added test/support/irc_test_helper.ex
+144 −0

Click to load diff…

added test/test_helper.exs
+2 −0

Click to load diff…

Parents: