mcpField
L
low-code-platforms

low-code-platforms

github.com/travisjneuman开发10695 次安装1 天前更新
代码仓库

关于 low-code-platforms

面向开发者的低代码平台选型与集成指南,介绍 Retool、Supabase、Appsmith、Tooljet、n8n 和 Zapier 的适用方向。还涵盖自定义代码、API 优先后端、混合架构和数据同步模式。

主要功能

  1. 01比较常见低代码平台用途
  2. 02展示 Supabase 身份验证示例
  3. 03展示 Retool SQL 查询模式
  4. 04说明 n8n 工作流结构
  5. 05介绍自定义代码与混合架构
  6. 06概述 Webhook 数据同步与自托管

适用场景

  1. 01选择内部工具或管理面板平台
  2. 02用 Supabase 构建带身份验证的后端
  3. 03通过 n8n 或 Zapier 同步 SaaS 数据
  4. 04为数据主权需求评估自托管平台

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/travisjneuman/.claude --skill low-code-platforms

安装后在 Claude Code 中输入/low-code-platforms确认已加载。

详细介绍

低代码和内部工具平台

平台选择

平台最适合定价模式
Retool内部工具、管理面板按用户收费
Supabase后端即服务、身份验证、数据库按使用量收费
Appsmith内部工具(开源)免费自托管
Tooljet内部工具(开源)免费自托管
n8n工作流自动化(开源)免费自托管
ZapierSaaS 到 SaaS 集成按任务收费

Supabase

import { createClient } from '@supabase/supabase-js';

const supabase = createClient(SUPABASE_URL, SUPABASE_ANON_KEY);

// Auth
const { data: { user } } = await supabase.auth.signUp({
  email: '[email protected]',
  password: 'secure-password',
});

// Database (auto-generated REST API from Postgres)
const { data, error } = await supabase
  .from('posts')
  .select('*, author:users(name)')
  .eq('published', true)
  .order('created_at', { ascending: false })
  .limit(10);

// Real-time subscriptions
supabase.channel('posts')
  .on('postgres_changes', { event: 'INSERT', schema: 'public', table: 'posts' },
    (payload) => console.log('New post:', payload.new))
  .subscribe();

// Row Level Security (RLS)
// CREATE POLICY "Users can only see own posts"
//   ON posts FOR SELECT
//   USING (auth.uid() = user_id);

// Storage
const { data: upload } = await supabase.storage
  .from('avatars')
  .upload('user_123/avatar.png', file);

// Edge Functions (Deno)
// supabase/functions/hello/index.ts
Deno.serve(async (req) => {
  return new Response(JSON.stringify({ message: 'Hello!' }));
});

Retool

// Retool query (SQL)
SELECT * FROM orders
WHERE status = {{ statusDropdown.value }}
AND created_at >= {{ dateRange.start }}
ORDER BY created_at DESC
LIMIT {{ pagination.pageSize }}
OFFSET {{ (pagination.page - 1) * pagination.pageSize }}

// Retool transformer
const enriched = data.map(row => ({
  ...row,
  total_formatted: `$${row.total.toFixed(2)}`,
  status_color: row.status === 'paid' ? 'green' : 'red',
}));
return enriched;

n8n 工作流自动化

{
  "nodes": [
    { "type": "n8n-nodes-base.webhook", "name": "Webhook Trigger" },
    { "type": "n8n-nodes-base.httpRequest", "name": "Fetch Data" },
    { "type": "n8n-nodes-base.if", "name": "Check Condition" },
    { "type": "n8n-nodes-base.slack", "name": "Send Notification" }
  ]
}

集成模式

  • 自定义代码扩展点: 低代码遇到限制时,嵌入自定义 JS/Python
  • API 优先的后端: 使用 Supabase/Firebase 作为后端,搭配自定义前端
  • 混合架构: 使用低代码构建管理面板,使用自定义代码构建面向客户的界面
  • 数据同步: 通过 Webhook 触发 n8n/Zapier 工作流,在 SaaS 工具之间同步数据
  • 自托管: 有数据主权要求时,优先选择 Appsmith/Tooljet/n8n

评论

支持 Markdown