Skip to content

Releases: ap-dev-github/atithidev-mongoose-api

v1.0.0

03 Mar 19:32
b582c51
Compare
Choose a tag to compare

🚀 Release v1.0.0 - Atithidev Serverless API

📌 Overview

This is the first stable release (v1.0.0) of the Atithidev Serverless API, a fully AWS Lambda-based API built with Express.js and MongoDB Atlas. This API enables seamless host and review management, ensuring scalability, cost-efficiency, and automated deployment through the Serverless Framework & GitHub Actions.

🆕 Key Features in v1.0.0

  • Serverless & Scalable – Deployed on AWS Lambda with API Gateway
  • Database-Driven – Uses MongoDB Atlas for persistent storage
  • CI/CD Automation – GitHub Actions automates linting & deployments
  • ESLint Integration – Enforces best practices before deployment
  • Environment Variable Handling – Uses .env (ignored in Git) or AWS Lambda environment variables
  • Local Development Support – Run API locally using Serverless Offline

🛠 CI/CD Automation with GitHub Actions

This release introduces CI/CD automation using GitHub Actions:

  • Automated Linting – ESLint checks for code quality before deployment
  • Dependency Management – Installs only production dependencies
  • Automated Deployment – Deploys to AWS Lambda on main branch push
  • Secure Credential Handling – Uses GitHub Secrets for AWS keys

🔒 Security Best Practices Implemented

  • AWS Credentials are stored in GitHub Secrets (not in code)
  • .env file ignored to prevent database leaks
  • CI/CD restricts deployments unless linting & security checks pass

🚀 GitHub Actions Workflow (CI/CD) Includes:

  1. Step 1: Checkout repository
  2. Step 2: Install dependencies (npm install)
  3. Step 3: Run ESLint (npx eslint .)
  4. Step 4: Install only production dependencies (npm ci --only=production)
  5. Step 5: Deploy to AWS Lambda (npx serverless deploy)

🛠 ESLint Integration

ESLint ensures consistent & high-quality code. The CI/CD workflow stops deployment if linting fails. Run manually using:

npx eslint .

Note: ESLint is not deployed (only runs in CI/CD).

🚀 AWS Lambda Deployment with Serverless Framework

The API is deployed automatically using the Serverless Framework:

  1. AWS Lambda hosts the API functions
  2. API Gateway provides HTTP endpoints
  3. MongoDB Atlas serves as the database
  4. CloudWatch Logs enable monitoring & debugging

To deploy manually:

npx serverless deploy

👨‍💻 Maintained By

🚀 Ayush Pandey | Contact: ayushpandey.cs@gmail.com

🔗 LinkedIn: Ayush Pandey

💡 Feedback & Contributions

For issues, suggestions, or feature requests, create a GitHub Issue! 🚀

v1.0.0 is now live! Next: more optimizations & monitoring integrations! 🚀