diff --git a/.gitignore b/.gitignore index 311a10f5f..65c92835e 100644 --- a/.gitignore +++ b/.gitignore @@ -66,6 +66,7 @@ docs/.vitepress/data/categoriesData.json docs/.vitepress/data/iconDetails docs/.vitepress/data/relatedIcons.json docs/.vitepress/data/brandStopwords.json +docs/.vitepress/data/sponsorsData.json docs/.vitepress/data/iconPopularity docs/.vitepress/data/lab/iconNodes docs/.vitepress/data/lab/iconMetaData.ts @@ -74,3 +75,4 @@ docs/.vercel docs/.nitro docs/public/og/** !docs/public/og/general.png +.claude diff --git a/.well-known/funding-manifest-urls b/.well-known/funding-manifest-urls new file mode 100644 index 000000000..7358527f3 --- /dev/null +++ b/.well-known/funding-manifest-urls @@ -0,0 +1 @@ +https://lucide.dev/funding.json diff --git a/README.md b/README.md index fbb9b6abf..b0da062d6 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,9 @@

- - Lucide - Beautiful & consistent icon toolkit made by the community. Open-source project and a fork of Feather Icons. - - - Lucide - Beautiful & consistent icon toolkit made by the community. Open-source project and a fork of Feather Icons. + + + + Lucide - Beautiful & consistent icon toolkit made by the community. Open-source project and a fork of Feather Icons. +

@@ -88,24 +88,29 @@ Thank you to all the people who contributed to Lucide! Powered by Vercel -DigitalOcean Referral Badge - [//]: <> (Sponsor tiers start) -### Hero Backer ๐Ÿฆธ +### Bronze ๐Ÿฅ‰ -Sourcegraph โ€“ Understand, fix, and automate across your codebase with Sourcegraph's code intelligence platform -Zephyr Cloud +Sourcegraph โ€“ Understand, fix, and automate across your codebase with Sourcegraph's code intelligence platform +   +Zephyr Cloud -### Awesome backers ๐Ÿบ +[//]: <> (Main README only start) -Pax Historia -pdfme โ€“ Free and Open source PDF generation library! +### Backers ๐Ÿบ -### Backer โ˜•๏ธ +Pax Historia +   +pdfme โ€“ Free and Open source PDF generation library! -Fina Money โ€“ Build the most flexible finance tracker -Ruud +### Supporters โ˜•๏ธ + +Fina Money โ€“ Build the most flexible finance tracker +   +Ruud + +[//]: <> (Main README only end) [//]: <> (Sponsor tiers end) diff --git a/docs/.vitepress/config.ts b/docs/.vitepress/config.ts index 251223308..8adfc47e8 100644 --- a/docs/.vitepress/config.ts +++ b/docs/.vitepress/config.ts @@ -88,6 +88,7 @@ export default defineConfig({ 'index.md', 'packages.md', 'showcase.md', + 'sponsor.md', 'brand-logo-statement.md', 'icons/**', // Not working, need investigation ], @@ -123,6 +124,9 @@ export default defineConfig({ socialLinks: [ { icon: 'github', link: 'https://github.com/lucide-icons/lucide' }, { icon: 'discord', link: 'https://discord.gg/EH6nSts' }, + { icon: 'x', link: 'https://x.com/lucide_icons' }, + { icon: 'linkedin', link: 'https://www.linkedin.com/company/lucide-icons/' }, + { icon: 'bluesky', link: 'https://bsky.app/profile/lucide-icons.bsky.social' }, ], footer: { message: 'Released under the ISC License.', diff --git a/docs/.vitepress/data/teamData.json b/docs/.vitepress/data/teamData.json index 07cf6a1cb..7f32f9177 100644 --- a/docs/.vitepress/data/teamData.json +++ b/docs/.vitepress/data/teamData.json @@ -9,6 +9,10 @@ "icon": "github", "link": "https://github.com/ericfennis" }, + { + "icon": "linkedin", + "link": "https://www.linkedin.com/in/ericfennis" + }, { "icon": "x", "link": "https://x.com/ericfennis" @@ -36,7 +40,7 @@ }, { "name": "Jakob Guddas", - "title": "Creator of Lucide Studio", + "title": "Creator of Lucide Studio & Software engineer @LEGO", "image": "https://github.com/jguddas.png?size=192", "socialLinks": [ { diff --git a/docs/.vitepress/getStructuredData.ts b/docs/.vitepress/getStructuredData.ts index 7fde3ff12..d66373378 100644 --- a/docs/.vitepress/getStructuredData.ts +++ b/docs/.vitepress/getStructuredData.ts @@ -79,3 +79,23 @@ export default async function getStructuredData(iconName: string, pageData: Page }, }; } + +export interface FaqEntry { + question: string; + answer: string; +} + +export function getFaqStructuredData(faq: FaqEntry[]) { + return { + '@context': 'https://schema.org', + '@type': 'FAQPage', + mainEntity: faq.map(({ question, answer }) => ({ + '@type': 'Question', + name: question, + acceptedAnswer: { + '@type': 'Answer', + text: answer, + }, + })), + }; +} diff --git a/docs/.vitepress/theme/components/base/Faq.vue b/docs/.vitepress/theme/components/base/Faq.vue new file mode 100644 index 000000000..8d8ec9682 --- /dev/null +++ b/docs/.vitepress/theme/components/base/Faq.vue @@ -0,0 +1,71 @@ + + + + + diff --git a/docs/.vitepress/theme/components/base/FaqItem.vue b/docs/.vitepress/theme/components/base/FaqItem.vue new file mode 100644 index 000000000..8ebed3fb4 --- /dev/null +++ b/docs/.vitepress/theme/components/base/FaqItem.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/docs/.vitepress/theme/components/base/MotionCounter.vue b/docs/.vitepress/theme/components/base/MotionCounter.vue new file mode 100644 index 000000000..bf9381367 --- /dev/null +++ b/docs/.vitepress/theme/components/base/MotionCounter.vue @@ -0,0 +1,71 @@ + + + + + diff --git a/docs/.vitepress/theme/components/base/PageTabs.vue b/docs/.vitepress/theme/components/base/PageTabs.vue index 8276ceb12..be3fe7de7 100644 --- a/docs/.vitepress/theme/components/base/PageTabs.vue +++ b/docs/.vitepress/theme/components/base/PageTabs.vue @@ -7,7 +7,7 @@