Feature/Use fastify instead of express (#1)

- Replaced Apollo Server with Mercurius for GraphQL API
- Updated resolvers to use Mercurius-compatible GraphQL implementation
- Migrated from Express to Fastify for server framework
- Improved error handling with GraphQL error extensions
- Added Zod for environment variable validation
- Updated Prisma schema and migrations
- Configured CORS and WebSocket subscriptions
- Simplified GraphQL schema and resolver structure
- Enhanced type safety and code organization
- Replaced Apollo Server with Mercurius for GraphQL API
- Updated resolvers to use Mercurius-compatible GraphQL implementation
- Migrated from Express to Fastify for server framework
- Improved error handling with GraphQL error extensions
- Added Zod for environment variable validation
- Updated Prisma schema and migrations
- Configured CORS and WebSocket subscriptions
- Simplified GraphQL schema and resolver structure
- Enhanced type safety and code organization

Reviewed-on: #1
Co-authored-by: Jusemon <juansmm@outlook.com>
Co-committed-by: Jusemon <juansmm@outlook.com>
This commit is contained in:
Juan Sebastián Montoya 2025-03-06 19:15:56 -05:00 committed by Juan Sebastián Montoya
parent b4e5a04126
commit 6214b503bc
47 changed files with 4968 additions and 5424 deletions

View file

@ -1,9 +1,9 @@
"use client";
'use client';
import { ReactNode } from "react";
import { JSX } from 'solid-js/jsx-runtime';
interface ButtonProps {
children: ReactNode;
children: JSX.Element;
className?: string;
appName: string;
}
@ -11,7 +11,7 @@ interface ButtonProps {
export const Button = ({ children, className, appName }: ButtonProps) => {
return (
<button
className={className}
class={className}
onClick={() => alert(`Hello from your ${appName} app!`)}
>
{children}

View file

@ -1,4 +1,4 @@
import { type JSX } from "react";
import { type JSX } from 'solid-js/jsx-runtime';
export function Card({
className,
@ -8,15 +8,15 @@ export function Card({
}: {
className?: string;
title: string;
children: React.ReactNode;
children: JSX.Element;
href: string;
}): JSX.Element {
return (
<a
className={className}
class={className}
href={`${href}?utm_source=create-turbo&utm_medium=basic&utm_campaign=create-turbo"`}
rel="noopener noreferrer"
target="_blank"
rel='noopener noreferrer'
target='_blank'
>
<h2>
{title} <span>-&gt;</span>

View file

@ -1,11 +1,11 @@
import { type JSX } from "react";
import { type JSX } from 'solid-js/jsx-runtime';
export function Code({
children,
className,
}: {
children: React.ReactNode;
children: JSX.Element;
className?: string;
}): JSX.Element {
return <code className={className}>{children}</code>;
return <code class={className}>{children}</code>;
}