MCPcopy Index your code
hub / github.com/2234839/TsFullStack

github.com/2234839/TsFullStack @v0.0.6

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.0.6 ↗ · + Follow
1,191 symbols 2,992 edges 236 files 231 documented · 19%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

TsFullStack

English Document 中文文档 Documentation Française


Ceci est mon projet de meilleures pratiques TypeScript full-stack. Après avoir défini les modèles de données, il permet d'opérer directement sur la base de données depuis le frontend sans écrire de code d'API backend, pour un développement rapide de modèles MVP.

Je suis vraiment fatigué des pages administratives traditionnelles, je ne veux plus jamais les écrire.

Démo en Ligne

zread Documentation AI du Projet

Adresse de la documentation

Fonctionnalités

  • Backend
  • Stack technique : TypeScript + Prisma + ZenStack + Effect + Fastify
  • ZenStack (solution améliorée basée sur Prisma) pour la modélisation de base de données et la sécurité au niveau des lignes (Row Level Security).

  • Pont

  • Stack technique : TypeScript + SuperJSON + bibliothèque RPC maison
  • Le frontend appelle directement les API backend avec une complétion de types TypeScript complète, sans avoir besoin d'écrire de code de couche intermédiaire.
  • SuperJSON prend en charge la sérialisation et désérialisation d'objets complexes comme Date, Map, Set, RegExp..., assurant une transmission transparente des paramètres et résultats Prisma.

  • Frontend

  • Stack technique : TypeScript + Vue 3 + Tailwind CSS + bibliothèque de composants PrimeVue
  • Support i18n internationalisation parfait, assurant que chaque détail supporte le changement dynamique de multilingue sans recharger la page.
  • Changement de thème clair/sombre, les composants et Tailwind CSS supportent le changement dynamique synchrone.
  • Quelques pages fonctionnelles implémentées
  • Panneau d'administration de type Prisma Studio (peut servir comme alternative open-source dans une certaine mesure), plus besoin d'écrire des pages CRUD monotones.
  • NoteCalc Un bloc-notes de calcul en temps convivial pour le chinois
  • AiEnglish Apprendre l'anglais progressivement en lisant

Autres exemples d'applications

  • Extension de navigateur - InfoFlow
  • Basée sur https://wxt.dev/guide/installation.html, pour démontrer comment utiliser tsfullstack comme support backend pour les extensions de navigateur.

Démarrage rapide

  1. Cloner le projet
  2. Installer les dépendances : entrer dans le répertoire backend, exécuter pnpm i pour installer les dépendances (ignorer l'erreur : Failed to resolve entry for package "@tsfullstack/backend", nous générerons ce package dans les étapes suivantes)
  3. Initialiser la base de données : dans le répertoire backend, exécuter pnpm zenstack generate et pnpm prisma migrate dev
  4. Compiler le package API @tsfullstack/backend : dans le répertoire backend, exécuter pnpm build:lib (il y aura des erreurs de types, je n'ai pas encore trouvé de bonne solution, mais cela n'affecte pas l'utilisation, ne vous en souciez pas)
  5. Démarrer le service backend : dans le répertoire backend, exécuter pnpm dev
  6. Démarrer le service frontend : dans le répertoire website-frontend, exécuter pnpm dev

Conception de la structure du projet

Philosophie de conception

  • Base du projet
  • apps/website-frontend est le projet de base frontend
  • apps/backend est le projet de base backend
  • Code projet frontend/backend modulaire
  • modules/*
  • Le code frontend à l'intérieur d'un module peut directement référencer les interfaces de code backend internes du module

Extension points exported contracts — how you extend this code

ToolDefinition (Interface)
(no doc) [6 implementers]
apps/agent/src/types.ts
StorageAdapter (Interface)
(no doc) [3 implementers]
apps/InfoFlow/storage/storageAdapter.ts
RateLimitCheck (Interface)
频率限制检查结果
apps/backend/src/Context/AIProxyService.ts
APIResponse (Interface)
RPC 响应的统一结构
apps/website-frontend/src/api.ts
ModuleDiscoveryOptions (Interface)
(no doc)
packages/module-loader/src/types.ts
BaseModuleConfig (Interface)
(no doc)
packages/shared-frontend/src/types/index.ts
LineResult (Interface)
(no doc)
packages/note-calc-engine/src/types.ts
Env (Interface)
(no doc)
apps/api-proxy/src/index.ts

Core symbols most depended-on inside this repo

log
called by 507
apps/agent/src/logger.ts
t
called by 138
apps/website-frontend/src/router.ts
error
called by 87
apps/agent/src/logger.ts
fail
called by 74
apps/backend/src/util/error.ts
get
called by 62
apps/backend/src/util/lruCache.ts
set
called by 54
apps/backend/src/util/lruCache.ts
msg
called by 48
apps/backend/src/util/error.ts
warn
called by 46
apps/agent/src/logger.ts

Shape

Function 551
Method 363
Interface 171
Class 105
Enum 1

Languages

TypeScript100%

Modules by API surface

apps/website-frontend/src/utils/storage.repository.ts76 symbols
apps/InfoFlow/entrypoints/background/service/dbService.ts56 symbols
apps/agent/src/agent.ts43 symbols
apps/agent/src/task-manager.ts36 symbols
apps/InfoFlow/entrypoints/background/service/taskExecutionService.ts27 symbols
packages/note-calc-engine/src/parser/parser.ts26 symbols
apps/website-frontend/src/components/AutoTable/type.ts24 symbols
apps/agent/src/storage.ts23 symbols
apps/website-frontend/src/pages/noteCalc/useCalculator.ts21 symbols
apps/agent/src/tool-registry.ts21 symbols
apps/agent/src/logger.ts20 symbols
apps/agent/src/llm-service.ts20 symbols

For agents

$ claude mcp add TsFullStack \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact