Skip to content

Latest commit

Β 

History

History
366 lines (269 loc) Β· 8.08 KB

File metadata and controls

366 lines (269 loc) Β· 8.08 KB

🀝 Contributing to devdocx

First off, thank you for considering contributing to devdocx! It's people like you that make this documentation resource better for everyone. πŸŽ‰

πŸŽƒ Hacktoberfest 2025

This project is participating in Hacktoberfest 2025! We welcome contributions from developers of all skill levels.

How to Participate

  1. Register at hacktoberfest.com
  2. Make 4 quality pull requests during October
  3. Get your PR merged to count towards Hacktoberfest!

Note: Please make sure your contributions are meaningful and follow our guidelines. Spam PRs will be marked as invalid or spam.

πŸ“‹ Table of Contents

πŸ“œ Code of Conduct

This project and everyone participating in it is governed by our Code of Conduct. By participating, you are expected to uphold this code.

🌟 How Can I Contribute?

1. Add New Documentation

  • Add docs for new libraries/frameworks (Next.js, React, TypeScript, etc.)
  • Expand existing documentation with more examples
  • Create new cheatsheets

2. Improve Existing Content

  • Fix typos or grammatical errors
  • Add more code examples
  • Improve explanations
  • Add diagrams or visualizations
  • Update outdated information

3. Add Interview Questions

  • Add more interview questions with detailed answers
  • Add real-world scenario questions
  • Add coding challenges

4. Enhance CLI Tool

  • Add search functionality
  • Add interactive mode
  • Improve error handling
  • Add syntax highlighting

5. Fix Bugs

  • Report bugs via issues
  • Fix existing bugs

6. Improve Documentation Structure

  • Suggest better organization
  • Add navigation improvements
  • Create index pages

πŸš€ Getting Started

Prerequisites

  • Node.js (v14 or higher)
  • npm or yarn
  • Git
  • A code editor (VS Code recommended)

Fork and Clone

  1. Fork the repository on GitHub

  2. Clone your fork locally:

    git clone https://github.com/YOUR_USERNAME/devdocx.git
    cd devdocx
  3. Add upstream remote:

    git remote add upstream https://github.com/GreenHacker420/devdocx.git
  4. Install dependencies:

    npm install
  5. Create a new branch:

    git checkout -b feature/your-feature-name

Test Locally

Test the CLI tool:

# Link the package locally
npm link

# Test the CLI
devdocx javascript/arrays
devdocx express/middleware

πŸ“ Contribution Guidelines

Documentation Standards

  1. File Naming

    • Use lowercase with hyphens: array-methods.md, async-await.md
    • Be descriptive and concise
  2. Markdown Format

    # Topic Title
    
    Brief description of the topic.
    
    ## Subtopic
    
    Explanation...
    
    ### Example
    ```javascript
    // Code example with comments
    const example = "Clear and working code";

    Output:

    Expected output
    
    
    
  3. Code Examples

    • Must be working and tested
    • Include comments explaining key parts
    • Show expected output when relevant
    • Use real-world examples when possible
  4. Content Quality

    • Clear and concise explanations
    • Beginner-friendly but comprehensive
    • Include both basic and advanced examples
    • Add warnings for common pitfalls
    • Link to related topics

Documentation Template

# Topic Name

Brief overview of what this topic covers (2-3 sentences).

## What is [Topic]?

Detailed explanation of the concept.

## Basic Example

```javascript
// Simple, clear example
const example = "code";

Common Use Cases

  1. Use Case 1

    // Example code
  2. Use Case 2

    // Example code

Advanced Usage

// More complex example

Common Pitfalls

  • ⚠️ Pitfall 1: Explanation and how to avoid
  • ⚠️ Pitfall 2: Explanation and how to avoid

Best Practices

  • βœ… Best practice 1
  • βœ… Best practice 2

Related Topics

References


## πŸ”„ Pull Request Process

1. **Update your fork**:
   ```bash
   git fetch upstream
   git checkout main
   git merge upstream/main
  1. Create a feature branch:

    git checkout -b feature/amazing-feature
  2. Make your changes:

    • Follow the style guide
    • Test your changes
    • Add comments where necessary
  3. Commit your changes:

    git add .
    git commit -m "Add: Brief description of changes"

    Commit Message Format:

    • Add: for new features/docs
    • Fix: for bug fixes
    • Update: for improvements
    • Docs: for documentation changes
    • Refactor: for code refactoring
  4. Push to your fork:

    git push origin feature/amazing-feature
  5. Create a Pull Request:

    • Go to your fork on GitHub
    • Click "New Pull Request"
    • Fill in the PR template
    • Link any related issues

PR Checklist

  • My code follows the style guidelines
  • I have tested my changes locally
  • All examples are working and tested
  • I have added comments for complex code
  • My commit messages are clear and descriptive
  • I have updated the README if needed
  • My changes don't break existing functionality

🎨 Style Guide

Markdown

  • Use ATX-style headers (# instead of underlines)
  • Use fenced code blocks with language specified
  • Use bold for emphasis, italic for light emphasis
  • Use backticks for inline code
  • Add blank lines between sections

Code Style

JavaScript:

// Use const/let, not var
const myVariable = "value";

// Use descriptive names
const userAuthentication = async (credentials) => {
  // Clear comments for complex logic
  const token = await generateToken(credentials);
  return token;
};

// Use modern ES6+ syntax
const { name, email } = user;

File Organization

docs/
β”œβ”€β”€ topic/
β”‚   β”œβ”€β”€ basic-concept.md
β”‚   β”œβ”€β”€ advanced-concept.md
β”‚   └── subtopic.md

🎯 Good First Issues

Look for issues labeled:

  • good first issue - Perfect for newcomers
  • documentation - Documentation improvements
  • help wanted - We need your help!
  • hacktoberfest - Hacktoberfest-friendly issues

Beginner-Friendly Contributions

  1. Fix typos - Easy way to start!
  2. Add code comments - Help explain existing code
  3. Improve examples - Make them more clear
  4. Add output examples - Show what code produces
  5. Write tests - Ensure examples work

πŸ› Reporting Bugs

Before submitting a bug report:

  • Check existing issues
  • Try to reproduce the bug
  • Collect information about your environment

When submitting a bug report, include:

  • Clear title and description
  • Steps to reproduce
  • Expected behavior
  • Actual behavior
  • Screenshots if applicable
  • Environment details (OS, Node version, etc.)

πŸ’‘ Suggesting Enhancements

When suggesting an enhancement:

  • Use a clear and descriptive title
  • Provide detailed description
  • Explain why this enhancement would be useful
  • Provide examples if possible

❓ Questions?

  • Open an issue with the question label
  • Check existing issues and documentation
  • Be respectful and patient

πŸ† Recognition

Contributors will be:

  • Listed in our README
  • Mentioned in release notes
  • Part of the devdocx community!

πŸ“ž Contact

  • GitHub Issues: For bugs and features
  • Discussions: For questions and ideas
  • Email: [Your contact if you want to add]

Thank You! πŸ™

Your contributions make devdocx better for everyone. Whether it's a typo fix or a major feature, every contribution matters!

Happy Contributing! πŸš€


This document is inspired by open-source contribution guidelines and adapted for devdocx.