sorentwo

sorentwo

Oban Core Team

Oban Web: Private Beta

Many months ago when I originally announced Oban I mentioned that a LiveView powered UI would be available for it soon. Well, the “soon” part wasn’t especially accurate, but I am pleased to announce that the Oban UI is now in private beta.

You can see a live version of the UI running at https://oban.dev/oban. The demo runs semi-constant stream of random jobs and doesn’t contain any actual personal information. Feel free to discard or delete jobs, it will just make more.

Now on to the “private” part.

Why is it private?

Oban itself has taken a ton of time to develop and support. I absolutely love the project, adore working on it, and am stunned by the positive response it has received. The UI requires even more work to get right and make into a truly useful tool for production applications. This is something I want to focus on and give proper attention—eventually I hope to sustain the project and by charging for a UI license.

Please note that Oban itself will always be entirely open source. There will never be an “enterprise” version with gated features.

Why is it a beta?

There are a few reasons:

  1. Installing it can be tricky. The package is largely stand alone, but it needs to be routed and configured from within a phoenix application. I expect that it will take some time to refine the installation steps and work out the kinks.
  2. The UI is missing some important features, has some known bugs and definitely needs polishing. That will take time, and I want to ensure that the initial users are willing to give meaningful and helpful feedback.
  3. There aren’t any proper support channels yet, it’s all a bit ad-hoc.

How does the UI integrate into my app?

The package is named oban_web and it is a published privately under the oban organization on hex.pm. The package is entirely self contained—it doesn’t hook into your asset pipeline at all. Just mount the live module in your router, pass some configuration, run some migrations and its up.

What’s on the roadmap?

As new features are added and bugs are fixed I’ll post about them here. Here are some of the bigger planned fixes/features currently:

  • Sidebar Accuracy
  • Pagination
  • Details View (with error details, unique information)
  • Queue Controls (scale up, down, pause from the UI)
  • Bulk Actions
  • Node Information
  • Live & Historic Metrics

How do I get into the beta?

Anybody wanting to join the beta now please go to https://oban.dev

The site has a little more info and a tiny little signup form for the beta.

Thank you to everybody that has expressed interest and offered support. If you have any questions or comments please leave them here. :yellow_heart:

Most Liked

sorentwo

sorentwo

Oban Core Team

I’m pleased to announce that the UI is no longer in beta and is now generally available through a paid license. There are new installation docs, an faq, a changelog and a public roadmap is in the works. This is still just the beginning for the product!

Thank you to everyone that participated in the beta! You’ve been extremely helpful and I’m grateful for your support and all of the feedback :yellow_heart:.

There will be a two week grace period for existing beta users (in addition to the 7 day trial). You can access your current license key and subscribe to a plan through your account page by signing in with your existing email. If you have any questions please reach out here, on slack, or by sending an email.

sorentwo

sorentwo

Oban Core Team

ObanWeb v1.1.0 is out today with a fix for verbose logging and overhauled stats tracking. It now uses less resources when nobody is connected to the dashboard.

Changes

  • Add verbose setting to control log levels. This command mirrors the behavior in Oban and is respected by all queries.

  • Deprecate stats configuration. The stats module is entirely overhauled so that it only refreshes when one or more users are connected. That prevents it from using any connections or performing any queries while testing, which renders the stats option pointless.

  • Add stats_interval to control how often node and queue counts are refreshed. The default value is every 1s (you shouldn’t need to change this)

  • Add tick_interval to control how often the jobs table and job details are refreshed. The default value is every 500ms (you shouldn’t need to change this)

Eiji

Eiji

Challenge accepted! :077:

Array.from(document.querySelectorAll(".btn--destructive")).forEach((el) => el.click())

                                                    A few attempts later …


Well … good job! :smiley:

It’s why I love fault-tolerant so much!

Where Next?

Popular in News & Updates Top

zachdaniel
:police_car_light: New AshAuthentication Installers :police_car_light: The AshAuthentication igniter installers are released! Today on s...
New
bartblast
Hologram’s journey just took a significant leap forward: Curiosum is coming on board as the Main Sponsor, and I’m joining their team to w...
New
zachdaniel
AshCloak AshCloak is small but mighty! Simply configure the extension, and it will encrypt your attributes :partying_face: Since an exam...
New
hugobarauna
A new Livebook version arrives this Friday! :tada: As we count down the days, we will share a sneak peek into what’s coming each day thi...
New
bartblast
Hologram v0.7.0 is out! This is a milestone release for the Elixir-to-JavaScript porting initiative. 49 contributors ported 150 Erlang fu...
New
fhunleth
We recently released Nerves 1.5.0 and corresponding updates to the Nerves new project generator, nerves_bootstrap and our official system...
New
fhunleth
Nerves systems provide the operating system, libraries and other tools for building firmware for specific hardware. The Nerves Core Team ...
New
jjcarstens
Testing code destined for hardware can be tricky, but it just got one tiny bit easier! :tty0tty was just released which is an Elixir por...
New
jjcarstens
Hey friends! :waving_hand: With NervesConf 2024 around the corner, Frank, myself, and the greater Nerves team wanted to share a survey w...
New
zachdaniel
We recently launched atomic updates, which look like this: update :update do change atomic_update(:score, expr(score + 1)) end # or w...
New

Other popular topics Top

Harrisonl
We have an ECS cluster with 4 services, where each task joins a single cluster, via discovery ECS discovery service. Currently when I de...
New
Emily
I have VueJS GUIs with the project generated using Webpack. I have Elixir modules that will need to be used by the VueJS GUIs. I forese...
New
albydarned
Hello all! I am typing this post from my new MacBook Pro with the M1 chip. I’m loving it so far, and will probably use it as my daily dr...
New
msaraiva
Surface is an experimental library built on top of Phoenix LiveView and its new LiveComponent API that aims to provide a more declarative...
564 43806 214
New
bsollish-terakeet
Credo is smart enough to check for (something like) this: assert length(the_list) == 0 with this response: Checking if an enum is empt...
New
komlanvi
Hi everyone, I was playing with phoenix liveView but I run into an issue. I have a form and want to validate each input text when the te...
New
PeterCarter
There are pre-rolled solutions for other frameworks that do work. However, Phoenix does not seem to have these. Have people had good expe...
New
hariharasudhan94
Lets say I have map like this fetching from my database %{"_id" => #BSON.ObjectId<58eb1a7a9ad169198c3dXXXX>, "email" => ...
New
dogweather
I wrote this comment on r/haskell, and it’s not popular there. :wink: But I think I’m on to something… Haskell reminds me of Java, and e...
New
svb
Hi! Currently I want to submit a form by pressing the Enter key. However, since my input field is of type “textarea” this is just adds a...
New

We're in Beta

About us Mission Statement