# Devlog 1 - Design and Components
Over the last few weeks, I’ve been working on designing some custom components for CloudNext, so that I can use them later and save myself some time. I added the following:
-
Sidebar - This component is the bar at the side with options to view the specific data pulled from API endpoints.
-
Top Bar - This component is at the top, where you can see your authentication status (I added Auth, read more below on that!) and you can switch zones.
-
Badge - This component is designed for small little notes, like whether something is active, has an error or another issue. It will also be used for what each DNS Record is for, as well as the type (MX, TXT, Tunnel, A, CNAME, etc.)
-
Status Dot - This component is similar to the badge, but is just a small colored dot for lower priority events.
-
Card/ZoneCard - This component is a card for details on analytics, and details on zone statuses.
-
Table - This component is for DNS Records, so you can see them at a glance.
Authentication
So because it is of the utmost importance to keep your API keys safe, especially as I want to add DNS editing later, I decided to go with Clerk for handling authentication for the app. rather than designing my own system using Firebase, I wanted something used by large companies that I can trust is secure, and isn’t susceptible to issues I haven’t patched or noticed while configuring the app.
I’m planning on using Prisma ORM and PostgreSQL with RLS to handle storing the keys, and I will obviously be hashing them so that they are highly secure. I also implemented access control, so you can’t type in certain dashboard details and automatically be into their dash, as you will be redirected to the login page.
I’ve decided to also integrate the clerk account details into the top bar of the app itself to keep the UI clean, and I’m hoping to adjust the account settings page and recode it to fit the existing design of the app. I attached a simple image of the elements I made so that you can see the design I am going for (kinda similar to Cloudflare and Linear.app).