Skip to content

Commit e7f680f

Browse files
committed
feat: add some product classified information
1 parent f691db2 commit e7f680f

File tree

3 files changed

+136
-59
lines changed

3 files changed

+136
-59
lines changed

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "ai-coding",
3-
"version": "0.0.2",
3+
"version": "0.0.3",
44
"description": "A project for comparing AI coding tools and platforms.",
55
"private": true,
66
"scripts": {

src/components/AiToolsGrid.tsx

+30-7
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,29 @@ const categories = [
1111
description: ''
1212
},
1313
{
14-
type: 'Browser-based' as const,
15-
title: 'Browser-based',
14+
type: 'Extension' as const,
15+
title: 'Extension',
1616
description: ''
1717
},
1818
{
19-
type: 'Extension' as const,
20-
title: 'Extension',
19+
type: 'Browser-based' as const,
20+
title: 'Browser-based',
2121
description: ''
2222
},
2323
{
2424
type: 'Terminal' as const,
2525
title: 'Terminal',
2626
description: ''
27+
},
28+
{
29+
type: 'AI software engineer' as const,
30+
title: 'AI software engineer',
31+
description: ''
32+
},
33+
{
34+
type: 'Other' as const,
35+
title: 'Other',
36+
description: ''
2737
}
2838
]
2939

@@ -52,16 +62,29 @@ export function AiToolsGrid({ tools }: AiToolsGridProps) {
5262
href={tool.urlLink}
5363
target='_blank'
5464
rel='noopener noreferrer'
55-
className='group relative block rounded-lg border border-gray-200 p-6 shadow-sm hover:shadow-md transition-shadow'
65+
className='group relative block rounded-lg border border-gray-200 p-6
66+
shadow-sm hover:shadow-lg hover:border-gray-300
67+
transition-all duration-200 ease-in-out
68+
hover:-translate-y-1 hover:bg-gray-50'
5669
>
57-
<div className='flex flex-col items-center space-y-4'>
58-
<h3 className='text-lg font-medium text-gray-900'>
70+
<div className='flex flex-col items-center space-y-4 mt-4'>
71+
<h3 className='text-lg font-medium text-gray-900
72+
group-hover:text-blue-600 transition-colors duration-200
73+
text-center max-w-[calc(100%-5rem)]'>
5974
{tool.whatsTheName}
6075
</h3>
6176
<p className='text-sm text-gray-600 text-center'>
6277
{tool.description}
6378
</p>
6479
</div>
80+
{tool.company && (
81+
<div className='absolute top-3 right-3 px-2 py-1
82+
text-xs font-medium text-gray-500 bg-gray-50
83+
rounded-full border border-gray-200
84+
group-hover:bg-white transition-colors duration-200'>
85+
{tool.company}
86+
</div>
87+
)}
6588
</a>
6689
))}
6790
</div>

src/data/aiTools.ts

+105-51
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,10 @@ export interface AiTool {
33
whatsTheName: string // 这个产品的名字是什么,不管是编辑器还是网站还是什么
44
urlLink: string // 这个产品网站的链接
55
description: string // 这个产品的简单描述
6+
company?: string // 开发这个产品的公司
67
// 产品作者
78
// 使用的方式,是浏览器中使用还是VSCode扩展还是编辑器
8-
howToUseType: 'Browser-based' | 'Extension' | 'Editor' | 'Terminal'
9+
howToUseType: 'Browser-based' | 'Extension' | 'Editor' | 'Terminal' | 'AI software engineer' | 'Other'
910
}
1011

