Skip to main content

Welcome to Adoptme API

Adoptme is a comprehensive REST API service designed to manage pet adoption processes. Built with Express.js and MongoDB, it provides a complete backend solution for connecting pets with their future owners.

Key features

User management

Complete user registration, authentication, and profile management with JWT-based security

Pet catalog

Full CRUD operations for managing pets with support for images, species, and adoption status

Adoption tracking

Track and manage the entire adoption process, linking pets with their owners

JWT authentication

Secure API endpoints with JSON Web Token authentication and session management

Mock data generation

Built-in endpoints to generate test data for users and pets using Faker.js

Docker support

Fully containerized application ready for deployment with Docker and Docker Compose

MongoDB integration

Mongoose ODM for elegant MongoDB object modeling and data validation

API documentation

Interactive Swagger UI documentation available at /docs endpoint

Get started

Quickstart

Get your API running in under 5 minutes

Installation

Detailed installation and configuration guide

API reference

Complete API endpoint documentation

Docker deployment

Deploy with Docker and Docker Hub

Technology stack

Adoptme API is built using modern Node.js technologies:
  • Express.js - Fast, unopinionated web framework
  • MongoDB - NoSQL database with Mongoose ODM
  • JWT - Secure token-based authentication
  • bcrypt - Password hashing and encryption
  • Swagger - Interactive API documentation
  • Faker.js - Mock data generation for testing
  • Mocha & Chai - Testing framework
  • Docker - Containerization and deployment

Live deployment

The Adoptme API is deployed and available at: API Base URL: https://coderhouse-backendiii-production.up.railway.app Swagger Documentation: https://coderhouse-backendiii-production.up.railway.app/docs
The live API is hosted on Railway and includes full Swagger documentation for interactive testing.

Build docs developers (and LLMs) love