Create A Web Based Management UI

in Open Genie2 months ago (edited)

I'm in need of a management UI for a database consisting of the following tables:

User:

Column NameTypeExtra Info
idStringUUID.
emailString. Should be searchable by this field
nameString. Should be searchable by this field
accountTypeEnum("Personal", "Business")Should be a dropdown on UI to pick between
createdOnDateDateTime Picker on UI
updatedOnStringDateTime Picker on UI
stripeIdString
activeBoolean

This table the management UI shouldn't be able to create new records for, only update them. Deleting should not be permitted either(setting active to false will count as being deleted, a manual deleting from the DB is performed for legal requirements).

User Bandwidth Commit

Column NameTypeExtra Info
idStringUUID. Maps to User("id") field
commitMBPSIntegerWill be megabits per second. Stored as int, but UI should let user input in mbps/gbps (no tbps customers yet.)
librenmsURLStringIn the UI, please just make this a box that a user can input into and when they do another box opens up, and should be saved as a string with all the values in the boxes concatenated together and the rest of the URL

No delete functionality. Setting the active field to false is considered deleting.

Service

Column NameTypeExtra Info
idStringUUID. Should auto generate a new UUID4 when saving new
userIdStringUUID. Maps to User("id") field
serviceNameString. Should be searchable by this field
serviceTypeENUM(SEEBELOWFOROPTIONS)Drop down for one of the service types
monthlyCostDecimal
oneTimeCostDecimal
createdOnDateTime
updatedOnDateTime
nextInvoiceDueDateTimeCurrently unused
activeBooleanOn/Off switch on UI
stripeIdString

Service type options:
server
colocation
transit
managedService
ipv4
ipv6
domain
custom

Full CRUD functionality on this one.

Domain

Column NameTypeExtra Info
idStringUUID. Should auto generate a new UUID4 when saving new
serviceIDStringUUID. Maps to Service("id") field. UI should let a existing service be selected or create a new one if none is selected
domainStringUser's domain name. Should be searchable by this field
dnsOnlyBooleanOn/Off switch

Full CRUD functionality on this one.

On top of that, ability to search each thing by their id, or name is required. Both backend and frontend need to be created

This is a post created on the open genie platform you can view it best on this user interface: https://genie.peakd.com/@rishi556/create-a-web-based-management-ui-1734127645386