import { RiAndroidLine, RiGithubFill, RiShieldCheckLine, RiSmartphoneLine, } from "@remixicon/react"; import { headers } from "next/headers"; import Image from "next/image"; import Link from "next/link"; import { AnimateOnScroll } from "@/features/landing/components/animate-on-scroll"; import { MobileNav } from "@/features/landing/components/mobile-nav"; import { ScreenshotTabs } from "@/features/landing/components/screenshot-tabs"; import { SetupTabs } from "@/features/landing/components/setup-tabs"; import { companionBanks, companionSteps, extraFeatures, getMetricsItems, mainFeatures, navLinks, pwaHighlights, stackItems, whoIsItForItems, } from "@/features/landing/constants"; import { landingImages } from "@/features/landing/images"; import { fetchGitHubStats } from "@/features/landing/queries"; import { AnimatedThemeToggler } from "@/shared/components/animated-theme-toggler"; import { Logo } from "@/shared/components/logo"; import { NavbarShell } from "@/shared/components/navigation/navbar/navbar-shell"; import { Badge } from "@/shared/components/ui/badge"; import { Button } from "@/shared/components/ui/button"; import { Card, CardContent } from "@/shared/components/ui/card"; import { DotPattern } from "@/shared/components/ui/dot-pattern"; import { getOptionalUserSession } from "@/shared/lib/auth/server"; export default async function Page() { const [session, headersList, githubStats] = await Promise.all([ getOptionalUserSession(), headers(), fetchGitHubStats(), ]); const hostname = headersList.get("host")?.replace(/:\d+$/, ""); const publicDomain = process.env.PUBLIC_DOMAIN?.replace( /^https?:\/\//, "", ).replace(/:\d+$/, ""); const isPublicDomain = !!(publicDomain && hostname === publicDomain); const metricsItems = getMetricsItems(githubStats.stars, githubStats.forks); return (
Gestão financeira self-hosted e open source. Lance manualmente ou capture notificações bancárias direto pelo{" "} Companion para Android . Seus dados, seu servidor.
Explore as principais telas do OpenMonetis
Ferramentas simples para organizar suas contas, cartões, gastos e receitas
{feature.description}
{feature.description}
Instale como PWA para acesso rápido no dia a dia. No Android, use o Companion para capturar notificações bancárias automaticamente.
Adicione à tela inicial e abra direto, como um app. Sem depender de uma aba perdida no navegador. Funciona em Android, iOS e desktop.
{item.title} {" "} — {item.description}
O Companion captura notificações de apps bancários e cria pré-lançamentos automaticamente para você revisar na inbox.
{step.title} {" "} — {step.description}
Bancos testados
Self-hosted, open source, type-safe do banco ao frontend
{item.subtitle}
Não há versão hospedada online. Você precisa rodar localmente.
O OpenMonetis não é para todo mundo.
{item.description}
Clone o repositório, rode localmente e veja se faz sentido pra você. É open source e gratuito.