A modern website for DocumentDB built with Next.js and Tailwind CSS. The site features community blog posts and technical documentation, with content automatically pulled from the documentdb/docs repository during the build process.
You can develop locally on any machine with these prerequisites installed, or use GitHub Codespaces for a pre-configured environment.
Get started by cloning and running this repository locally.
-
Clone this repository
-
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Observe that the site will be available at http://localhost:3000
The first time you run npm run dev or npm run build, documentation content will be automatically compiled from the documentdb/docs repository.
We welcome contributions to improve the DocumentDB website, whether it's blog posts, bug fixes, or enhancements to the site itself.
Blog posts are managed locally in this repository. Contribute directly through a pull request to this repository.
-
Open blogs/content.yml
-
Add your blog post entry following the format of existing posts
-
Submit a pull request for review
Documentation articles and API reference content are managed in a separate repository. For more information, see documentdb/docs.
Important
Please refer to that repository for instructions on contributing:
- Documentation articles (
getting-started/,postgres-api/,architecture/, etc.) - API reference content (
api-reference/)
Documentation content is automatically compiled during builds from external repositories. The mapping is configured in content.config.json.
{
"sources": [
{
"repository": "https://github.com/documentdb/docs",
"branch": "main",
"mappings": [
{
"source": "api-reference",
"target": "reference"
},
{
"source": "getting-started",
"target": "articles/getting-started"
}
]
}
],
"include": ["**/*.md", "**/*.yml"],
"exclude": ["**/{readme,README}.md"]
}The content.config.json file controls how documentation is compiled from external sources into this site.
- sources - Array of repositories to clone content from. Each source includes:
- repository - Git repository URL
- branch - Git branch to clone from
- mappings - Array of source folder to target folder mappings
- include - Array of glob patterns for files to include (opt-in filtering)
- exclude - Array of glob patterns for files to exclude
While content is automatically compiled during builds, you can manually trigger these operations during development:
# Clean all target directories
npm run clean:content# Compile content from sources
npm run compile:contentLaunch a pre-configured development environment with all dependencies installed:
The Codespaces environment includes:
- Node.js 20
- Git
- Visual Studio Code extensions for Markdown and YAML editing
- All npm dependencies
Simply run npm run dev after the container starts.