Skip to main content

Introduction

Welcome to the Fish Tracker Backend API documentation. This API serves as the backend for the Fish Tracker application, a system designed to track and manage fish and crab data for various Minecraft gamemodes in the CosmosMc minecraft server.

Overview​

The Fish Tracker API is built with Node.js and Express, using MongoDB as the database. It provides endpoints for:

  • Public Access: Retrieving demo data and user-specific fish/crab information
  • User Management: Handling user authentication and data operations
  • Admin Panel: Comprehensive administrative controls for managing users, data, and system statistics

Key Features​

  • Multi-Gamemode Support: Supports OneBlock, Earth, Survival, and Factions gamemodes
  • Rarity System: Fish are categorized by rarity levels (Bronze, Silver, Gold, Diamond, Platinum, Mythical)
  • Admin Dashboard: Full administrative interface with user management, data manipulation, and analytics
  • Security: JWT authentication, CSRF protection, rate limiting, and CORS configuration
  • Scalable Architecture: Modular design with separate controllers, models, and middleware

Architecture​

The backend follows a modular architecture:

  • Routes: Define API endpoints and route handlers
  • Models: Handle database interactions and data mapping
  • Middleware: Authentication, CSRF protection, rate limiting
  • Utilities: Helper functions and configurations

Getting Started​

To get started with the API:

  1. Installation and Deployment - Set up the development environment
  2. API Overview - Understand the available endpoints
  3. Models - Learn about the data structures