Skip to content

Contributing

Thank you for your interest in contributing to JSONPlaceholder! This project is split across two repositories to keep concerns separated.

📁 Repository Structure

API Server Repository

🔗 github.com/ckissi/jsonplaceholder-api

This contains the main JSONPlaceholder API server built with Bun and Elysia.js.

Contribute to:

  • API endpoints and functionality
  • Performance improvements
  • Server configuration
  • Data generation and seeding
  • Bug fixes in the API
  • New API features

Documentation Site Repository

🔗 github.com/ckissi/jsonplaceholder

This contains the documentation website you're currently reading, built with VitePress.

Contribute to:

  • Documentation improvements
  • Examples and tutorials
  • Website design and UI
  • Code examples in different languages
  • Bug fixes in documentation
  • New documentation pages

🚀 How to Contribute

For API Changes

  1. Fork ckissi/jsonplaceholder-api
  2. Clone your fork locally
  3. Create a feature branch
  4. Make your changes to the API server
  5. Test your changes thoroughly
  6. Submit a pull request

For Documentation Changes

  1. Fork ckissi/jsonplaceholder
  2. Clone your fork locally
  3. Create a feature branch
  4. Make your changes to the documentation
  5. Preview changes locally with pnpm run dev
  6. Submit a pull request

🛠️ Development Setup

API Server Setup

bash
# Clone the API repository
git clone https://github.com/ckissi/jsonplaceholder-api
cd jsonplaceholder-api

# Install dependencies
bun install

# Start development server
bun run dev

Documentation Setup

bash
# Clone the documentation repository
git clone https://github.com/ckissi/jsonplaceholder
cd jsonplaceholder

# Install dependencies
pnpm install

# Start development server
pnpm run dev

📋 Contribution Guidelines

General Guidelines

  • Follow existing code style and conventions
  • Write clear commit messages
  • Test your changes thoroughly
  • Update documentation when needed
  • Be respectful and constructive in discussions

API Contributions

  • Ensure backward compatibility
  • Add appropriate tests for new features
  • Follow RESTful principles
  • Consider performance implications
  • Update API documentation if needed

Documentation Contributions

  • Keep language clear and beginner-friendly
  • Include code examples where helpful
  • Ensure examples are tested and working
  • Follow the existing documentation structure
  • Check for typos and grammatical errors

🐛 Reporting Issues

API Issues

Report bugs, performance issues, or feature requests for the API server at: github.com/ckissi/jsonplaceholder-api/issues

Documentation Issues

Report documentation bugs, unclear instructions, or suggestions at: github.com/ckissi/jsonplaceholder/issues

📝 Code of Conduct

Please be respectful and follow these principles:

  • Be welcoming to newcomers
  • Be respectful of differing viewpoints
  • Focus on what's best for the community
  • Show empathy towards other community members

🤝 Questions?

If you're unsure which repository to contribute to or have general questions:

  • Check existing issues in both repositories
  • Start a discussion in the appropriate repository
  • Reach out through GitHub

Thank you for helping make JSONPlaceholder better! 🎉

Fast Fake REST API powered by Bun + Elysia.js | Documentation site source: github.com/ckissi/jsonplaceholder