Skip to content

ozkeisar/mockingbird

Repository files navigation

Mockingbird

Mockingbird is a tool designed to help software developers test their apps without needing the real server or backend ready. Imagine you’re building a new app, but the part of the system that handles data isn’t finished yet. Instead of waiting around, you can use Mockingbird to create a pretend version of that system. This allows you to keep working and testing your app as if everything is already set up, saving time and frustration.

Main Features

  1. Multiple Responses for Each Route: Create different responses for the same API route, allowing you to simulate various scenarios like successful requests or errors. This helps you test how your app handles different situations.

  2. Presets: Easily switch between different sets of responses with just one click. This feature allows you to test how your app behaves in various scenarios without manually changing the responses each time.

  3. Git Integration: All mock data is stored in a Git repository, providing version control and security without the need for additional servers. You can track changes over time and collaborate more effectively.

  4. Proxy Functionality: Mockingbird can listen to actual API requests and responses, helping you quickly create mocks based on real API calls. This saves time by automating part of the setup process.

  5. API Call Monitoring: Monitor all incoming API calls to see exactly what requests are being made by your app and how they’re handled by Mockingbird.

  6. GraphQL Support: Full support for creating and managing GraphQL mocks, making it easy to work with GraphQL APIs during development.

  7. Multiple Projects and Servers: Manage different projects and servers within Mockingbird, making it a versatile tool for teams working on multiple applications.

  8. Built-in API for Testing: Includes a built-in API that allows you to control Mockingbird during automated tests, helping you seamlessly integrate it into your testing workflow.

  9. Docker image: mockingbird have a docker image that let's you set it up as part of your ci/cd, make it suitable for your e2e testing.

Mockingbird Guides

  1. Mockingbird: New Tool for Your Mock Environments
  2. Setting Up Your Mock Server with Mockingbird
  3. Mockingbird Presets: Optimizing API Development Workflows
  4. Creating and Managing Multiple Projects and Servers with Mockingbird
  5. I built a new way of mocking GraphQL server
  6. Dockerize Your Mockingbird Setup: A Quickstart Guide

creating Docker image

Docker folder contains scripts to run the project as a standalone server.

npm run build:backend to build teh JS files required for the standalone server.

Then use docker build . -t {username}/mockingbird:{version} to create the image.

Licensing

Mockingbird is dual-licensed under the GNU Affero General Public License v3.0 (AGPLv3) for open-source use and a commercial license for proprietary use. For more details, see LICENSE and COMMERCIAL_LICENSE.

Contributing

We welcome contributions to Mockingbird! Please read and agree to our Contributor License Agreement (CLA) before contributing. For more details, see CONTRIBUTING.

Troubleshooting

Error - Developer Cannot be Verified (Mac Users)

  • Open terminal and Run Command:

    `xattr -c /Applications/Mockingbird.app` 
    
  • Verify Mockingbird:

    • Once the command has been executed successfully, try running Mockingbird again.

For support or inquiries, contact us at [email protected]

Spread your wings with Mockingbird! 🚀