This repository contains five microservice APIs built as part of the freeCodeCamp.org Back End Development and APIs Certification. These projects demonstrate practical skills in Node.js, npm, Express, MongoDB, and Mongoose.
🕒 An API that returns Unix and UTC timestamps for a given date string or the current date.
Example:
/api/timestamp/2015-12-25
→{ "unix": 1451001600000, "utc": "Fri, 25 Dec 2015 00:00:00 GMT" }
📋 An API that returns information about the client's IP address, language, and software from the request headers.
Example:
/api/whoami
→{ "ipaddress": "192.168.1.1", "language": "en-US,en", "software": "Chrome/91.0.4472.124" }
🔗 An API that shortens URLs and redirects users to the original URL when the short link is visited.
Example: POST
/api/shorturl
→{ "original_url": "https://www.freecodecamp.org", "short_url": 1 }
🏃♂️ An API that allows users to create accounts, log exercises, and retrieve exercise logs. Built with MongoDB and Mongoose.
Features: User creation, exercise logging, and filtering logs by date range
📂 An API that accepts file uploads and returns metadata about the uploaded file, such as name, type, and size.
Example: Upload a file →
{ "name": "example.jpg", "type": "image/jpeg", "size": 12345 }
Through these projects, I learned how to:
- Build RESTful APIs using Node.js and Express
- Manage project dependencies with npm
- Handle HTTP requests and responses
- Parse and validate user input
- Work with MongoDB and Mongoose for data storage and retrieval
- Implement file upload functionality
- Deploy and test microservices
# Clone the repository
git clone https://github.com/yourusername/backend-dev-apis-projects.git
# Navigate to project directory
cd backend-dev-apis-projects
# Install dependencies
npm install
Each microservice can be run independently:
# Navigate to specific project
cd timestamp-microservice
# Install project dependencies
npm install
# Start the service
npm start
These projects were completed as part of the freeCodeCamp Back End Development and APIs curriculum.