1112
export const aiTools: AiTool[] = [
@@ -15,12 +16,14 @@ export const aiTools: AiTool[] = [
1516
whatsTheName: 'Cursor',
1617
urlLink: 'https://www.cursor.com/',
1718
description: 'The most powerful AI native code editor in the universe',
19+
company: 'Anysphere',
1820
howToUseType: 'Editor'
1921
},
2022
{
2123
whatsTheName: 'Windsurf',
2224
urlLink: 'https://codeium.com/',
2325
description: 'Was launched by Codeium on November 14, 2024',
26+
company: 'Codeium',
2427
howToUseType: 'Editor'
2528
},
2629
{
@@ -35,121 +38,172 @@ export const aiTools: AiTool[] = [
3538
description: 'Void is an open source Cursor alternative.',
3639
howToUseType: 'Editor'
3740
},
38-
39-
4041
{
4142
whatsTheName: 'Aide',
4243
urlLink: 'https://aide.dev/',
43-
description:
44-
'The open-source AI-native IDE. by CodeStory.ai',
44+
description: 'The open-source AI-native IDE. by CodeStory.ai',
45+
company: 'CodeStory.ai',
4546
howToUseType: 'Editor'
4647
},
4748
{
4849
whatsTheName: 'Zed',
4950
urlLink: 'https://zed.dev/',
5051
description: `The editor for what's next. Windows not yet available`,
52+
company: '',
5153
howToUseType: 'Editor'
5254
},
5355
{
5456
whatsTheName: 'Trae',
5557
urlLink: 'https://www.trae.ai/',
5658
description: 'The beta test for Trea begins on January 20, 2025. by ByteDance',
59+
company: 'ByteDance',
5760
howToUseType: 'Editor'
5861
},
59-
60-
// 基于浏览器 (Browser-based)
61-
{
62-
logoComponent: 'V0',
63-
whatsTheName: 'v0',
64-
urlLink: 'https://v0.dev/',
65-
description: 'v0 is your always-on pair-programmer.',
66-
howToUseType: 'Browser-based'
67-
},
68-
69-
{
70-
whatsTheName: 'Bolt',
71-
urlLink: 'https://bolt.new/',
72-
description: 'Bolt是一个基于浏览器的AI工具',
73-
howToUseType: 'Browser-based'
74-
},
7562
// 扩展类 (Extension)
7663
{
7764
whatsTheName: 'Cline or Roo-Cline',
7865
urlLink: 'https://github.com/cline/cline',
79-
description: '使VSCode像Cursor一样',
80-
howToUseType: 'Extension'
81-
},
82-
{
83-
whatsTheName: 'Continue',
84-
urlLink: 'https://www.continue.dev/',
85-
description: '代码自动补全',
66+
description: 'Openrouter token calls number one. + DeepSeek',
67+
company: '',
8668
howToUseType: 'Extension'
8769
},
8870
{
8971
whatsTheName: 'GitHub Copilot',
9072
urlLink: 'https://github.com/features/copilot',
91-
description: '免费了',
73+
description: 'Built into Visual Studio Code. by GitHub',
74+
company: 'GitHub (Microsoft)',
9275
howToUseType: 'Extension'
9376
},
9477
{
95-
whatsTheName: 'Lovable',
96-
urlLink: 'https://lovable.dev/',
97-
description: 'Lovable是一个基于浏览器的AI工具',
98-
howToUseType: 'Browser-based'
78+
whatsTheName: 'Continue',
79+
urlLink: 'https://www.continue.dev/',
80+
description: '+ Roo Cline + DeepSeek',
81+
company: '',
82+
howToUseType: 'Extension'
9983
},
100-
101-
// 终端类 (Terminal)
10284
{
103-
whatsTheName: 'Aider',
104-
urlLink: 'https://aider.chat/',
105-
description: 'Aider in your terminal',
106-
howToUseType: 'Terminal'
85+
whatsTheName: 'tongyi lingma',
86+
urlLink: 'https://lingma.aliyun.com/',
87+
description: 'by aliyun',
88+
company: 'Alibaba Cloud',
89+
howToUseType: 'Extension'
10790
},
10891
{
10992
whatsTheName: 'Cody',
11093
urlLink: 'https://sourcegraph.com/cody',
111-
description: 'Cody是一个VSCode扩展AI工具',
94+
description: 'by Sourcegraph',
95+
company: 'Sourcegraph',
11296
howToUseType: 'Extension'
11397
},
11498
{
11599
whatsTheName: 'Qodo formerly Codium',
116100
urlLink: 'https://www.qodo.ai/',
117-
description:
118-
'Quality-first AI code generation to help busy devs write, test and review code.',
101+
description: 'formerly Codium',
102+
company: '',
119103
howToUseType: 'Extension'
120104
},
121105
{
122106
whatsTheName: 'Tabnine',
123107
urlLink: 'https://www.tabnine.com/',
124-
description:
125-
'Tabnine’s AI code assistant helps you ship higher quality software faster with AI tools for code generation, testing, and code review custom-fit to each engineering team.',
108+
description: 'There are some autocompletions',
109+
company: '',
126110
howToUseType: 'Extension'
127111
},
128-
112+
{
113+
whatsTheName: 'Baidu Comate',
114+
urlLink: 'https://comate.baidu.com/zh',
115+
description: 'Your AI Coding Mate',
116+
company: 'Baidu',
117+
howToUseType: 'Extension'
118+
},
119+
// 基于浏览器 (Browser-based)
120+
{
121+
logoComponent: 'V0',
122+
whatsTheName: 'v0',
123+
urlLink: 'https://v0.dev/',
124+
description: 'v0 is your always-on pair-programmer.',
125+
company: 'Vercel',
126+
howToUseType: 'Browser-based'
127+
},
128+
{
129+
whatsTheName: 'Bolt',
130+
urlLink: 'https://bolt.new/',
131+
description: 'bolt.diy or bolt.new',
132+
company: '',
133+
howToUseType: 'Browser-based'
134+
},
135+
{
136+
whatsTheName: 'Lovable',
137+
urlLink: 'https://lovable.dev/',
138+
description: 'Lovable is your superhuman full stack engineer',
139+
company: '',
140+
howToUseType: 'Browser-based'
141+
},
142+
129143
{
130144
whatsTheName: 'sitebrew.ai',
131145
urlLink: 'https://www.sitebrew.ai/',
132146
description: 'Generate a site and share it with the world, in seconds',
147+
company: '',
133148
howToUseType: 'Browser-based'
134149
},
135-
136150
{
137151
whatsTheName: 'MarsCode',
138152
urlLink: 'https://www.marscode.com/',
139153
description: 'bytedance',
154+
company: 'ByteDance',
155+
howToUseType: 'Browser-based'
156+
},
157+
{
158+
whatsTheName: 'Replit',
159+
urlLink: 'https://replit.com/',
160+
description: 'Create beautiful, modern web applications',
161+
company: 'Replit',
140162
howToUseType: 'Browser-based'
141163
},
164+
{
165+
whatsTheName: 'Project IDX',
166+
urlLink: 'https://idx.dev/',
167+
description: 'Project IDX is an AI-assisted workspace. by Google',
168+
company: 'Google',
169+
howToUseType: 'Browser-based'
170+
},
171+
// 终端类 (Terminal)
172+
{
173+
whatsTheName: 'Aider',
174+
urlLink: 'https://aider.chat/',
175+
description: 'Aider in your terminal',
176+
company: '',
177+
howToUseType: 'Terminal'
178+
},
142179
{
143180
whatsTheName: 'Warp',
144181
urlLink: 'https://www.warp.dev/',
145182
description: 'AI Terminal',
183+
company: '',
146184
howToUseType: 'Terminal'
147185
},
148-
149186
{
150-
whatsTheName: 'Replit',
151-
urlLink: 'https://replit.com/',
152-
description: 'Idea to app, fast.',
153-
howToUseType: 'Browser-based'
187+
whatsTheName: 'Wave',
188+
urlLink: 'https://www.waveterm.dev/',
189+
description: 'Stop Context Switching by Bringing Context Into Your Terminal',
190+
company: '',
191+
howToUseType: 'Terminal'
192+
},
193+
// AI 软件工程师 (AI software engineer)
194+
{
195+
whatsTheName: 'Devin',
196+
urlLink: 'https://www.cognition.ai/blog/introducing-devin',
197+
description: 'The first AI software engineer',
198+
company: '',
199+
howToUseType: 'AI software engineer'
200+
},
201+
// 其他 (Other)
202+
{
203+
whatsTheName: 'CodeFuse',
204+
urlLink: 'https://codefuse.ai/',
205+
description: 'Make R&D Simpler',
206+
company: 'Ant Group',
207+
howToUseType: 'Other'
154208
}
155209
]

0 commit comments

Comments
 (0)