@@ -10,6 +10,7 @@ import { useState } from "react";
1010export default function ContentPolicy ( ) {
1111 const [ isExpandedFirst , setIsExpandedFirst ] = useState ( false ) ;
1212 const [ isExpandedSecond , setIsExpandedSecond ] = useState ( false ) ;
13+ const [ isExpandedThird , setIsExpandedThird ] = useState ( false ) ;
1314
1415 return (
1516 < div className = "min-h-screen bg-cream-50" >
@@ -44,7 +45,154 @@ export default function ContentPolicy() {
4445
4546 { /* Content */ }
4647 < div className = "prose prose-lg max-w-none space-y-8" >
47- { /* First Article - New Post */ }
48+ { /* Newest Article - nilGPT v4 */ }
49+ < div className = "bg-white border-4 border-navy-900 brutalist-shadow p-8 space-y-8" >
50+ < article className = "space-y-8" >
51+ { /* Main Title */ }
52+ < h1 className = "font-display font-black text-3xl lg:text-4xl text-navy-900 mb-6" >
53+ nilGPT v4: Image uploads and bigger models
54+ </ h1 >
55+
56+ { /* Date */ }
57+ < div className = "text-navy-600 text-sm font-medium mb-8" >
58+ September 11, 2025
59+ </ div >
60+
61+ { /* Introduction */ }
62+ < p className = "text-navy-700 leading-relaxed mb-6" >
63+ A new week comes with a new release of nilGPT. We're keeping
64+ up the rhythm and shipping fast. Every release takes us one
65+ step closer toward building the most privacy-preserving and
66+ capable AI assistant. We believe this is something that needs
67+ to exist for those sensitive questions that ChatGPT and others
68+ should never have their eyes on.
69+ </ p >
70+
71+ { /* Expandable Content */ }
72+ < div
73+ className = { `overflow-hidden transition-all duration-500 ease-in-out ${
74+ isExpandedThird ? "max-h-none" : "max-h-0"
75+ } `}
76+ >
77+ < p className = "text-navy-700 leading-relaxed mb-4" >
78+ Two weeks ago, we shipped attestation flows, giving you the
79+ ability to verify that nilGPT is running exactly the code we
80+ open-sourced. Last week, we rolled out the PWA, so you can
81+ install nilGPT directly on your mobile device for a more
82+ seamless experience.
83+ </ p >
84+
85+ < p className = "text-navy-700 leading-relaxed mb-4" >
86+ This week, we're turning up the dial again with two major
87+ new capabilities: bigger models and image uploads.
88+ </ p >
89+
90+ { /* Major Features Section */ }
91+ < section className = "mb-8" >
92+ < h2 className = "font-display font-bold text-2xl text-navy-900 mb-4" >
93+ Major Features
94+ </ h2 >
95+ < p className = "text-navy-700 leading-relaxed mb-4" >
96+ The first big upgrade is the introduction of Gemma 3 27B,
97+ a state-of-the-art model that significantly increases the
98+ power of nilGPT. As a reminder, all of our models run on
99+ bare-metal servers inside TEEs (trusted execution
100+ environments). That means there is no reliance on
101+ third-party clouds, no hidden data pipelines, and the same
102+ uncompromising privacy guarantees we've promised from day
103+ one. With Gemma 3 27B, you get stronger reasoning, more
104+ detailed answers, and faster performance—all while keeping
105+ your data fully secure.
106+ </ p >
107+ < p className = "text-navy-700 leading-relaxed mb-4" >
108+ The second major feature is the ability to upload images.
109+ For the first time, nilGPT can handle images as well as
110+ text. You can now upload screenshots, diagrams, or photos
111+ and interact with them directly in nilGPT.
112+ </ p >
113+ </ section >
114+
115+ { /* More Improvements Section */ }
116+ < section className = "mb-8" >
117+ < h2 className = "font-display font-bold text-2xl text-navy-900 mb-4" >
118+ More Improvements
119+ </ h2 >
120+ < p className = "text-navy-700 leading-relaxed mb-4" >
121+ Alongside these major features, we've added a set of
122+ smaller but useful improvements. You can now delete and
123+ rename chats, giving you more control over your chat
124+ history. On the landing page, a new counter shows the
125+ total number of messages sent with nilGPT since launch—a
126+ small but satisfying reminder of how quickly the community
127+ is growing.
128+ </ p >
129+
130+ { /* Message Counter Image */ }
131+ < div className = "my-8" >
132+ < Image
133+ src = "/img/message_counter.png"
134+ alt = "nilGPT Message Counter"
135+ width = { 400 }
136+ height = { 300 }
137+ className = "w-full max-w-md mx-auto h-auto border-2 border-navy-900 rounded-lg"
138+ priority
139+ />
140+ </ div >
141+
142+ < p className = "text-navy-700 leading-relaxed mb-4" >
143+ We've also introduced starter messages for each mode,
144+ designed to make it easier to get going with nilGPT right
145+ away.
146+ </ p >
147+
148+ { /* Starter Messages Image */ }
149+ < div className = "my-8" >
150+ < Image
151+ src = "/img/starter_messages.jpeg"
152+ alt = "nilGPT Starter Messages"
153+ width = { 400 }
154+ height = { 300 }
155+ className = "w-full max-w-md mx-auto h-auto border-2 border-navy-900 rounded-lg"
156+ priority
157+ />
158+ </ div >
159+ </ section >
160+
161+ { /* Looking Ahead Section */ }
162+ < section className = "mb-8" >
163+ < h2 className = "font-display font-bold text-2xl text-navy-900 mb-4" >
164+ Looking Ahead
165+ </ h2 >
166+ < p className = "text-navy-700 leading-relaxed mb-4" >
167+ In the near future, you will be able to search the web
168+ through nilGPT, extending the chatbot's knowledge base
169+ while still preserving the same guarantees of privacy and
170+ security.
171+ </ p >
172+ < p className = "text-navy-700 leading-relaxed mb-4" >
173+ We're also working on voice mode, which will make
174+ conversations with nilGPT feel even more natural and
175+ seamless. The pace won't slow down.
176+ </ p >
177+ < p className = "text-navy-700 leading-relaxed" >
178+ Expect more exciting updates in the weeks ahead.
179+ </ p >
180+ </ section >
181+ </ div >
182+
183+ { /* Toggle Button */ }
184+ < div className = "text-center mt-6" >
185+ < button
186+ onClick = { ( ) => setIsExpandedThird ( ! isExpandedThird ) }
187+ className = "bg-navy-900 text-cream-50 px-6 py-3 font-bold brutalist-shadow hover:translate-x-1 hover:translate-y-1 hover:shadow-none transition-all duration-200 rounded-lg"
188+ >
189+ { isExpandedThird ? "Show Less" : "Read More" }
190+ </ button >
191+ </ div >
192+ </ article >
193+ </ div >
194+
195+ { /* Second Article - Attestation Post */ }
48196 < div className = "bg-white border-4 border-navy-900 brutalist-shadow p-8 space-y-8" >
49197 < article className = "space-y-8" >
50198 { /* Main Title */ }
@@ -297,7 +445,7 @@ export default function ContentPolicy() {
297445 </ article >
298446 </ div >
299447
300- { /* Second Article - Original Post */ }
448+ { /* Third Article - Original Post */ }
301449 < div className = "bg-white border-4 border-navy-900 brutalist-shadow p-8 space-y-8" >
302450 < article className = "space-y-8" >
303451 { /* Main Title */ }
0 commit comments