create-flexireact 2.0.2 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"app-router.d.ts","sourceRoot":"","sources":["../../src/templates/app-router.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa,CA2NpE"}
1
+ {"version":3,"file":"app-router.d.ts","sourceRoot":"","sources":["../../src/templates/app-router.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa,CA8WpE"}
@@ -17,7 +17,8 @@ export function appRouterTemplate(projectName) {
17
17
  dependencies: {
18
18
  react: '^18.2.0',
19
19
  'react-dom': '^18.2.0',
20
- '@flexireact/core': '^2.0.0',
20
+ '@flexireact/core': '^3.0.0',
21
+ '@flexireact/flexi-ui': '^2.0.1',
21
22
  clsx: '^2.1.0',
22
23
  'tailwind-merge': '^2.2.0',
23
24
  },
@@ -84,37 +85,169 @@ export default function RootLayout({ children }: { children: React.ReactNode })
84
85
  `,
85
86
  'app/page.tsx': `import React from 'react';
86
87
 
88
+ const features = [
89
+ { icon: '⚡', title: 'Lightning Fast', desc: 'Powered by esbuild for instant builds and HMR' },
90
+ { icon: '🎨', title: 'FlexiUI', desc: '50+ beautiful, accessible components' },
91
+ { icon: '📘', title: 'TypeScript', desc: 'Full type safety out of the box' },
92
+ { icon: '🏝️', title: 'Islands', desc: 'Partial hydration for max performance' },
93
+ { icon: '🌐', title: 'Edge Ready', desc: 'Deploy anywhere: Node, Bun, Deno, CF' },
94
+ { icon: '🚀', title: 'SSR + PPR', desc: 'Streaming SSR & Partial Prerendering' },
95
+ ];
96
+
97
+ const stats = [
98
+ { label: 'Components', value: '50+' },
99
+ { label: 'Bundle Size', value: '~90kb' },
100
+ { label: 'Build Time', value: '<1s' },
101
+ { label: 'Lighthouse', value: '100' },
102
+ ];
103
+
87
104
  export default function HomePage() {
88
105
  return (
89
- <main className="min-h-screen flex flex-col items-center justify-center p-8">
90
- <div className="text-center">
91
- <div className="w-20 h-20 bg-[#00FF9C] rounded-2xl flex items-center justify-center mx-auto mb-8">
92
- <span className="text-black font-bold text-3xl">F</span>
93
- </div>
94
-
95
- <h1 className="text-5xl font-bold mb-4">
96
- Welcome to <span className="text-[#00FF9C]">FlexiReact</span>
97
- </h1>
106
+ <main className="min-h-screen bg-[#0a0a0a]">
107
+ {/* Hero */}
108
+ <section className="relative py-24 lg:py-32 px-4 overflow-hidden">
109
+ {/* Gradient background */}
110
+ <div className="absolute inset-0 bg-[radial-gradient(ellipse_at_top,_var(--tw-gradient-stops))] from-[#00FF9C]/10 via-transparent to-transparent" />
111
+ <div className="absolute top-0 left-1/2 -translate-x-1/2 w-[600px] h-[600px] bg-[#00FF9C]/5 rounded-full blur-[120px]" />
98
112
 
99
- <p className="text-gray-400 text-lg mb-8">
100
- Using App Router with Next.js style routing
101
- </p>
102
-
103
- <div className="flex gap-4 justify-center">
104
- <a
105
- href="https://github.com/nicksdev/flexireact"
106
- className="px-6 py-3 bg-[#00FF9C] text-black font-semibold rounded-lg hover:opacity-90 transition"
107
- >
108
- Get Started
109
- </a>
110
- <a
111
- href="https://github.com/nicksdev/flexireact"
112
- className="px-6 py-3 border border-gray-700 rounded-lg hover:border-[#00FF9C] transition"
113
- >
114
- Documentation
115
- </a>
113
+ <div className="relative max-w-5xl mx-auto text-center">
114
+ {/* Logo */}
115
+ <div className="inline-flex items-center justify-center w-20 h-20 mb-8 rounded-2xl bg-gradient-to-br from-[#00FF9C] to-[#00D68F] shadow-lg shadow-[#00FF9C]/20">
116
+ <span className="text-3xl font-black text-black">F</span>
117
+ </div>
118
+
119
+ {/* Badge */}
120
+ <div className="inline-flex items-center gap-2 px-4 py-2 mb-8 rounded-full bg-white/5 border border-white/10 backdrop-blur-sm">
121
+ <span className="w-2 h-2 rounded-full bg-[#00FF9C] animate-pulse" />
122
+ <span className="text-sm text-gray-300">v3.0 — The Future of React</span>
123
+ </div>
124
+
125
+ <h1 className="text-5xl sm:text-6xl lg:text-7xl font-bold mb-6 tracking-tight">
126
+ Build faster with
127
+ <span className="block mt-2 bg-gradient-to-r from-[#00FF9C] via-[#00D68F] to-[#00FF9C] bg-clip-text text-transparent">
128
+ FlexiReact
129
+ </span>
130
+ </h1>
131
+
132
+ <p className="text-lg sm:text-xl text-gray-400 mb-10 max-w-2xl mx-auto leading-relaxed">
133
+ The modern React framework with TypeScript, Tailwind, SSR, Islands,
134
+ Edge Runtime, and 50+ UI components. <span className="text-white font-medium">Better than Next.js.</span>
135
+ </p>
136
+
137
+ {/* CTA Buttons */}
138
+ <div className="flex flex-col sm:flex-row gap-4 justify-center">
139
+ <a href="https://github.com/flexireact/flexireact"
140
+ className="group inline-flex items-center justify-center gap-2 px-8 py-4 bg-[#00FF9C] text-black font-semibold rounded-xl hover:bg-[#00D68F] transition-all hover:scale-105 hover:shadow-lg hover:shadow-[#00FF9C]/25">
141
+ Get Started
142
+ <svg className="w-5 h-5 transition-transform group-hover:translate-x-1" fill="none" stroke="currentColor" viewBox="0 0 24 24">
143
+ <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M17 8l4 4m0 0l-4 4m4-4H3" />
144
+ </svg>
145
+ </a>
146
+ <a href="https://github.com/flexireact/flexireact#readme"
147
+ className="inline-flex items-center justify-center gap-2 px-8 py-4 bg-white/5 text-white font-semibold rounded-xl border border-white/10 hover:bg-white/10 hover:border-[#00FF9C]/50 transition-all">
148
+ Documentation
149
+ </a>
150
+ </div>
151
+
152
+ {/* Terminal */}
153
+ <div className="mt-16 max-w-lg mx-auto">
154
+ <div className="rounded-xl bg-[#111] border border-gray-800 overflow-hidden shadow-2xl">
155
+ <div className="flex items-center gap-2 px-4 py-3 bg-[#0d0d0d] border-b border-gray-800">
156
+ <div className="flex gap-1.5">
157
+ <div className="w-3 h-3 rounded-full bg-red-500/80" />
158
+ <div className="w-3 h-3 rounded-full bg-yellow-500/80" />
159
+ <div className="w-3 h-3 rounded-full bg-green-500/80" />
160
+ </div>
161
+ <span className="text-xs text-gray-500 ml-2">Terminal</span>
162
+ </div>
163
+ <div className="p-4 font-mono text-sm">
164
+ <div className="flex items-center gap-2">
165
+ <span className="text-[#00FF9C]">$</span>
166
+ <span className="text-gray-300">npx create-flexireact my-app</span>
167
+ </div>
168
+ </div>
169
+ </div>
170
+ </div>
116
171
  </div>
117
- </div>
172
+ </section>
173
+
174
+ {/* Stats */}
175
+ <section className="py-16 px-4 border-y border-gray-800/50">
176
+ <div className="max-w-5xl mx-auto">
177
+ <div className="grid grid-cols-2 lg:grid-cols-4 gap-4">
178
+ {stats.map((stat, i) => (
179
+ <div key={i} className="text-center p-6 rounded-2xl bg-gradient-to-b from-white/5 to-transparent border border-white/5">
180
+ <div className="text-3xl sm:text-4xl font-bold text-[#00FF9C] mb-1">{stat.value}</div>
181
+ <div className="text-sm text-gray-500">{stat.label}</div>
182
+ </div>
183
+ ))}
184
+ </div>
185
+ </div>
186
+ </section>
187
+
188
+ {/* Features */}
189
+ <section className="py-24 px-4">
190
+ <div className="max-w-5xl mx-auto">
191
+ <div className="text-center mb-16">
192
+ <h2 className="text-3xl sm:text-4xl font-bold mb-4">Everything you need</h2>
193
+ <p className="text-gray-400">A complete toolkit for building modern React apps</p>
194
+ </div>
195
+
196
+ <div className="grid sm:grid-cols-2 lg:grid-cols-3 gap-4">
197
+ {features.map((f, i) => (
198
+ <div key={i} className="group p-6 rounded-2xl bg-gradient-to-b from-white/5 to-transparent border border-white/5 hover:border-[#00FF9C]/30 transition-all hover:-translate-y-1">
199
+ <div className="w-12 h-12 rounded-xl bg-[#00FF9C]/10 flex items-center justify-center text-2xl mb-4 group-hover:scale-110 transition-transform">
200
+ {f.icon}
201
+ </div>
202
+ <h3 className="font-semibold text-lg mb-2">{f.title}</h3>
203
+ <p className="text-gray-400 text-sm leading-relaxed">{f.desc}</p>
204
+ </div>
205
+ ))}
206
+ </div>
207
+ </div>
208
+ </section>
209
+
210
+ {/* CTA */}
211
+ <section className="py-24 px-4">
212
+ <div className="max-w-3xl mx-auto">
213
+ <div className="relative p-8 sm:p-12 rounded-3xl bg-gradient-to-b from-[#111] to-[#0a0a0a] border border-gray-800 overflow-hidden">
214
+ <div className="absolute top-0 right-0 w-64 h-64 bg-[#00FF9C]/10 rounded-full blur-[100px]" />
215
+ <div className="relative text-center">
216
+ <h2 className="text-3xl sm:text-4xl font-bold mb-4">Ready to build?</h2>
217
+ <p className="text-gray-400 mb-8">Create your first FlexiReact app in seconds</p>
218
+
219
+ <div className="inline-block p-4 rounded-xl bg-black/50 border border-gray-800 font-mono text-sm mb-8">
220
+ <span className="text-[#00FF9C]">$</span>
221
+ <span className="text-gray-300 ml-2">npx create-flexireact my-app</span>
222
+ </div>
223
+
224
+ <div className="flex flex-col sm:flex-row gap-4 justify-center">
225
+ <a href="https://github.com/flexireact/flexireact"
226
+ className="inline-flex items-center justify-center gap-2 px-8 py-4 bg-[#00FF9C] text-black font-semibold rounded-xl hover:bg-[#00D68F] transition-all">
227
+ Start Building →
228
+ </a>
229
+ </div>
230
+ </div>
231
+ </div>
232
+ </div>
233
+ </section>
234
+
235
+ {/* Footer */}
236
+ <footer className="py-12 px-4 border-t border-gray-800/50">
237
+ <div className="max-w-5xl mx-auto flex flex-col sm:flex-row items-center justify-between gap-4">
238
+ <div className="flex items-center gap-2">
239
+ <div className="w-8 h-8 rounded-lg bg-[#00FF9C] flex items-center justify-center">
240
+ <span className="text-sm font-bold text-black">F</span>
241
+ </div>
242
+ <span className="font-semibold">FlexiReact</span>
243
+ </div>
244
+ <p className="text-sm text-gray-500">Built with ❤️ by FlexiReact Team</p>
245
+ <div className="flex items-center gap-6">
246
+ <a href="https://github.com/flexireact" className="text-gray-400 hover:text-white transition-colors">GitHub</a>
247
+ <a href="https://npmjs.com/package/@flexireact/core" className="text-gray-400 hover:text-white transition-colors">npm</a>
248
+ </div>
249
+ </div>
250
+ </footer>
118
251
  </main>
119
252
  );
120
253
  }
@@ -123,8 +256,11 @@ export default function HomePage() {
123
256
 
124
257
  export default function Loading() {
125
258
  return (
126
- <div className="min-h-screen flex items-center justify-center">
127
- <div className="w-8 h-8 border-2 border-[#00FF9C] border-t-transparent rounded-full animate-spin" />
259
+ <div className="min-h-screen flex items-center justify-center bg-[#0a0a0a]">
260
+ <div className="flex flex-col items-center gap-4">
261
+ <div className="w-12 h-12 border-4 border-[#00FF9C]/20 border-t-[#00FF9C] rounded-full animate-spin" />
262
+ <span className="text-gray-400 text-sm">Loading...</span>
263
+ </div>
128
264
  </div>
129
265
  );
130
266
  }
@@ -135,12 +271,19 @@ import React from 'react';
135
271
 
136
272
  export default function Error({ error, reset }: { error: Error; reset: () => void }) {
137
273
  return (
138
- <div className="min-h-screen flex flex-col items-center justify-center p-8">
139
- <h1 className="text-4xl font-bold text-red-500 mb-4">Something went wrong</h1>
140
- <p className="text-gray-400 mb-8">{error.message}</p>
274
+ <div className="min-h-screen flex flex-col items-center justify-center p-8 bg-[#0a0a0a]">
275
+ <div className="max-w-md w-full p-6 rounded-2xl bg-red-500/10 border border-red-500/20 mb-8">
276
+ <div className="flex items-center gap-3 mb-4">
277
+ <div className="w-10 h-10 rounded-full bg-red-500/20 flex items-center justify-center">
278
+ <span className="text-red-500 text-xl">!</span>
279
+ </div>
280
+ <h2 className="font-bold text-lg text-red-400">Something went wrong</h2>
281
+ </div>
282
+ <p className="text-gray-400 text-sm">{error.message}</p>
283
+ </div>
141
284
  <button
142
285
  onClick={reset}
143
- className="px-6 py-3 bg-[#00FF9C] text-black font-semibold rounded-lg"
286
+ className="px-6 py-3 bg-[#00FF9C] text-black font-semibold rounded-xl hover:bg-[#00D68F] transition-all"
144
287
  >
145
288
  Try again
146
289
  </button>
@@ -152,15 +295,19 @@ export default function Error({ error, reset }: { error: Error; reset: () => voi
152
295
 
153
296
  export default function NotFound() {
154
297
  return (
155
- <div className="min-h-screen flex flex-col items-center justify-center p-8">
156
- <h1 className="text-6xl font-bold text-[#00FF9C] mb-4">404</h1>
157
- <p className="text-gray-400 text-xl mb-8">Page not found</p>
158
- <a
159
- href="/"
160
- className="px-6 py-3 bg-[#00FF9C] text-black font-semibold rounded-lg"
161
- >
162
- ← Back Home
163
- </a>
298
+ <div className="min-h-screen flex flex-col items-center justify-center p-8 bg-[#0a0a0a]">
299
+ <div className="text-center">
300
+ <h1 className="text-[150px] font-bold leading-none bg-gradient-to-b from-[#00FF9C] to-[#00FF9C]/20 bg-clip-text text-transparent">
301
+ 404
302
+ </h1>
303
+ <p className="text-gray-400 text-xl mb-8 -mt-4">Page not found</p>
304
+ <a
305
+ href="/"
306
+ className="inline-flex items-center gap-2 px-6 py-3 bg-[#00FF9C] text-black font-semibold rounded-xl hover:bg-[#00D68F] transition-all"
307
+ >
308
+ ← Back Home
309
+ </a>
310
+ </div>
164
311
  </div>
165
312
  );
166
313
  }
@@ -1 +1 @@
1
- {"version":3,"file":"app-router.js","sourceRoot":"","sources":["../../src/templates/app-router.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,UAAU,iBAAiB,CAAC,WAAmB;IACnD,OAAO;QACL,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC;YAC7B,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,GAAG,EAAE,+BAA+B;gBACpC,KAAK,EAAE,iCAAiC;gBACxC,KAAK,EAAE,kBAAkB;gBACzB,GAAG,EAAE,2EAA2E;aACjF;YACD,YAAY,EAAE;gBACZ,KAAK,EAAE,SAAS;gBAChB,WAAW,EAAE,SAAS;gBACtB,kBAAkB,EAAE,QAAQ;gBAC5B,IAAI,EAAE,QAAQ;gBACd,gBAAgB,EAAE,QAAQ;aAC3B;YACD,eAAe,EAAE;gBACf,cAAc,EAAE,SAAS;gBACzB,kBAAkB,EAAE,SAAS;gBAC7B,UAAU,EAAE,QAAQ;gBACpB,WAAW,EAAE,QAAQ;gBACrB,kBAAkB,EAAE,QAAQ;gBAC5B,sBAAsB,EAAE,QAAQ;aACjC;SACF,EAAE,IAAI,EAAE,CAAC,CAAC;QAEX,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC;YAC9B,eAAe,EAAE;gBACf,MAAM,EAAE,QAAQ;gBAChB,GAAG,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC;gBACtC,MAAM,EAAE,QAAQ;gBAChB,gBAAgB,EAAE,SAAS;gBAC3B,GAAG,EAAE,WAAW;gBAChB,MAAM,EAAE,IAAI;gBACZ,YAAY,EAAE,IAAI;gBAClB,eAAe,EAAE,IAAI;gBACrB,iBAAiB,EAAE,IAAI;gBACvB,eAAe,EAAE,IAAI;gBACrB,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,GAAG;gBACZ,KAAK,EAAE;oBACL,KAAK,EAAE,CAAC,KAAK,CAAC;iBACf;aACF;YACD,OAAO,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;YAChC,OAAO,EAAE,CAAC,cAAc,EAAE,QAAQ,EAAE,QAAQ,CAAC;SAC9C,EAAE,IAAI,EAAE,CAAC,CAAC;QAEX,mBAAmB,EAAE;;;;;CAKxB;QAEG,sBAAsB,EAAE;;;;CAI3B;QAEG,gBAAgB;QAChB,gBAAgB,EAAE;;;;;;;;;;;;;;;;;;CAkBrB;QAEG,cAAc,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCnB;QAEG,iBAAiB,EAAE;;;;;;;;;CAStB;QAEG,eAAe,EAAE;;;;;;;;;;;;;;;;;;CAkBpB;QAEG,mBAAmB,EAAE;;;;;;;;;;;;;;;;CAgBxB;QAEG,iBAAiB,EAAE;;;;;;;;;;;;CAYtB;QAEG,MAAM;QACN,cAAc,EAAE;;;;;;CAMnB;QAEG,SAAS;QACT,oBAAoB,EAAE;;;;;;;;;OASnB;QAEH,iBAAiB,EAAE,EAAE;QAErB,YAAY,EAAE;;;;;;;CAOjB;KACE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"app-router.js","sourceRoot":"","sources":["../../src/templates/app-router.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,UAAU,iBAAiB,CAAC,WAAmB;IACnD,OAAO;QACL,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC;YAC7B,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,GAAG,EAAE,+BAA+B;gBACpC,KAAK,EAAE,iCAAiC;gBACxC,KAAK,EAAE,kBAAkB;gBACzB,GAAG,EAAE,2EAA2E;aACjF;YACD,YAAY,EAAE;gBACZ,KAAK,EAAE,SAAS;gBAChB,WAAW,EAAE,SAAS;gBACtB,kBAAkB,EAAE,QAAQ;gBAC5B,sBAAsB,EAAE,QAAQ;gBAChC,IAAI,EAAE,QAAQ;gBACd,gBAAgB,EAAE,QAAQ;aAC3B;YACD,eAAe,EAAE;gBACf,cAAc,EAAE,SAAS;gBACzB,kBAAkB,EAAE,SAAS;gBAC7B,UAAU,EAAE,QAAQ;gBACpB,WAAW,EAAE,QAAQ;gBACrB,kBAAkB,EAAE,QAAQ;gBAC5B,sBAAsB,EAAE,QAAQ;aACjC;SACF,EAAE,IAAI,EAAE,CAAC,CAAC;QAEX,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC;YAC9B,eAAe,EAAE;gBACf,MAAM,EAAE,QAAQ;gBAChB,GAAG,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC;gBACtC,MAAM,EAAE,QAAQ;gBAChB,gBAAgB,EAAE,SAAS;gBAC3B,GAAG,EAAE,WAAW;gBAChB,MAAM,EAAE,IAAI;gBACZ,YAAY,EAAE,IAAI;gBAClB,eAAe,EAAE,IAAI;gBACrB,iBAAiB,EAAE,IAAI;gBACvB,eAAe,EAAE,IAAI;gBACrB,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,GAAG;gBACZ,KAAK,EAAE;oBACL,KAAK,EAAE,CAAC,KAAK,CAAC;iBACf;aACF;YACD,OAAO,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;YAChC,OAAO,EAAE,CAAC,cAAc,EAAE,QAAQ,EAAE,QAAQ,CAAC;SAC9C,EAAE,IAAI,EAAE,CAAC,CAAC;QAEX,mBAAmB,EAAE;;;;;CAKxB;QAEG,sBAAsB,EAAE;;;;CAI3B;QAEG,gBAAgB;QAChB,gBAAgB,EAAE;;;;;;;;;;;;;;;;;;CAkBrB;QAEG,cAAc,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwKnB;QAEG,iBAAiB,EAAE;;;;;;;;;;;;CAYtB;QAEG,eAAe,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;CAyBpB;QAEG,mBAAmB,EAAE;;;;;;;;;;;;;;;;;;;;CAoBxB;QAEG,iBAAiB,EAAE;;;;;;;;;;;;CAYtB;QAEG,MAAM;QACN,cAAc,EAAE;;;;;;CAMnB;QAEG,SAAS;QACT,oBAAoB,EAAE;;;;;;;;;OASnB;QAEH,iBAAiB,EAAE,EAAE;QAErB,YAAY,EAAE;;;;;;;CAOjB;KACE,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-flexireact",
3
- "version": "2.0.2",
3
+ "version": "3.0.0",
4
4
  "description": "Create FlexiReact v2 apps with one command - The Modern React Framework",
5
5
  "author": "FlexiReact Team",
6
6
  "license": "MIT",