Skip to content

Latest commit

 

History

History
164 lines (127 loc) · 4.6 KB

CONTRIBUTING.md

File metadata and controls

164 lines (127 loc) · 4.6 KB

Contributing to wordsofweb3

First off, thank you for considering contributing to wordsofweb3! This is a community-driven project aiming to create a comprehensive, multilingual web3 glossary.

Table of Contents

  1. Code of Conduct
  2. Types of Contributions
  3. Getting Started
  4. How to Contribute
  5. Reporting Issues
  6. Translation Guidelines
  7. Internationalization
  8. Security Considerations
  9. Style Guide
  10. Getting Help
  11. Recognition
  12. License

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. Please report unacceptable behavior to the project maintainers through GitHub's reporting tools.

Types of Contributions

We welcome several types of contributions:

  1. Term Additions/Modifications

    • New term definitions
    • Translations
    • Improvements to existing definitions
  2. Technical Contributions

    • Bug fixes
    • Feature enhancements
    • Documentation improvements
  3. Content Quality

    • Spelling/grammar fixes
    • Fact checking
    • Source verification

Getting Started

Quick Links

Development Environment

  1. Fork the repository
  2. Clone your fork:
git clone https://github.com/your-username/wordsofweb3.git
cd wordsofweb3
  1. Set up your development environment:
npm install
npm run build

Project Structure

./
├── src/           # Source files
├── locales/       # Language-specific content
├── static/        # Static assets
└── build/         # Generated site output

How to Contribute

Adding or Modifying Terms

  1. Create an Issue using the Term Addition/Modification template
  2. Format your submission in either:
    • JSON format (preferred)
    • Narrative form

Example JSON format:

{
    "example-term": {
        "term": "Example Term",
        "partOfSpeech": "noun",
        "termCategory": "web3",
        "phonetic": "/ɪɡˈzæmpəl tɜːm/",
        "definition": "A clear example of how to format term submissions.",
        "definitionSource": "",
        "sampleSentence": "",
        "extended": "",
        "termSource": "",
        "dateFirstRecorded": "",
        "commentary": ""
    }
}

Submitting Changes

[Previous git workflow content remains the same...]

Internationalization

Language Support

  • Each term should be available in multiple languages
  • Maintain consistent structure across translations
  • Consider cultural context and regional variations

Translation Process

  1. Term Selection

    • Identify terms needing translation
    • Verify technical accuracy
    • Consider regional variations
  2. Quality Assurance

    • Native speaker review
    • Technical accuracy verification
    • Cultural context validation
  3. Documentation

    • Include source references
    • Note regional variations
    • Document translation decisions

Security Considerations

IPFS-Specific Security

  • Content permanence: Once published, content cannot be fully removed from IPFS
  • Gateway security: Use trusted IPFS gateways
  • ENS name resolution: Verify ENS names and records

Data Validation

  • Verify term sources and references
  • Validate JSON formatting
  • Check for malicious content or links

Best Practices

  • Use secure communication channels
  • Verify contributor identities
  • Follow secure development practices

[Previous content for Reporting Issues, Style Guide, etc. remains the same...]

Getting Help

Recognition

Contributors will be recognized in:

License

By contributing, you agree that your contributions will be licensed under the project's DBAD License.