Skip to content

Commit f4b7dfb

Browse files
committed
keep one packages-meta
1 parent 1029b9a commit f4b7dfb

File tree

2 files changed

+228
-238
lines changed

2 files changed

+228
-238
lines changed

apps/svelte.dev/src/lib/packages-meta.ts

Lines changed: 228 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,227 @@
1+
const SV_ADD = {
2+
// Keeping the same order as in sv
3+
// https://github.com/jycouet/cli/blob/main/packages/addons/_config/official.ts#L16-L17
4+
packages: [
5+
'prettier',
6+
'eslint',
7+
'vitest',
8+
'playwright',
9+
'tailwindcss',
10+
'vite-plugin-devtools-json',
11+
'drizzle-orm',
12+
'lucia',
13+
'mdsvex',
14+
'@inlang/paraglide-js',
15+
'storybook'
16+
]
17+
};
18+
19+
const SV_ADD_CMD = {
20+
prettier: 'npx sv add prettier',
21+
eslint: 'npx sv add eslint',
22+
vitest: 'npx sv add vitest',
23+
playwright: 'npx sv add playwright',
24+
tailwindcss: 'npx sv add tailwindcss',
25+
'vite-plugin-devtools-json': 'npx sv add devtools-json',
26+
'drizzle-orm': 'npx sv add drizzle',
27+
lucia: 'npx sv add lucia',
28+
mdsvex: 'npx sv add mdsvex',
29+
'@inlang/paraglide-js': 'npx sv add paraglide',
30+
storybook: 'npx sv add storybook',
31+
32+
'@sveltejs/adapter-node': 'npx sv add sveltekit-adapter=adapter:node',
33+
'@sveltejs/adapter-vercel': 'npx sv add sveltekit-adapter=adapter:vercel',
34+
'@sveltejs/adapter-auto': 'npx sv add sveltekit-adapter=adapter:auto',
35+
'@sveltejs/adapter-cloudflare': 'npx sv add sveltekit-adapter=adapter:cloudflare',
36+
'@sveltejs/adapter-netlify': 'npx sv add sveltekit-adapter=adapter:netlify'
37+
};
38+
39+
const FEATURED: { title: string; packages: string[]; weights?: Record<string, number> }[] = [
40+
{
41+
title: 'Component libraries',
42+
packages: [
43+
'shadcn-svelte',
44+
'bits-ui',
45+
'@melt-ui/svelte',
46+
'@skeletonlabs/skeleton',
47+
'@ark-ui/svelte',
48+
'flowbite-svelte',
49+
'svelte-material-ui',
50+
'carbon-components-svelte',
51+
'@sveltestrap/sveltestrap',
52+
'daisyui'
53+
],
54+
weights: {
55+
'shadcn-svelte': 2
56+
}
57+
},
58+
{
59+
title: 'Individual components',
60+
packages: [
61+
'@tanstack/svelte-table',
62+
'@ai-sdk/svelte',
63+
'svelte-moveable',
64+
'@tanstack/svelte-virtual',
65+
'virtua',
66+
'@event-calendar/core',
67+
'svelte-chartjs'
68+
]
69+
},
70+
{
71+
title: 'SvelteKit adapters',
72+
packages: [
73+
'@sveltejs/adapter-node',
74+
'@sveltejs/adapter-vercel',
75+
'@sveltejs/adapter-auto',
76+
'@sveltejs/adapter-cloudflare',
77+
'@sveltejs/adapter-netlify',
78+
'svelte-kit-sst',
79+
'svelte-adapter-bun',
80+
'@slicemachine/adapter-sveltekit',
81+
'amplify-adapter',
82+
'svelte-adapter-deno',
83+
'svelte-adapter-appengine',
84+
'sveltekit-adapter-browser-extension',
85+
'svelte-adapter-azure-swa'
86+
]
87+
},
88+
{
89+
title: 'Icons',
90+
packages: [
91+
'@iconify/tailwind4',
92+
'@unocss/preset-icons',
93+
'lucide-svelte',
94+
'svelte-awesome',
95+
'phosphor-svelte'
96+
]
97+
},
98+
{
99+
title: 'Router',
100+
packages: [
101+
'@sveltejs/kit',
102+
'svelte-routing',
103+
'svelte-micro',
104+
'@roxi/routify',
105+
'svelte-qparam',
106+
'@easyroute/svelte',
107+
'svelte5-router',
108+
'svelte-guard',
109+
'svelte-guard-history-router',
110+
'svelte-pathfinder',
111+
'elegua'
112+
]
113+
},
114+
{
115+
title: 'Data Visualization',
116+
packages: ['layercake', 'layerchart', 'svelte-maplibre', '@xyflow/svelte', 'svelte-maplibre-gl']
117+
},
118+
{
119+
title: '3D Rendering',
120+
packages: ['@threlte/core', 'svelte-zdog']
121+
},
122+
{
123+
title: 'Animations',
124+
packages: [
125+
'@neoconfetti/svelte',
126+
'svelte-motion',
127+
'@lottiefiles/svelte-lottie-player',
128+
'@tsparticles/svelte'
129+
]
130+
},
131+
{
132+
title: 'Content',
133+
packages: [
134+
'mdsvex',
135+
'svelte-markdown',
136+
'@content-collections/core',
137+
'carta-md',
138+
'typewriter-editor',
139+
'@svelte-put/toc',
140+
'@prismicio/svelte',
141+
'@svelteness/kit-docs',
142+
'@evidence-dev/evidence',
143+
'@magidoc/plugin-svelte-marked',
144+
'svelte-exmarkdown',
145+
'svelte-pdf'
146+
]
147+
},
148+
{
149+
title: 'Bundler plugins',
150+
packages: [
151+
'@sveltejs/vite-plugin-svelte',
152+
'rollup-plugin-svelte',
153+
'svelte-loader',
154+
'esbuild-svelte'
155+
]
156+
},
157+
{
158+
title: 'Media',
159+
packages: [
160+
'@sveltejs/enhanced-img',
161+
'@vime/svelte',
162+
'@uppy/svelte',
163+
'@unpic/svelte',
164+
'unlazy-svelte',
165+
'scrolly-video',
166+
'@zerodevx/svelte-img',
167+
'svelte-easy-crop'
168+
]
169+
},
170+
{
171+
title: 'Data fetching',
172+
packages: [
173+
'@urql/svelte',
174+
'trpc-sveltekit',
175+
'sswr',
176+
'@tanstack/svelte-query',
177+
'@orpc/svelte-query',
178+
'houdini'
179+
]
180+
},
181+
{
182+
title: 'SEO',
183+
packages: ['svelte-meta-tags', '@sveltejs/amp', 'svelte-seo', 'super-sitemap', 'svead']
184+
},
185+
{
186+
title: 'Auth',
187+
packages: [
188+
'lucia',
189+
'@auth/sveltekit',
190+
'altcha',
191+
'svelte-session-manager',
192+
'clerk-sveltekit',
193+
'svelte-kit-sessions',
194+
'@supabase/auth-helpers-sveltekit',
195+
'@passlock/sveltekit'
196+
]
197+
},
198+
{
199+
title: 'Third party services',
200+
packages: [
201+
'@sentry/svelte',
202+
'@sentry/sveltekit',
203+
'svelte-stripe',
204+
'clerk-sveltekit',
205+
'@storyblok/svelte',
206+
'@inlang/paraglide-js'
207+
]
208+
},
209+
// {
210+
// title: 'Testing',
211+
// packages: [
212+
// '@testing-library/svelte',
213+
// 'svelte-jester',
214+
// '@cypress/svelte',
215+
// 'playwright',
216+
// 'vitest'
217+
// ]
218+
// },
219+
{
220+
title: 'Forms',
221+
packages: ['sveltekit-superforms', '@tanstack/svelte-form', 'formsnap', 'felte']
222+
}
223+
];
224+
1225
const OFFICIAL = [
2226
/^@sveltejs\//,
3227
'prettier-plugin-svelte',
@@ -22,5 +246,8 @@ function is_official(pkg: string): boolean {
22246
}
23247

24248
export const PACKAGES_META = {
25-
is_official
249+
is_official,
250+
FEATURED,
251+
SV_ADD,
252+
SV_ADD_CMD
26253
};

0 commit comments

Comments
 (0)