@@ -3,7 +3,7 @@ import { useSession } from "@/app/(outerbase)/session-provider";
3
3
import { useWorkspaces } from "@/app/(outerbase)/workspace-provider" ;
4
4
import { Button } from "@/components/orbit/button" ;
5
5
import { Loader } from "@/components/orbit/loader" ;
6
- import { ArrowLeft } from "@phosphor-icons/react" ;
6
+ import { ArrowLeft , Folder } from "@phosphor-icons/react" ;
7
7
import Link from "next/link" ;
8
8
9
9
function LocalMySQLCloudSection ( ) {
@@ -12,15 +12,15 @@ function LocalMySQLCloudSection() {
12
12
13
13
if ( isLoading || loading ) {
14
14
return (
15
- < div className = "flex w-1/2 flex-col gap-4 border-r p-4" >
16
- < Loader />
15
+ < div className = "flex min-h-[300px] w-1/2 flex-col items-center justify-center gap-4 p-4" >
16
+ < Loader size = { 40 } />
17
17
</ div >
18
18
) ;
19
19
}
20
20
21
21
if ( ! session ?. user ) {
22
22
return (
23
- < div className = "flex w-1/2 flex-col gap-4 border-r p-4" >
23
+ < div className = "flex w-1/2 flex-col gap-4 p-4" >
24
24
< h1 className = "text-lg font-bold" > Outerbase Cloud</ h1 >
25
25
26
26
< div >
@@ -49,15 +49,20 @@ function LocalMySQLCloudSection() {
49
49
}
50
50
51
51
return (
52
- < div className = "flex w-1/2 flex-col gap-4 border-r p-4" >
53
- < h1 className = "text-lg font-bold" > Outerbase Cloud</ h1 >
54
- < p > Please select the workspace</ p >
52
+ < div className = "flex w-1/2 flex-col gap-2 p-4" >
53
+ < div className = "mb-4" >
54
+ < h1 className = "text-2xl font-bold" > Outerbase Cloud</ h1 >
55
+ < p > Please select the workspace</ p >
56
+ </ div >
57
+
55
58
{ ( workspaces ?? [ ] ) . map ( ( workspace ) => {
56
59
return (
57
60
< Link
58
61
key = { workspace . id }
62
+ className = "bg-secondary hover:border-primary flex cursor-pointer items-center gap-2 rounded border border-2 p-4 text-base"
59
63
href = { `/w/${ workspace . short_name } /new-base/mysql` }
60
64
>
65
+ < Folder weight = "bold" size = { 20 } />
61
66
{ workspace . name }
62
67
</ Link >
63
68
) ;
@@ -76,30 +81,40 @@ export default function LocalMySQLNewBasePage() {
76
81
</ Button >
77
82
</ div >
78
83
79
- < div className = "mb-12 p-4" >
80
- It is not possible to run MySQL from browser .
81
- < br /> Please use the desktop app or our cloud services.
84
+ < div className = "mb-8 p-4 text-xl leading-8 " >
85
+ Running MySQL from a browser is not possible .
86
+ < br /> Please use the desktop app or our cloud services instead .
82
87
</ div >
83
88
84
- < div className = "flex" >
89
+ < div className = "mb-8 flex" >
85
90
< LocalMySQLCloudSection />
86
91
87
92
< div className = "flex w-1/2 flex-col gap-4 p-4" >
88
- < h1 className = "text-lg font-bold" > Desktop App</ h1 >
89
-
90
- < div > Connect locally with our desktop app</ div >
91
-
92
93
< div >
93
- < Button
94
- variant = "primary"
95
- className = "inline-flex"
96
- size = "lg"
97
- href = "https://github.com/outerbase/studio-desktop/releases"
98
- as = "link"
99
- >
100
- Download Desktop App
101
- </ Button >
94
+ < h1 className = "text-2xl font-bold" > Desktop App</ h1 >
95
+ < p > Connect locally with our desktop app</ p >
102
96
</ div >
97
+
98
+ < Link
99
+ href = "https://github.com/outerbase/studio-desktop/releases"
100
+ className = "relative w-full"
101
+ >
102
+ < img
103
+ src = "/outerbase-banner.jpg"
104
+ alt = ""
105
+ className = "w-full rounded-lg"
106
+ />
107
+
108
+ < div className = "bg-opacity-50 absolute right-0 bottom-0 left-0 flex cursor-pointer flex-col gap-2 rounded-lg bg-black p-4 text-white" >
109
+ < div className = "text-2xl font-bold" > Download the desktop app</ div >
110
+ < p className = "text-base" >
111
+ Outerbase Studio Desktop is a lightweight Electron wrapper for
112
+ the Outerbase Studio web version. It enables support for drivers
113
+ that aren't feasible in a browser environment, such as
114
+ MySQL and PostgreSQL.
115
+ </ p >
116
+ </ div >
117
+ </ Link >
103
118
</ div >
104
119
</ div >
105
120
</ div >
0 commit comments