1+ import { Paragraph } from "../../Components/Paragraph" ;
2+
3+ export default function PGAS25Fail ( ) {
4+ return < div className = "relative grid place-items-center" >
5+ < article className = "my-4 p-2 w-full max-w-sm md:max-w-2xl" >
6+ < h1 className = "text-4xl" > PGAS-2025-Fail</ h1 >
7+
8+ < Paragraph > A failed school project from February to March 2025.</ Paragraph >
9+ < Paragraph > Skills: Planning & Typescript . </ Paragraph >
10+
11+ < h2 className = "text-2xl" > Overview</ h2 >
12+ < Paragraph >
13+ This is going to be a lot of ranting about how some things
14+ didn't work out favorably for me.
15+ </ Paragraph >
16+ < Paragraph >
17+ This project was supposed to be a intranet managment website to access
18+ private documentation made with static documentation generators
19+ such as rsPress, vitePress, vuePress, docusaurus, and etc.
20+ </ Paragraph >
21+
22+ < h2 className = "text-xl" > Process</ h2 >
23+ < Paragraph >
24+ At the start, I've viewed NextJS as a awesome framework to use
25+ for this as it was a widely popular server side rendering framework.
26+ </ Paragraph >
27+ < Paragraph >
28+ Now here's my first mistake, I had no idea how to use or install NextJS.
29+ </ Paragraph >
30+ < Paragraph >
31+ I've only used Vite for a long time and that should've been my option instead,
32+ but I picked NextJS since it seemed the best with tutorials on how to use OAuth.
33+ </ Paragraph >
34+ < Paragraph >
35+ My next mistake was trying to install Shadcn/Ui with NextJS.
36+ </ Paragraph >
37+ < Paragraph >
38+ Turns out, when I tried to install Shadcn with NextJS, I kept getting errors when
39+ trying to run ```npm run dev``` which was ANNOYING. Also when I tried to install with
40+ Shadcn command directly, I kept getting a annoying bug regarding Shadcn install command
41+ trying to access a random folder.
42+ </ Paragraph >
43+
44+ < h2 className = "text-xl" > Things learned</ h2 >
45+ < Paragraph >
46+ This wasn't all a failure, I've learned a lot of things.
47+ </ Paragraph >
48+ < Paragraph >
49+ I've discovered Vite supports server side rendering at a very low level
50+ which should fit my needs with creating a intranet site to view private
51+ documentation.
52+ </ Paragraph >
53+ < Paragraph >
54+ I've also discovered RsBuild and RsPress which I didn't know existed until
55+ I was doing research regarding static generators, way faster than Vite and
56+ I'll probably switch over to it once both get out of beta and lands with version
57+ 1.0.
58+ </ Paragraph >
59+
60+ < h2 className = "text-xl" > What I would do differently</ h2 >
61+ < Paragraph >
62+ If I don't know it, I'll just not use it.
63+ </ Paragraph >
64+ < Paragraph >
65+ This should've been my first approach to this since I already used Vite and
66+ should've used the SSR api they provided instead of trying to use NextJS.
67+ </ Paragraph >
68+ < Paragraph >
69+ Vite is also extremely fast for development, and that would've been the better option for me.
70+ I can use yarn with Vite instead, and with NextJS I could only use NPM which sucked for me.
71+ </ Paragraph >
72+
73+ < h2 className = "text-xl" > Links on what I would use in the future:</ h2 >
74+ < li className = "text-sky-500" >
75+ < a href = "https://vite.dev/" target = "_blank" >
76+ Vite
77+ </ a >
78+ </ li >
79+ < li className = "text-sky-500" >
80+ < a href = "https://ui.shadcn.com/" target = "_blank" >
81+ shadcn/ui
82+ </ a >
83+ </ li >
84+ < li className = "text-sky-500" >
85+ < a href = "https://auth0.com/" target = "_blank" >
86+ Auth0
87+ </ a >
88+ </ li >
89+ < li className = "text-sky-500" >
90+ < a href = "https://rspress.dev/" target = "_blank" >
91+ Rspress (to test the project.)
92+ </ a >
93+ </ li >
94+ </ article >
95+ </ div >
96+ }
0 commit comments