تخطَّ إلى المحتوى

إعداد يدوي

أسرع طريقة لإنشاء موقع Saasfly جديد هي استخدام create saasfly كما هو موضح في دليل التثبيت.

متطلبات النظام

  • Node.js - 18.17 أو أحدث.
  • Bun - 1.0 أو أحدث.
  • OS - يتم دعم macOS، وWindows (بما في ذلك WSL)، وLinux.

بالمناسبة، نوصي باستخدام NVM (Node Version Manager) لتشغيل إصدارات مختلفة من Node.js.

1. التثبيت اليدوي

لإنشاء تطبيق Saasfly جديد يدويًا، تحتاج فقط إلى اتباع بضع خطوات:

مستودع الشوكة والاستنساخ من GitHub

يرجى فتح https://github.com/saasfly/saasfly، وتفرع هذا المستودع.

الشوكة هي نسخة من المستودع. تتيح لك الشوكة تجربة التغييرات بحرية دون التأثير على المشروع الأصلي.

استنسخ المستودع المتشعب (يرجى استبدال <your_username> باسم حسابك على GitHub):

Terminal window
git clone https://github.com/<your_username>/saasfly.git

ستشاهد عملية الاستنساخ:

remote: Enumerating objects: 402, done.
remote: Counting objects: 100% (402/402), done.
remote: Compressing objects: 100% (298/298), done.
remote: Total 402 (delta 77), reused 386 (delta 65), pack-reused 0
Receiving objects: 100% (402/402), 963.18 KiB | 130.00 KiB/s, done.
Resolving deltas: 100% (77/77), done.

تثبيت التبعيات

للحصول على تجربة أفضل، يرجى استخدام Bun (كيفية تثبيت Bun)، بدلاً من npm أو yarn.

استخدام bun لتثبيت التبعيات:

Terminal window
bun i

قد يستغرق الأمر عدة دقائق، وبعد ذلك سترى:

+ @saasfly/api@workspace:packages/api
+ @saasfly/auth@workspace:packages/auth
+ @saasfly/common@workspace:packages/common
+ @saasfly/db@workspace:packages/db
+ @saasfly/eslint-config@workspace:tooling/eslint-config
+ @saasfly/nextjs@workspace:apps/nextjs
+ @saasfly/prettier-config@workspace:tooling/prettier-config
+ @saasfly/stripe@workspace:packages/stripe
+ @saasfly/tailwind-config@workspace:tooling/tailwind-config
+ @saasfly/typescript-config@workspace:tooling/typescript-config
+ @saasfly/ui@workspace:packages/ui
+ @turbo/[email protected] (v1.12.4 available)
+ [email protected] (v1.12.4 available)
1296 packages installed [1133.89s]

إنشاء أنواع Prisma

يرجى التأكد من وجودك في مجلد saasfly، ثم استخدام bun لتوليد أنواع Prisma:

Terminal window
cd packages/db/
bun db:generate

انتاج:

✔ Generated Kysely types(1.7.1) to./ prisma in 1.32s

2. ابدأ Saasfly

ينبغي عليك القيام بالقوائم أدناه لتشغيل الخادم.

إعداد متغيرات البيئة

قم بالدخول إلى مجلد saasfly، ثم قم بنسخ الملف .env.example، ثم قم بإعادة تسميته إلى .env.local، ثم أدخل المتغيرات الخاصة بك.

Terminal window
cd saasfly
cp .env.example .env.local

تأكد من أن لديك قاعدة بيانات Postgres (إذا لم يكن لديك Postgres، فانقر هنا) وقمت بإنشاء قاعدة بيانات جديدة.

يجب أن يكون POSTGRES_URL موجودًا في ملف .env.local الخاص بك:

# مثال على التنسيق
# POSTGRES_URL="postgres://{USER}:{PASSWORD}@{DB_HOST}:{DB_PORT}/{DATABASE}"
POSTGRES_URL="postgres://postgres:[email protected]:5432/saasfly"

بعد ذلك، استخدم bun لإنشاء جداول قاعدة البيانات:

Terminal window
bun db:push

انتاج:

🚀 Your database is now in sync with your Prisma schema. Done in 151ms
┌─────────────────────────────────────────────────────────┐
│ Update available 5.9.1 -> 5.10.2 │
│ Run the following to update │
│ npm i --save-dev prisma@latest │
│ npm i @prisma/client@latest │
└─────────────────────────────────────────────────────────┘

إذا حدث خطأ ما، يمكنك التحدث إلينا على Discord، وسنكون سعداء بالإجابة على أي شيء يتعلق بـ Saasfly.

قم بتشغيل البناء أولاً

نظرًا لأن بعض المكونات الأساسية تتطلب وقت التجميع، فيجب عليك run build أولًا.

Terminal window
bun run build

تشغيل خادم التطوير

استخدم bun run لبدء تشغيل خادم الويب الخاص بك:

Terminal window
bun run dev:web
@saasfly/nextjs:dev: cache bypass, force executing ad8bea47f156e113
@saasfly/nextjs:dev: $ bun with-env next dev
@saasfly/nextjs:dev: $ dotenv -e ../../.env.local -- next dev
@saasfly/nextjs:dev: ▲ Next.js 14.1.0
@saasfly/nextjs:dev: - Local: http://localhost:3000
@saasfly/nextjs:dev:
@saasfly/nextjs:dev: automatically enabled Fast Refresh for 1 custom loader
@saasfly/nextjs:dev: ✓ Ready in 12.1s

إذا سارت الأمور على ما يرام، فيجب أن يقوم Saasfly الآن بخدمة مشروعك على http://localhost:3000 ، ويمكنك رؤية النتيجة:

Installation

مبروك! يمكنك الآن البدء في كتابة التعليمات البرمجية لبناء برنامج SaaS الخاص بك.

إذا كنت جديدًا على Saasfly، فراجع مستندات هيكل المشروع للحصول على نظرة عامة على جميع الملفات والمجلدات المحتملة في تطبيقك.

تشغيل مع Stripe

يرجى قراءة المقال Stripe. ثم استخدم bun dev لتشغيل Stripe:

Terminal window
bun dev