דלג לתוכן הראשי

עד כמה טוב הוא קורא את המוצר שלכם

‏Syncanix מגלה מה המוצר שלכם יודע לעשות בכך שהוא קורא אותו. זה עובד רק אם הוא קורא טוב, ולכן אנחנו מודדים את זה על פרויקטים ציבוריים אמיתיים, מפרסמים את התוצאה, וקושרים כל מספר בעמוד הזה לחבילת הבדיקות שמייצרת אותו. אם הקריאה נחלשת, הבנייה נכשלת לפני שהעמוד הזה יכול להגזים.

התוצאות המרכזיות

100.0%מכל מה שפרויקט באמת יודע לעשות נמצא
100.0%מכל מה שהוא רשם התברר כאמיתי
27פרויקטים ציבוריים אמיתיים, כל אחד מול רשימה שנכתבה ידנית
30פריימוורקים נתמכים ב-19 שפות

אומת לאחרונה: 2026-07-18 · f8a6fe3c

איך זה נמדד

  • פתרון הבחינה נכתב ידנית

    עבור כל פרויקט קראנו את הקוד בעצמנו ורשמנו כל פעולה שבאמת קיימת בו. אחר כך Syncanix מקבל ציון מול הרשימה הזאת: כמה מתוכה מצא, וכמה ממה שמצא באמת היה שם.

  • מה נחשב התאמה

    הוא צריך לנקוב באותה פעולה באותה כתובת, כולל כל קידומת שהקוד מוסיף. משתני מיקום מושווים לפי מיקום ולא לפי שם, כך ששתי דרכים לכתוב «המזהה של ההזמנה» באותו מקום נחשבות לאותו דבר.

  • הוא רק קורא, לעולם לא מריץ דבר

    הגילוי קורא קוד מקור. הוא לעולם לא מריץ את האפליקציה שלכם, לא מנטר תעבורה ולא קורא לשום דבר. כל מספר כאן יצא מאותה קריאה ש-`npx syncanix init` מבצע אצלכם במחשב.

  • נבדק בכל שינוי, ומקובע בבדיקות

    פרויקטי הדוגמה נקראים מחדש בכל שינוי בקורא, והמספרים בעמוד הזה קשורים בבדיקות למה שאותה הרצה מייצרת. נסיגה מפילה את הבנייה לפני שהיא יכולה לצאת לאוויר.

פרויקטים ציבוריים אמיתיים, מדורגים

27 פרויקטים אמיתיים, רובם אפליקציות ייחוס בקוד פתוח, לכל אחד פתרון שנכתב ידנית. הפרויקטים ציבוריים, כך שתוכלו לקרוא בדיוק את אותם קבצים שקראנו.

פרויקטים ציבוריים אמיתיים, מדורגים
פריימוורקפרויקטפעולות אמיתיותממה שקיים, נמצאממה שרשם, אמיתי
Expressgothinkster/node-express-realworld-example-app20100%100%
NestJSlujakob/nestjs-realworld-example-app21100%100%
FastAPInsidnev/fastapi-realworld-example-app19100%100%
Flaskgothinkster/flask-realworld-example-app19100%100%
Djangogothinkster/django-realworld-example-app23100%100%
Railsgothinkster/rails-realworld-example-app20100%100%
Laravelf1amy/laravel-realworld-example-app19100%100%
Gingothinkster/golang-gin-realworld-example-app20100%100%
Spring Bootgothinkster/spring-boot-realworld-example-app19100%100%
Actixsnamiki1212/realworld-v1-rust-actix-web-diesel20100%100%
ASP.NET Coregothinkster/aspnetcore-realworld-example-app19100%100%
GraphQLhowtographql/graphql-js8100%100%
Fastifyfastify/demo14100%100%
gRPCgrpc/grpc-go4100%100%
Axumtokio-rs/axum4100%100%
Playplayframework/play-samples3100%100%
Fibergofiber/recipes8100%100%
Vaporvapor/api-template4100%100%
Chigo-chi/chi12100%100%
Echoxesina/golang-echo-realworld-example-app20100%100%
Phoenixgothinkster/elixir-phoenix-realworld-example-app26100%100%
net/httpleeprovoost/go-rest-api-template12100%100%
Dreamaantron/dream2100%100%
Cowboyninenines/cowboy1100%100%
Compojurefurkan3ayraktar/clojure-polylith-realworld-example-app22100%100%
Servantjeukshi/haskell-servant-realworld-example-app19100%100%
Plumbertmobile/r-tensorflow-api1100%100%

