diff --git a/docusaurus.config.js b/docusaurus.config.js
index ed765168..2cfa6c10 100644
--- a/docusaurus.config.js
+++ b/docusaurus.config.js
@@ -16,18 +16,26 @@ const config = {
organizationName: 'dailydotdev', // Your GitHub org/user name
projectName: 'docs', // Your repo name
- // SEO metadata
+ // Enhanced SEO metadata
customFields: {
metadata: [
- {name: 'keywords', content: 'daily.dev, developer tools, tech news, programming, documentation'},
+ {name: 'keywords', content: 'daily.dev, developer tools, tech news, programming, documentation, developer feed, coding news, software development, tech articles, programming tutorials, developer community'},
{name: 'author', content: 'daily.dev'},
- {name: 'robots', content: 'index, follow'},
+ {name: 'robots', content: 'index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1'},
+ {name: 'description', content: 'Comprehensive documentation for daily.dev - the leading platform for developers to discover, read, and stay updated with the latest tech news, programming articles, and developer content.'},
+ {name: 'subject', content: 'Developer Tools Documentation'},
+ {name: 'rating', content: 'General'},
+ {name: 'revisit-after', content: '7 days'},
+ {name: 'distribution', content: 'global'},
+ {name: 'language', content: 'EN'},
+ {name: 'copyright', content: 'daily.dev'},
],
experimental_faster: true,
},
- // Resource hints for external assets
+ // Enhanced SEO and performance tags
headTags: [
+ // Performance optimization
{
tagName: 'link',
attributes: {
@@ -73,6 +81,142 @@ const config = {
type: 'image/png',
},
},
+ // Open Graph metadata
+ {
+ tagName: 'meta',
+ attributes: {
+ property: 'og:type',
+ content: 'website',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ property: 'og:site_name',
+ content: 'daily.dev Documentation',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ property: 'og:title',
+ content: 'daily.dev Documentation - Complete Developer Guide',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ property: 'og:description',
+ content: 'Comprehensive documentation for daily.dev - the leading platform for developers to discover, read, and stay updated with the latest tech news, programming articles, and developer content.',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ property: 'og:url',
+ content: 'https://docs.daily.dev',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ property: 'og:image',
+ content: 'https://docs.daily.dev/img/daily-cover-photo.png',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ property: 'og:image:width',
+ content: '1200',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ property: 'og:image:height',
+ content: '630',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ property: 'og:image:alt',
+ content: 'daily.dev Documentation - Developer Platform Guide',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ property: 'og:locale',
+ content: 'en_US',
+ },
+ },
+ // Twitter Card metadata
+ {
+ tagName: 'meta',
+ attributes: {
+ name: 'twitter:card',
+ content: 'summary_large_image',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ name: 'twitter:site',
+ content: '@dailydotdev',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ name: 'twitter:creator',
+ content: '@dailydotdev',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ name: 'twitter:title',
+ content: 'daily.dev Documentation - Complete Developer Guide',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ name: 'twitter:description',
+ content: 'Comprehensive documentation for daily.dev - the leading platform for developers to discover, read, and stay updated with the latest tech news, programming articles, and developer content.',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ name: 'twitter:image',
+ content: 'https://docs.daily.dev/img/daily-cover-photo.png',
+ },
+ },
+ {
+ tagName: 'meta',
+ attributes: {
+ name: 'twitter:image:alt',
+ content: 'daily.dev Documentation - Developer Platform Guide',
+ },
+ },
+ // Additional SEO metadata
+ {
+ tagName: 'meta',
+ attributes: {
+ name: 'format-detection',
+ content: 'telephone=no',
+ },
+ },
+ {
+ tagName: 'link',
+ attributes: {
+ rel: 'canonical',
+ href: 'https://docs.daily.dev',
+ },
+ },
],
presets: [
@@ -316,13 +460,13 @@ const config = {
position: 'left',
},
{
- label: 'Changelog',
+ label: "What's new?",
href: 'https://app.daily.dev/sources/daily_updates',
position: 'left',
},
{
href: 'https://github.com/dailydotdev/docs',
- label: 'GitHub',
+ label: 'Contribute',
position: 'right',
},
],
diff --git a/playwright-report/index.html b/playwright-report/index.html
deleted file mode 100644
index f80d9a06..00000000
--- a/playwright-report/index.html
+++ /dev/null
@@ -1,77 +0,0 @@
-
-
-
-
-
-
-
-
- Playwright Test Report
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/components/homepage/homeNavBoxes.js b/src/components/homepage/homeNavBoxes.js
index 2bf2f42f..79e1b540 100644
--- a/src/components/homepage/homeNavBoxes.js
+++ b/src/components/homepage/homeNavBoxes.js
@@ -179,36 +179,38 @@ function Feature({ title, icon, items }) {
};
return (
-
-
-
![{altTexts[title]]({icon})
-
- {title}
-
-
-
+
+
+
+
![{altTexts[title]]({icon})
+
+ {title}
+
+
+
+
-
-
+
+
);
}
diff --git a/src/components/homepage/homeNavBoxes.module.css b/src/components/homepage/homeNavBoxes.module.css
index 0714312f..1851db3e 100644
--- a/src/components/homepage/homeNavBoxes.module.css
+++ b/src/components/homepage/homeNavBoxes.module.css
@@ -11,6 +11,17 @@
gap: 56px;
margin: 0 auto;
padding: 0;
+ list-style: none;
+}
+
+.grid3col li {
+ list-style: none;
+ margin: 0;
+ padding: 0;
+}
+
+.grid3col li::marker {
+ display: none;
}
@media screen and (max-width: 1680px) {
diff --git a/src/components/video-page/navBoxes.js b/src/components/video-page/navBoxes.js
index cf2d0430..2e1f990a 100644
--- a/src/components/video-page/navBoxes.js
+++ b/src/components/video-page/navBoxes.js
@@ -179,47 +179,49 @@ function Feature({ title, url, type, duration }) {
const videoId = `video-${title.replace(/\s+/g, '-').toLowerCase()}`;
return (
-
-
-

-
{title}
-
-
-
{duration}
-

+
+
+
+

+
{title}
+
+
+
{duration}
+

+
+ {/*
+
+
*/}
+
{type}
- {/*
-
-
*/}
- {type}
-
-
+
+
);
}
diff --git a/src/components/video-page/navBoxes.module.css b/src/components/video-page/navBoxes.module.css
index dc41abf6..78755bf2 100644
--- a/src/components/video-page/navBoxes.module.css
+++ b/src/components/video-page/navBoxes.module.css
@@ -15,6 +15,18 @@
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 56px;
margin: 0 auto;
+ list-style: none;
+ padding: 0;
+}
+
+.grid3col li {
+ list-style: none;
+ margin: 0;
+ padding: 0;
+}
+
+.grid3col li::marker {
+ display: none;
}
@media screen and (max-width: 1680px) {
.grid3col {
diff --git a/src/css/custom.css b/src/css/custom.css
index 93e9820a..d19d8c3a 100644
--- a/src/css/custom.css
+++ b/src/css/custom.css
@@ -982,15 +982,76 @@ html[data-theme='dark'] .DocSearch-Logo svg {
display: none !important;
}
-/* Make header search bar 50% wider */
+/* Make header search bar 50% wider and improve contrast */
.navbar .DocSearch-Button {
width: 300px !important;
max-width: none !important;
+ color: var(--ifm-font-color-base) !important;
+ border: 1px solid var(--ifm-color-emphasis-300) !important;
+}
+
+.navbar .DocSearch-Button-Placeholder {
+ color: var(--ifm-font-color-base) !important;
+ opacity: 0.8 !important;
+}
+
+.navbar .DocSearch-Button-Keys {
+ color: var(--ifm-font-color-base) !important;
+}
+
+.navbar .DocSearch-Button-Key {
+ color: var(--ifm-font-color-base) !important;
+ background: var(--ifm-color-emphasis-200) !important;
+ border: 1px solid var(--ifm-color-emphasis-300) !important;
+}
+
+/* Dark theme adjustments */
+html[data-theme='dark'] .navbar .DocSearch-Button {
+ background: var(--ifm-background-surface-color) !important;
+ color: var(--ifm-font-color-base) !important;
+}
+
+html[data-theme='dark'] .navbar .DocSearch-Button-Placeholder {
+ color: var(--ifm-font-color-base) !important;
+ opacity: 0.9 !important;
+}
+
+html[data-theme='dark'] .navbar .DocSearch-Button-Key {
+ background: var(--ifm-color-emphasis-300) !important;
+ color: var(--ifm-font-color-base) !important;
}
@media (max-width: 768px) {
.navbar .DocSearch-Button {
- width: 200px !important;
+ width: 36px !important;
+ height: 36px !important;
+ min-width: 36px !important;
+ max-width: 36px !important;
+ padding: 0 !important;
+ display: flex !important;
+ align-items: center !important;
+ justify-content: center !important;
+ border-radius: 6px !important;
+ }
+
+ .navbar .DocSearch-Button-Container {
+ display: flex !important;
+ align-items: center !important;
+ justify-content: center !important;
+ }
+
+ .navbar .DocSearch-Search-Icon {
+ width: 18px !important;
+ height: 18px !important;
+ flex-shrink: 0 !important;
+ }
+
+ .navbar .DocSearch-Button-Placeholder {
+ display: none !important;
+ }
+
+ .navbar .DocSearch-Button-Keys {
+ display: none !important;
}
}
diff --git a/src/structured-data/schema.js b/src/structured-data/schema.js
index 1ae8e428..3b0bce2f 100644
--- a/src/structured-data/schema.js
+++ b/src/structured-data/schema.js
@@ -5,41 +5,165 @@ export default function StructuredData() {
const structuredData = useMemo(
() => ({
'@context': 'https://schema.org',
- '@type': 'TechArticle',
- name: 'daily.dev Documentation',
- description:
- 'Complete guide to daily.dev features, setup, and customization for developers',
- url: 'https://docs.daily.dev',
- publisher: {
- '@type': 'Organization',
- name: 'daily.dev',
- url: 'https://daily.dev',
- logo: {
- '@type': 'ImageObject',
- url: 'https://docs.daily.dev/img/logo.png',
+ '@graph': [
+ {
+ '@type': 'WebSite',
+ '@id': 'https://docs.daily.dev/#website',
+ url: 'https://docs.daily.dev',
+ name: 'daily.dev Documentation',
+ description: 'Comprehensive documentation for daily.dev - the leading platform for developers to discover, read, and stay updated with the latest tech news, programming articles, and developer content.',
+ publisher: {
+ '@id': 'https://daily.dev/#organization'
+ },
+ potentialAction: [
+ {
+ '@type': 'SearchAction',
+ target: {
+ '@type': 'EntryPoint',
+ urlTemplate: 'https://docs.daily.dev/search?q={search_term_string}'
+ },
+ 'query-input': 'required name=search_term_string'
+ }
+ ],
+ inLanguage: 'en-US'
},
- },
- about: {
- '@type': 'Thing',
- name: 'Developer Tools',
- description:
- 'Tools and platform for developers to discover and consume developer content',
- },
- audience: {
- '@type': 'Audience',
- audienceType: 'Software Developers',
- },
- keywords: [
- 'daily.dev',
- 'developer tools',
- 'tech news',
- 'programming',
- 'documentation',
- 'developer feed',
- ],
- datePublished: '2024-01-01',
- dateModified: new Date().toISOString().split('T')[0],
- inLanguage: 'en-US',
+ {
+ '@type': 'Organization',
+ '@id': 'https://daily.dev/#organization',
+ name: 'daily.dev',
+ url: 'https://daily.dev',
+ logo: {
+ '@type': 'ImageObject',
+ url: 'https://docs.daily.dev/img/logo.png',
+ width: 512,
+ height: 512
+ },
+ contactPoint: {
+ '@type': 'ContactPoint',
+ contactType: 'customer service',
+ url: 'https://daily.dev/contact'
+ },
+ sameAs: [
+ 'https://twitter.com/dailydotdev',
+ 'https://github.com/dailydotdev',
+ 'https://www.youtube.com/channel/UCXUjtTfQWJa0G9K_SqRm3jQ',
+ 'https://www.instagram.com/dailydotdev/',
+ 'https://www.tiktok.com/@dailydotdev'
+ ],
+ foundingDate: '2020-01-01',
+ description: 'The leading platform for developers to discover, read, and stay updated with the latest tech news, programming articles, and developer content.'
+ },
+ {
+ '@type': 'TechArticle',
+ '@id': 'https://docs.daily.dev/#article',
+ headline: 'daily.dev Documentation - Complete Developer Guide',
+ name: 'daily.dev Documentation',
+ description: 'Comprehensive documentation for daily.dev - the leading platform for developers to discover, read, and stay updated with the latest tech news, programming articles, and developer content.',
+ url: 'https://docs.daily.dev',
+ mainEntityOfPage: {
+ '@type': 'WebPage',
+ '@id': 'https://docs.daily.dev/#webpage'
+ },
+ publisher: {
+ '@id': 'https://daily.dev/#organization'
+ },
+ author: {
+ '@id': 'https://daily.dev/#organization'
+ },
+ about: [
+ {
+ '@type': 'Thing',
+ name: 'Developer Tools',
+ description: 'Tools and platform for developers to discover and consume developer content'
+ },
+ {
+ '@type': 'Thing',
+ name: 'Software Development',
+ description: 'Programming and software development resources'
+ },
+ {
+ '@type': 'Thing',
+ name: 'Tech News',
+ description: 'Latest technology news and updates for developers'
+ }
+ ],
+ audience: {
+ '@type': 'Audience',
+ audienceType: 'Software Developers',
+ geographicArea: {
+ '@type': 'Place',
+ name: 'Worldwide'
+ }
+ },
+ keywords: [
+ 'daily.dev',
+ 'developer tools',
+ 'tech news',
+ 'programming',
+ 'documentation',
+ 'developer feed',
+ 'coding news',
+ 'software development',
+ 'tech articles',
+ 'programming tutorials',
+ 'developer community',
+ 'RSS feed',
+ 'developer platform',
+ 'tech aggregator'
+ ],
+ datePublished: '2024-01-01T00:00:00Z',
+ dateModified: new Date().toISOString(),
+ inLanguage: 'en-US',
+ isAccessibleForFree: true,
+ copyrightHolder: {
+ '@id': 'https://daily.dev/#organization'
+ },
+ copyrightYear: new Date().getFullYear(),
+ educationalUse: 'instruction',
+ learningResourceType: 'documentation',
+ typicalAgeRange: '18-65',
+ image: {
+ '@type': 'ImageObject',
+ url: 'https://docs.daily.dev/img/daily-cover-photo.png',
+ width: 1200,
+ height: 630,
+ caption: 'daily.dev Documentation - Developer Platform Guide'
+ }
+ },
+ {
+ '@type': 'WebPage',
+ '@id': 'https://docs.daily.dev/#webpage',
+ url: 'https://docs.daily.dev',
+ name: 'daily.dev Documentation - Complete Developer Guide',
+ isPartOf: {
+ '@id': 'https://docs.daily.dev/#website'
+ },
+ primaryImageOfPage: {
+ '@type': 'ImageObject',
+ url: 'https://docs.daily.dev/img/daily-cover-photo.png',
+ width: 1200,
+ height: 630
+ },
+ datePublished: '2024-01-01T00:00:00Z',
+ dateModified: new Date().toISOString(),
+ description: 'Comprehensive documentation for daily.dev - the leading platform for developers to discover, read, and stay updated with the latest tech news, programming articles, and developer content.',
+ breadcrumb: {
+ '@type': 'BreadcrumbList',
+ itemListElement: [
+ {
+ '@type': 'ListItem',
+ position: 1,
+ name: 'Home',
+ item: 'https://docs.daily.dev'
+ }
+ ]
+ },
+ speakable: {
+ '@type': 'SpeakableSpecification',
+ cssSelector: ['h1', 'h2', '.hero__title']
+ }
+ }
+ ]
}),
[]
);
diff --git a/static/llm.txt b/static/llm.txt
new file mode 100644
index 00000000..38da76cb
--- /dev/null
+++ b/static/llm.txt
@@ -0,0 +1,58 @@
+# daily.dev Documentation Site
+
+This is the official documentation website for daily.dev, built with Docusaurus 3.
+
+## About daily.dev
+daily.dev is a professional network for developers to stay updated with the latest tech news, discover new tools, and connect with peers. It aggregates content from hundreds of sources and uses AI to personalize feeds for each developer.
+
+## Project Structure
+
+### Framework & Technology
+- **Docusaurus 3**: Static site generator with React-based theming
+- **React 18**: Component framework for interactive elements
+- **MDX**: Markdown with JSX support for rich documentation
+- **Algolia**: Integrated search functionality
+- **Google Analytics**: User behavior tracking
+
+### Key Directories
+- `docs/`: All documentation markdown files organized by category
+- `src/components/`: React components for homepage and custom elements
+- `src/pages/`: Custom pages outside the docs structure
+- `static/`: Static assets including images, icons, and manifest files
+- `docusaurus.config.js`: Main site configuration
+- `sidebars.js`: Auto-generated sidebar structure
+
+### Content Categories
+The documentation covers:
+- Getting Started guides
+- Key Features explanation
+- Feed customization and setup
+- Squads (community groups) functionality
+- Plus subscription features
+- Monetization for content creators
+- Community guidelines
+- User profile management
+- Resources for OSS contributors
+
+### Development Commands
+- `npm start`: Development server (localhost:3000)
+- `npm run build`: Production build
+- `npm run serve`: Serve built site locally
+- `npm run clear`: Clear Docusaurus cache
+
+### Key Features
+- Dark mode by default with light mode toggle
+- Responsive design optimized for all devices
+- Image optimization with @docusaurus/plugin-ideal-image
+- Direct GitHub edit links for all documentation
+- PWA capabilities with offline support
+- SEO optimized with structured data
+
+### Target Audience
+- daily.dev users seeking to maximize platform features
+- Developers new to daily.dev
+- Content creators looking to monetize
+- Open source contributors
+- Community managers and squad leaders
+
+This documentation serves as the primary resource for understanding and effectively using the daily.dev platform.
\ No newline at end of file
diff --git a/target/npmlist.json b/target/npmlist.json
deleted file mode 100644
index 8ada35c9..00000000
--- a/target/npmlist.json
+++ /dev/null
@@ -1 +0,0 @@
-{"version":"0.0.0","name":"dailydev-docs","dependencies":{"@docusaurus/core":{"version":"2.0.0-beta.7"},"@docusaurus/preset-classic":{"version":"2.0.0-beta.7"},"@mdx-js/react":{"version":"1.6.22"},"@svgr/webpack":{"version":"5.5.0"},"clsx":{"version":"1.1.1"},"file-loader":{"version":"6.2.0"},"prism-react-renderer":{"version":"1.2.1"},"react-dom":{"version":"17.0.2"},"react":{"version":"17.0.2"},"url-loader":{"version":"4.1.1"}}}
\ No newline at end of file
diff --git a/test-results/.last-run.json b/test-results/.last-run.json
deleted file mode 100644
index cbcc1fba..00000000
--- a/test-results/.last-run.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "status": "passed",
- "failedTests": []
-}
\ No newline at end of file