monetizedesign
Published in

monetizedesign

Phantdom — Ruby on Rails Database Desktop App

Introducing the first desktop app made specifically for Ruby on Rails to manage database migrations. That means you no longer have to use the terminal to run rake commands in a GUI (graphical user interface).

Why the name Phantdom? It comes from a combination of phantom and domain and loosely means to View the State of Something in our case a Rails database. Also I kept misspelling “phantom” and thus the name has stuck! 😄

Manage and View Schema Migrations Quickly and Easily

I started to make Phantdom after I saw my friend who just started using Ruby on Rails make a few mistakes that I used to make when I was first understanding how Rails even works.

Why Build a Ruby on Rails App for Beginners?

Because you have to open the terminal to even run a Rails app.

Most developers who are new have some experience with PHP/HTML but no experience with terminal or Command Prompt for Windows users.

Already they are turned off. As beginners they don’t want to stare at a black window that seems to show errors more than anything and it gets more confusing the first time you run rake db:migrate and you get an error about Rake or bundle or Ruby version.

Oh god. Managing Ruby versions!

Before you know it — you are so over Rails and would be happy to jump back into a turrible PHP project (no offence to PHP).

My goal with Phantdom is to alleviate the annoyance of getting it “wrong” when it comes to dealing with schema migrations.

Phantdom: Rails Migration Database Manager

Right now we only support PostgreSQL but that is only expected to last a short time as we grow into the rest of popular Rails database adapters.

This is accomplished by using the power of Electron & NodeJS which we are using to power the desktop app for MacOS (Windows, Linux coming in Q4 of 2018).

Electron has been a god send for web developers who want to develop cross-platform Mobile and Desktop applications. I am a huge fan, in fact I have donated $50 a month to support the project.

Side note: I also even submitted a Github Issue for the 2.0.0 beta of Electron. You can see the issue here. It was promptly fixed! How cool is that?

With NodeJS we are able to connect to any database adapter and access the local file system which gives us the power to run various Rails commands from a GUI.

While all of that might not sound like it will help beginners use Ruby on Rails any easier, it does because we are directly dealing with the same files that you would anyways.

When we are pulling up the schema_migrations table in Phantdom we are actually running a shell in the background that will pull up the data and format it inside of the table.

Easily Add and Manage Rails Schema Migrations

This means you are getting exactly what you would have gotten when using a vanilla terminal app. To us, this is very exciting to be able to develop a smoother process for handling and creating a schema for Rails application.

The Layered System: Terminal + RubyGems + Database Viewer

The magic of the app is that it combines the Terminal, Database Manager, and RubyGem Management and gives you the tools to run Rake commands all in one easy to use application.

Terminal Access from Phantdom

When boiled down, here’s what Phantdom provides:

  1. Database View for PostgreSQL
  2. Run Rake Commands
  3. Run Schema Migrations (New Table, Rename Table, New Column, etc)
  4. Run Terminal Commands (in app)
  5. Search and Install RubyGems
  6. and much more!

To get access to the app…

Download the beta by signing up: https://www.producthunt.com/upcoming/phantdom

We are going to have release notes, documentation and most likely make it open source. Let’s create a new trend for beginner Ruby on Rails developers!

Thanks for reading — more posts will be coming out shortly as we continue to develop the beta and release version 1.0.0!

And remember, “If she doesn’t find you handsome, at least she’ll find you handy!”

Sincerely,

Wynter Jones
Founder of MonetizeDesign

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store