I recently completed Stage 0 of the Backend.
The task involved creating a simple RESTful API endpoint that returns personal profile information along with a random cat fact fetched from a third-party API.
Task Overview
The main goal was to build a /me endpoint that:
- Returns structured JSON data with the following fields:
- - status
- - user (containing email, name, and stack)
- - timestamp (current UTC time in ISO 8601 format)
- - fact (a random cat fact fetched from the Cat Facts API)
- Handles API errors gracefully
- Ensures each request returns a fresh cat fact and timestamp
**
Tech Stack
**
- Backend Framework: Node.js (Express)
- Language: TypeScript
- Testing Tools: Jest & Supertest
- Deployment Platform: (e.g., Railway / Render / AWS)
- Version Control: GitHub
**
Key Features
**
- Integrated a third-party API to fetch live data dynamically.
- Implemented proper error handling and fallback mechanisms for API failures.
- Used ISO 8601 format to ensure consistent timestamps.
- Added automated tests to validate response structure and reliability.
**
What I Learned
**
- How to consume and handle external API responses effectively.
- Best practices for structuring a RESTful endpoint.
- The importance of consistent response formatting and proper HTTP status codes.
- How to test and verify endpoints using Jest and Supertest.
**
Project Links
**
- Live Endpoint: https://hng-backend-stage-0-l1vs.onrender.com/me
- GitHub Repository: https://github.com/Ayokayzy/hng-backend-stage-0
Top comments (0)