eom.dev
{% if title %}

One account. An independent community.

{{ title }}

{% if message %}

{{ message }}

{% endif %} {% if registration %}

Everyone can join. Verify your email, set a password in OpenLDAP, then sign in with Dex. A paid membership is optional.

{% endif %} {% if form %}
{% csrf_token %} {{ form.as_p }}
{% endif %}

Back to membership

{% csrf_token %}
{% else %}

Keep your own corner of the internet alive

A place to belong.
A way to give back.

Start with a free eom.dev account. Choose an optional membership to support the servers, experiments, and independent work behind the community.

{% if account %} {% if request.GET.checkout %}

Thanks for supporting the work. Stripe is confirming your subscription. Access appears after payment is verified and the membership worker has synchronized it.

{% endif %} {% for subscription in subscriptions %}

{{ subscription.tier|default:"Membership"|title }} · {{ subscription.status }}{% if subscription.paid_until > now %} · Paid access through {{ subscription.paid_until|date:"M j, Y H:i T" }}{% else %} · No current paid access{% endif %}{% if subscription.cancel_at_period_end %} · Does not renew{% endif %}

{% endfor %} {% for invoice in crypto_invoices %}

SHKeeper · {{ invoice.tier|title }} · {{ invoice.status }}{% if invoice.access_end > now %} · Prepaid term {{ invoice.access_start|date:"M j, Y" }}–{{ invoice.access_end|date:"M j, Y" }}{% endif %} · View crypto invoice

{% endfor %}

Billing and directory status update automatically, usually within a few minutes. Signing out here does not sign you out of other Dex applications.

{% else %}
Create a free account
{% csrf_token %}
{% endif %}

Your support, your choice

Find your membership

Your account stays free. Paid group access lasts only for the service period covered by your subscription.

The starting point

Community

Free / always

An account for the eom.dev community, stored in OpenLDAP and signed into through Dex.

  • No payment required
  • One account for compatible community services
  • Upgrade whenever you choose
{% if not account %}Join the community{% else %}

Your free account is ready.

{% endif %}
{% for key, tier in tiers.items %}

Independent work, supported together

{{ tier.label }}

{{ tier.price_label }}

{{ tier.description|default:"Help keep the projects and community running." }}

  • Tier-specific community access
  • Recurring payments through Stripe{% if shkeeper_enabled and tier.usd_amount %}, or prepaid crypto through SHKeeper{% endif %}
  • Your free account stays when paid access ends
{% if account %}
{% csrf_token %}
{% if shkeeper_enabled and tier.usd_amount %}Pay with crypto{% endif %}
{% else %}Create an account to join{% endif %}
{% empty %}

Paid memberships are coming soon.

You can create your free account now. Paid tiers will appear when their prices and groups are configured.

{% endfor %}

Simple, by design.

What happens when a membership ends?

Your LDAP account stays. Paid group access is removed automatically when the paid service period expires. An immediate cancellation removes access on the next successful sync.

Where is my password stored?

Only OpenLDAP stores your password hash. This website sends your initial password over verified TLS to OpenLDAP's password-modify operation. Future sign-ins happen through Dex.

Can I change or cancel a plan?

Use Manage billing after signing in. The billing portal offers the changes enabled for your plan. Cancellation at period end keeps access through the paid expiry date.

{% if shkeeper_enabled %}
How do crypto memberships renew?

SHKeeper payments prepay one calendar month, without automatic charges. Create a new invoice for each renewal. Confirmed payment on the same tier extends its prepaid term. Partial or unconfirmed payments do not grant access. Do not send renewal funds to an old invoice address.

{% endif %}
{% endif %}