Giriş & Hızlı Başlangıç
SaaS geliştirmenin geleceğine hoş geldiniz.
RapidCore sıradan bir başlangıç şablonu değildir. Yüksek performanslı SaaS uygulamaları oluşturmak, ölçeklendirmek ve satmak isteyen ciddi geliştiriciler için tasarlanmış, retime hazır bir monorepo fabrikasıdır. İster basit bir B2B paneli, ister yapay zeka destekli yaratıcı bir araç, isterse rekabetçi bir çok oyunculu oyun geliştiriyor olun, RapidCore ihtiyacınız olan optimize edilmiş temeli sağlar.
Neden Monorepo?
RapidCore, uygulamaları (apps/web-starter, apps/ai-starter, apps/game-starter) birbirinden ayırırken, ortak packages/core (Veritabanı/Kimlik Doğrulama) ve packages/ui (Tasarım Sistemi) kütüphanelerini paylaşır. Bu, ölçeklendikçe kodunuzun temiz ve bakımı kolay kalmasını sağlar.
⚡ 5 Dakikada Hızlı Başlangıç
İmparatorluğunuzu kurmak için bu adımları izleyin.
1. Kurulum
Depoyu klonlayın ve bağımlılıkları pnpm kullanarak yükleyin.
git clone https://github.com/rapidcore/rapidcore-monorepo.git
cd rapidcore-monorepo
pnpm install
2. Ortam Kurulumu
Örnek ortam dosyasını kopyalayın ve gizli anahtarlarınızı oluşturun.
cp .env.example .env
npx rapid-init secrets
3. Geliştirme Merkezini Başlatın
Tüm uygulamaları (Web, AI, Oyun, Dokümantasyon) paralel modda başlatın.
npx pnpm dev
Artık şu adreslere erişebilirsiniz:
- Landing & Web SaaS:
http://localhost:3001 - AI Stüdyosu:
http://localhost:3002 - Oyun Motoru:
http://localhost:3003 - Dokümantasyon:
http://localhost:3000
Mimari Genel Bakış
RapidCore, derleme hattını yönetmek için TurboRepo kullanır.
apps/: Son kullanıcıya dönük uygulamalar.packages/: Paylaşılan dahili kütüphaneler.ui: Shadcn/ui + Tailwind v4 bileşenleri.core: Prisma, Auth.js ve paylaşılan iş mantığı.config: TypeScript ve ESLint yapılandırmaları.
Modüller Arası Veri ve Mantık Paylaşımı (Turborepo)
RapidCore'un en büyük gücü, packages/core içindeki iş mantığını (Business Logic) tüm uygulamalar arasında paylaştırmasıdır.
- Paylaşılan Modeller: Veri tabanı şemanız (
prisma.schema) merkezi olarak tanımlanır ve tümapps/klasöründeki projeler aynı tür tanımlarını (TypeScript types) kullanır. - İş Mantığı İthalatı: Örneğin, bir kullanıcıya ödül verme mantığını (
awardBadge) bir kezcoreiçinde yazıp hem Oyun modülünde hem de Web profil sayfasında kullanabilirsiniz.
// Herhangi bir uygulama içinden (web, ai, game)
import { awardBadge } from "@rapidcore/core";
Bir iş mantığını birden fazla uygulamada kullanacaksanız, kod tekrarını önlemek için onu mutlaka packages/core içine taşıyın. Bu, projenizin bakımını (maintenance) inanılmaz kolaylaştıracaktır.
Özelleştirmeye hazır mısınız? Sıradaki Yapılandırma rehberine göz atın.