Gere guias de integração, mapas de arquitetura e métricas em tempo real. Transforme seu código legado em uma base de conhecimento clara instantaneamente.
Documente projetos construídos com
export async function processSub(uId: string, plan: string) {
const user = await db.user.findById(uId);
if (!user.isActive) throw new Error("403");
if (user.sub === plan) return null;
const price = PRICING[plan];
// Charge the user
await stripe.charges.create({
amount: price * 100,
currency: 'usd',
customer: user.stripeId
});
await db.user.update(uId, { sub: plan, status: 'active' });
await email.sendWelcome(user.email, plan);
return true;
}/**
* Upgrades user subscription and handles payment processing.
*
* @description
* 1. Verifies user status (must be active).
* 2. Deduplicates requests (returns null if already on plan).
* 3. Charges card via Stripe and updates local DB.
*
* @param {string} uId - Internal user UUID.
* @param {string} plan - Target plan ID (e.g., 'PRO_YEARLY').
* @throws {Error} "403" if user is suspended/inactive.
* @returns {Promise<boolean|null>} True on success, null if no change needed.
*
* @example
* try {
* await processSub("user_123", "ENTERPRISE");
* } catch (err) {
* logger.error("Payment failed", err);
* }
*/
export async function processSub(uId: string, plan: string) {
const user = await db.user.findById(uId);
if (!user.isActive) throw new Error("403"); // User suspended
if (user.sub === plan) return null; // Already subscribed
const price = PRICING[plan];
// Charge the user
await stripe.charges.create({
amount: price * 100, // Convert to cents
currency: 'usd',
customer: user.stripeId
});
// Update db and send email
await db.user.update(uId, { sub: plan, status: 'active' });
await email.sendWelcome(user.email, plan);
return true;
}Lidamos com o trabalho pesado de forma assíncrona. Você obtém o resultado instantaneamente.
Tudo o que você precisa para transformar sua base de código em documentação clara e atualizada.
Integre-se diretamente ao seu pipeline de CI/CD ou execute localmente com um único comando.
Acompanhe a cobertura e a qualidade da documentação ao longo do tempo. Identifique módulos não documentados instantaneamente.
Nós não apenas adivinhamos. Analisamos o AST para entender a estrutura do seu código com precisão.
Seu código nunca treina nossos modelos. Infraestrutura em conformidade com SOC2 Tipo II.
Exporte para Markdown, PDF, Notion ou implante automaticamente como um site estático.
Acompanhe a dívida técnica, identifique riscos de "Bus Factor" e visualize a complexidade do código ao longo do tempo.
Bus Factor
1.2Risco Crítico: módulo `auth/core`
Manutenibilidade
A+Da visão geral de alto nível à manipulação de bytes de baixo nível. Geramos todos os formatos que sua equipe precisa.
Coloque um arquivo de configuração simples na raiz do seu projeto. Cuidamos da análise, dos limites de tokens e da engenharia de prompts automaticamente.
{
"project": "my-awesome-saas",
"entry": ["src/**/*.ts"],
"exclude": ["**/*.spec.ts"],
"output": {
"modes": ["onboarding", "technical", "migration-guide"],
"metrics": true,
"format": "markdown",
"path": "./docs"
},
"metrics": ["complexity", "bus-factor"]
}Para projetos de código aberto e pessoais
Comece grátisPara desenvolvedores profissionais
Seja ProPara equipes de engenharia
Entre em contato com vendas