אפליקציות דוגמה שנבנו במיוחד

אפליקציה קטנה לכל פריימוורק, שנכתבה כדי לאתגר אותו, מדורגת מול מינימום שכל אחת חייבת לעבור. זו הקבוצה שרצה בכל שינוי בקורא.

אפליקציות דוגמה שנבנו במיוחד
פריימוורקאפליקציות דוגמהמשולבמינימום נדרש
nestjs5100%92%
express3100%85%
fastapi8100%92%
fastify3100%85%
nextjs8100%92%
graphql5100%100%
grpc1100%92%
trpc3100%92%
websocket2100%85%
springboot2100%85%
django2100%85%
flask2100%85%
rails392.6%85%
phoenix1100%85%
gin1100%85%
chi1100%85%
echo1100%85%
fiber1100%85%
net-http1100%85%
actix2100%85%
axum3100%85%
laravel2100%85%
aspnet1100%85%
koa1100%85%
hapi1100%85%
elysia1100%85%
litestar1100%85%
sinatra1100%85%
ktor1100%85%
vapor1100%75%
play1100%75%
compojure1100%75%
dream2100%75%
servant1100%75%
cowboy2100%75%
plumber1100%75%
lapis2100%75%

פרויקטים אמיתיים שלמים, מקובעים לגרסה אחת

פרויקטים אמיתיים מלאים, מקובעים לגרסה אחת כדי שהציון לא יזוז מעצמו, נמדדים מול התיאור שהפרויקט מפרסם על עצמו או מול רשימה שנכתבה ידנית.

פרויקטים אמיתיים שלמים, מקובעים לגרסה אחת
פריימוורקאפליקציית דוגמהציון משולבנמדד מול
FastAPIfastapi-realworld@029eb77100%openapi
Honohono-open-api-starter@0d5f3bf100%hand-labelled
Symfonysymfony-realworld@5ad39de100%openapi

מה המספרים האלה לא טוענים

  • אלה פרויקטי ייחוס, לא מדגם אקראי של כל התוכנה שבעולם. שלכם יכול להיות שונה, ובדיוק לכן ההתקנה כותבת לכם רשימה לעבור עליה במקום לבקש שתאמינו לנו.
  • זה מודד את הקריאה: אילו פעולות קיימות והיכן. עד כמה כל אחת מהן מתוארת אחר כך נבדק בנפרד ואינו חלק מהמספרים האלה.
  • השאלה אם פעולה דורשת התחברות מסומנת בזהירות אצל חלק מהקוראים, ויכולה לחלוק על התיאור שהפרויקט עצמו מפרסם בפעולות שהן באמת ציבוריות. הציון שלמעלה עוסק במציאת הפעולות, לא בסימון הזה.

בדקו את זה על הקוד שלכם

הבדיקה היחידה שבאמת חשובה היא המוצר שלכם: הריצו את ההתקנה וקראו את הרשימה שהיא כותבת. כל יכולת מציינת את הקובץ והשורה שממנה הגיעה, כך שאפשר להעמיד את הרשימה מול הקוד שלכם תוך דקות. כדי לשחזר בעצמכם את המספרים בעמוד הזה:

pnpm --filter syncanix test:f1
pnpm --filter syncanix scan:real

פריימוורקים נתמכים מפרט כל פריימוורק ושפה שהוא יודע לקרוא, ומה לעשות אם שלכם לא ברשימה.