Node.js GraphQL Micro-service Documentation
Welcome to the official documentation for the Computer Parts Shop micro-service showcase.
This project is designed as an educational resource to demonstrate a professional, standard way of implementing a micro-service using Node.js, GraphQL, and MongoDB.
Goal of this Project
The primary goal is to provide a "gold standard" example for developers who want to learn how to:
- Build a robust GraphQL API with Apollo Server.
- Interface with MongoDB using Mongoose.
- Containerize a micro-service with Docker.
- Implement a comprehensive testing strategy using Jest and Testcontainers for Node.js.
- Set up a professional CI/CD pipeline with GitHub Actions.
Navigation
This manual is divided into several sections to help you understand different aspects of the service:
- Architecture: Learn about the project structure and the design patterns used.
- API Guide: Details about the GraphQL schema, queries, and mutations.
- Database: How we model data and interact with MongoDB.
- Testing: Deep dive into our unit and integration testing strategy.
- CI/CD: Explanation of our automated build, test, and coverage reporting pipeline.
Quick Start
If you want to jump straight into the code, check out the Getting Started section in the main README.