import { useState, useEffect } from "react" // Next.js 14 import { useState, useEffect } from "react" // Next.js 14 import { useState, useEffect } from "react" // Next.js 14
const Hero = ({ data }: Props) => { // Server Component const Hero = ({ data }: Props) => { // Server Component const Hero = ({ data }: Props) => { // Server Component
return (<section className="hero-section"> return (<section className="hero-section"> return (<section className="hero-section">
<motion.div initial={{ opacity: 0 }} animate={{ opacity: 1 }} <motion.div initial={{ opacity: 0 }} animate={{ opacity: 1 }} <motion.div initial={{ opacity: 0 }} animate={{ opacity: 1 }}
<h1 className="text-9xl font-bold" TUDO É POSSÍVEL </h1> <h1 className="text-9xl font-bold" TUDO É POSSÍVEL </h1> <h1 className="text-9xl font-bold" TUDO É POSSÍVEL </h1>
export default Hero // pages/index.tsx export default Hero // pages/index.tsx export default Hero // pages/index.tsx
@tailwind base; @tailwind components; @tailwind utilities; @tailwind base; @tailwind components; @tailwind utilities; @tailwind base; @tailwind components; @tailwind utilities;
.hero { display: flex; gap: 1rem; background: #0a0a0a; } .hero { display: flex; gap: 1rem; background: #0a0a0a; } .hero { display: flex; gap: 1rem; background: #0a0a0a; }
bg-black text-primary font-bold tracking-tight rounded-full border-2 border-primary/40 backdrop-blur-[2px] bg-black text-primary font-bold tracking-tight rounded-full border-2 border-primary/40 backdrop-blur-[2px] bg-black text-primary font-bold tracking-tight rounded-full border-2 border-primary/40 backdrop-blur-[2px]
@apply flex items-center justify-center min-h-screen overflow-hidden bg-background @apply flex items-center justify-center min-h-screen overflow-hidden bg-background @apply flex items-center justify-center min-h-screen overflow-hidden bg-background
shadow-[0_0_250px_hsl(var(--primary)/_0.4)] from-primary/20 to-primary/10 shadow-[0_0_250px_hsl(var(--primary)/_0.4)] from-primary/20 to-primary/10 shadow-[0_0_250px_hsl(var(--primary)/_0.4)] from-primary/20 to-primary/10
import { initializeApp } from "firebase/app" // v10 import { initializeApp } from "firebase/app" // v10 import { initializeApp } from "firebase/app" // v10
const db = getFirestore(app) // Realtime const db = getFirestore(app) // Realtime const db = getFirestore(app) // Realtime
await db.collection("users").doc(uid).set({ name, email }) await db.collection("users").doc(uid).set({ name, email }) await db.collection("users").doc(uid).set({ name, email })
const snap = await getDocs(query(col, where("role", "==", "admin")) const snap = await getDocs(query(col, where("role", "==", "admin")) const snap = await getDocs(query(col, where("role", "==", "admin"))
onSnapshot(docRef, (snap) => setData(snap.data())) onSnapshot(docRef, (snap) => setData(snap.data())) onSnapshot(docRef, (snap) => setData(snap.data()))
type Props = { id: string; onClick?: () => void } type Props = { id: string; onClick?: () => void } type Props = { id: string; onClick?: () => void }
interface User { name: string; role: "admin" | "user" } interface User { name: string; role: "admin" | "user" } interface User { name: string; role: "admin" | "user" }
const fn = async<T extends Record<string, unknown>>(payload: T): Promise<T> const fn = async<T extends Record<string, unknown>>(payload: T): Promise<T> const fn = async<T extends Record<string, unknown>>(payload: T): Promise<T>
export default function Page(): JSX.Element { /* render */ } export default function Page(): JSX.Element { /* render */ } export default function Page(): JSX.Element { /* render */ }

COM A NEWTUDO É POSSÍVEL

Criamos o ativo digital perfeito para o seu negócio. Conheça nosso modelo SWAS.

SCROLL
NEW

↔ ARRASTE PARA GIRAR

Quem é a NEW
VOCÊ FALA DIRETO
COM QUEM PROGRAMA.

Agência pequena e direta. Você fala com quem programa o seu site, sem call center no meio. E no fim ele é seu de verdade: código, domínio e acessos na sua mão.

"Você não aluga o seu site. Você é dono dele."

1xpagamento único
0mensalidade
100%código seu
01Preço

Sem mensalidade

Você paga uma vez. Depois, só domínio e hospedagem, que custam pouco.

02Seu

Você é o dono

No fim você recebe o código, o domínio e os acessos. Leva pra onde quiser.

03Direto

Fala com quem faz

Quem te responde no WhatsApp é quem programa o seu site. Sem intermediário.

1xPagamento único
0Mensalidade
100%Código seu
O Modelo
SAAS É ALUGUEL
SWAS É PATRIMÔNIO.

Cansado de pagar por uma ferramenta que nunca vai ser sua?
Com a NEW é o contrário: você paga uma vez e leva o código com você.

SAAS

Plataforma Compartilhada · Assinatura

Custo real

Todo mês pra sempre

Você paga todo mês

E isso nunca para. Parou de pagar, perdeu o acesso.

Modelo de prateleira

Seu site fica igual ao de mil outros. Nada só seu.

Preso na plataforma

Mudou a regra ou o preço? Você só aceita.

SWAS

Sistema Proprietário · Sob Medida

Modelo

investimento único

É seu de verdade

Código, domínio e acessos ficam na sua mão.

Feito pro seu negócio

Construído pra como você trabalha, não pro mercado inteiro.

Pronto pra crescer

Dá pra ampliar e mudar quando o negócio pedir.

AUTONOMIA TOTAL. SEMPRE.

Como Trabalhamos
DO BRIEFING
AO LANÇAMENTO.

Processo transparente e colaborativo — você acompanha cada etapa.

01

Briefing

Entendemos suas necessidades, objetivos e contexto de negócio.

02

Protótipo

Criamos um design visual e funcional para validar o caminho.

03

Aprovação

Refinamos o protótipo com base no seu feedback — nada sem sua aprovação.

04

Desenvolvimento

Codificamos com tecnologia de ponta: Next.js, TypeScript, Firebase.

05

Testes

Garantimos qualidade, performance e segurança em cada detalhe.

06

Entrega

Lançamos e entregamos todos os acessos — o projeto é seu.

07

Suporte

Estamos ao lado do seu crescimento com suporte contínuo e real.

Dúvidas Frequentes
SUAS DÚVIDAS,
RESPONDIDAS.

Clareza antes de começar. Transparência durante o processo.

Fale com a NEW
VAMOS CONSTRUIR
SEU FUTURO.

Conta sua ideia. A gente pega e faz virar realidade — com código que é seu.

WhatsApp

(11) 91626-4441

Instagram

@new.c0de

E-mail

contato@agencianew.site

Nossa Promessa

Resposta em até 24h

Orçamento sem compromisso

Código 100% seu ao final