Files
sven d2eb3c152e Reorganize VitePress docs sections and refine metadata search indexing
Move topic pages to section index routes, standardize card-based content presentation, and simplify metadata typing while improving local search indexing for EnhancedLink entries. Refresh theme styling and replace unstable external links to keep metadata builds reliable.
2026-04-13 17:15:17 +02:00

208 lines
6.3 KiB
Markdown

# Contributing to Awesome Docs
We welcome contributions to make this documentation resource even better! This guide will help you get started with contributing to the project.
## Quick Start for Contributors
If you want to contribute to this project, follow these steps to set up your development environment.
### Prerequisites
Before you begin, ensure you have the following installed on your system:
- **Git** - For version control
- **Node.js** (version 16 or higher) - JavaScript runtime
- **pnpm** - Package manager (faster than npm)
### Development Setup
We use [Taskfile](https://taskfile.dev/) to streamline development tasks. Here's how to get started:
1. **Clone the repository**
```bash
git clone https://github.com/testthedocs/awesome-docs.git
cd awesome-docs
```
2. **Set up your environment**
```bash
# Install system dependencies (Node.js and pnpm)
task setup:deps
```
3. **Start the development server**
```bash
# Run the local development server
task docs:dev
```
4. **Access the documentation**
Open your browser and visit `http://localhost:5173/`
### Available Tasks
Our project uses Taskfile for automation. Here are the available commands:
#### Setup Tasks (One-time)
```bash
task setup:node # Install Node.js if missing
task setup:pnpm # Install pnpm if missing
task setup:deps # Install VitePress dependencies
```
#### Documentation Tasks (Daily workflow)
```bash
task docs:dev # Start development server
task docs:build # Build static site for production
task docs:preview # Preview the built site
```
#### List all available tasks
```bash
task -l # Show all available tasks
```
### Making Changes
1. **Create a feature branch**
```bash
git checkout -b feature/your-feature-name
```
2. **Make your changes**
- Edit documentation files in the `docs/` directory
- Add new tools, resources, or improve existing content
- Test your changes with `task docs:dev`
3. **Test your changes**
```bash
# Start development server to preview changes
task docs:dev
# Build to ensure everything compiles
task docs:build
```
4. **Commit and push**
```bash
git add .
git commit -m "Add: description of your changes"
git push origin feature/your-feature-name
```
5. **Create a Pull Request**
- Go to the GitHub repository
- Create a pull request from your feature branch
- Describe your changes and why they're valuable
## What Can You Contribute?
### Adding New Tools
- Add new documentation tools to appropriate categories
- Include clear descriptions and use cases
- Provide working links and verify they're current
### Improving Existing Content
- Fix broken links or outdated information
- Improve tool descriptions or categorization
- Add missing tools to existing categories
### Creating New Categories
- Suggest new tool categories that are missing
- Organize tools that don't fit existing categories
- Create comprehensive category pages
### Documentation Improvements
- Fix typos, grammar, or formatting issues
- Improve navigation or user experience
- Add examples or usage guides
## Content Guidelines
### Tool Requirements
- **Active Maintenance**: Tools should be actively maintained
- **Documentation Focus**: Tools must be relevant to documentation creation/management
- **Quality**: Include only high-quality, useful tools
- **Description**: Provide clear, concise descriptions
### Style Guidelines
- Use consistent formatting and structure
- Include proper links and references
- Follow the existing content organization
- Use clear, professional language
### Review Process
1. All contributions are reviewed by maintainers
2. We check for quality, relevance, and accuracy
3. Feedback may be provided for improvements
4. Approved changes are merged into the main branch
## Getting Help
- **Issues**: Report bugs or suggest features in [GitHub Issues](https://github.com/testthedocs/awesome-docs/issues)
- **Discussions**: Join conversations in [GitHub Discussions](https://github.com/testthedocs/awesome-docs/discussions)
- **Questions**: Feel free to ask questions in your pull requests
## Development Tips
### Working with VitePress
- Files in `docs/` become pages automatically
- Use Markdown for content creation
- The site rebuilds automatically when you save changes
- Check the browser console for any errors
### Project Structure
```
docs/
├── .vitepress/ # VitePress configuration
│ ├── config.mjs # Site configuration
│ └── theme/ # Custom theming
├── index.md # Homepage
├── generators/ # Site generators section
│ └── index.md
├── api/ # API documentation section
│ └── index.md
├── quality/ # Quality assurance section
│ └── index.md
└── contributing/ # Contributing documentation
└── index.md # This file
```
### Testing Your Changes
Always test your changes before submitting:
- Verify all links work correctly
- Check that new content appears in navigation
- Ensure the site builds without errors
- Test the search functionality with your new content
## Community & Recognition
### Contributors
Thanks to all [contributors](https://github.com/testthedocs/awesome-docs/graphs/contributors) who have helped make this resource better - you rock! 🎉
Your contributions help the entire documentation community by:
- Making tools more discoverable
- Sharing knowledge and best practices
- Keeping information current and accurate
- Building a comprehensive resource for everyone
### Recognition
If you see a package or project here that is no longer maintained or is not a good fit, please submit a pull request to improve this file. Thank you!
## License & Legal
This project is licensed under [CC0 1.0 Universal](https://github.com/testthedocs/awesome-docs/blob/main/LICENSE).
### What This Means
- **Public Domain**: This work is in the public domain
- **No Rights Reserved**: You can copy, modify, distribute and perform the work
- **Commercial Use**: You can use this work for commercial purposes
- **No Attribution Required**: Though attribution is appreciated, it's not required
### Contributing Agreement
By contributing to this project, you agree that your contributions will be licensed under the same CC0 1.0 Universal license.
Thank you for contributing to Awesome Docs! 🎉