├── .github ├── CODEOWNERS ├── pull_request_template.md └── workflows │ ├── greetings.yml │ └── contributors.yml ├── .gitignore ├── docs ├── assets │ └── images │ │ ├── cloud-resume-api-favicon.ico │ │ └── cloud-resume-api-favicon.png ├── index.md ├── azure.md ├── gcp.md ├── aws.md └── submissions.md ├── .gitpod.yml ├── requirements.txt ├── mkdocs.yml └── README.md /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @rishabkumar7 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .venv 2 | __pycache__ 3 | venv 4 | 5 | # macOS internals 6 | .DS_Store -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- 1 | ## Short description for your project 2 | 3 | ## Services used 4 | 5 | ## Screenshots/Architecture diagram 6 | -------------------------------------------------------------------------------- /docs/assets/images/cloud-resume-api-favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rishabkumar7/cloud-resume-api/HEAD/docs/assets/images/cloud-resume-api-favicon.ico -------------------------------------------------------------------------------- /docs/assets/images/cloud-resume-api-favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rishabkumar7/cloud-resume-api/HEAD/docs/assets/images/cloud-resume-api-favicon.png -------------------------------------------------------------------------------- /.gitpod.yml: -------------------------------------------------------------------------------- 1 | # This configuration file was automatically generated by Gitpod. 2 | # Please adjust to your needs (see https://www.gitpod.io/docs/introduction/learn-gitpod/gitpod-yaml) 3 | # and commit this file to your remote git repository to share the goodness with others. 4 | 5 | # Learn more from ready-to-use templates: https://www.gitpod.io/docs/introduction/getting-started/quickstart 6 | 7 | tasks: 8 | - init: pip install -r requirements.txt 9 | 10 | 11 | -------------------------------------------------------------------------------- /.github/workflows/greetings.yml: -------------------------------------------------------------------------------- 1 | name: Greetings 2 | 3 | on: [pull_request_target, issues] 4 | 5 | jobs: 6 | greeting: 7 | runs-on: ubuntu-latest 8 | permissions: 9 | issues: write 10 | pull-requests: write 11 | steps: 12 | - uses: actions/first-interaction@v1 13 | with: 14 | repo-token: ${{ secrets.GITHUB_TOKEN }} 15 | issue-message: "Hi 👋🏽, thank you for creating an Issue, we will review this and start working on it." 16 | pr-message: "Hi 👋🏽, thank you for contributing to this project, we will review your changes shortly." 17 | -------------------------------------------------------------------------------- /.github/workflows/contributors.yml: -------------------------------------------------------------------------------- 1 | name: Contributors List 2 | 3 | on: 4 | workflow_dispatch: 5 | push: 6 | branches: 7 | - main 8 | 9 | jobs: 10 | contrib-readme-job: 11 | runs-on: ubuntu-latest 12 | name: A job to automate contrib in readme 13 | permissions: 14 | contents: write 15 | pull-requests: write 16 | steps: 17 | - name: Contribute List 18 | uses: akhilmhdh/contributors-readme-action@v2.3.10 19 | env: 20 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 21 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | Babel==2.14.0 2 | certifi==2023.11.17 3 | charset-normalizer==3.3.2 4 | click==8.1.7 5 | colorama==0.4.6 6 | ghp-import==2.1.0 7 | idna==3.6 8 | importlib-metadata==7.0.0 9 | Jinja2==3.1.2 10 | Markdown==3.5.1 11 | MarkupSafe==2.1.3 12 | mergedeep==1.3.4 13 | mkdocs==1.5.3 14 | mkdocs-material==9.5.2 15 | mkdocs-material-extensions==1.3.1 16 | packaging==23.2 17 | paginate==0.5.6 18 | pathspec==0.12.1 19 | platformdirs==4.1.0 20 | Pygments==2.17.2 21 | pymdown-extensions==10.5 22 | python-dateutil==2.8.2 23 | PyYAML==6.0.1 24 | pyyaml_env_tag==0.1 25 | regex==2023.10.3 26 | requests==2.31.0 27 | six==1.16.0 28 | urllib3==2.1.0 29 | watchdog==3.0.0 30 | zipp==3.17.0 31 | -------------------------------------------------------------------------------- /mkdocs.yml: -------------------------------------------------------------------------------- 1 | site_name: Cloud Resume API Challenge 2 | 3 | theme: 4 | name: material 5 | # Fonts 6 | 7 | font: 8 | text: Roboto 9 | 10 | favicon: assets/images/cloud-resume-api-favicon.ico 11 | 12 | features: 13 | - toc.follow 14 | - navigation.footer 15 | 16 | # icons 17 | icon: 18 | logo: material/apple-icloud 19 | repo: fontawesome/brands/git-alt 20 | 21 | palette: 22 | #- primary: indigo 23 | 24 | # Palette toggle for light mode 25 | - scheme: default 26 | toggle: 27 | icon: material/lightbulb 28 | name: Switch to dark mode 29 | 30 | # Palette toggle for dark mode 31 | - scheme: slate 32 | toggle: 33 | icon: material/lightbulb-outline 34 | name: Switch to light mode 35 | 36 | # Repo details 37 | repo_url: https://github.com/rishabkumar7/cloud-resume-api 38 | repo_name: rishabkumar7/cloud-resume-api 39 | 40 | extra: 41 | generator: false 42 | social: 43 | - icon: fontawesome/brands/github 44 | link: https://github.com/rishabkumar7 45 | - icon: fontawesome/brands/twitter 46 | link: https://twitter.com/rishabincloud 47 | - icon: fontawesome/brands/youtube 48 | link: https://www.youtube.com/@rishabincloud 49 | 50 | copyright: Copyright © 2023 - 2024 Rishab Kumar 51 | 52 | # Plugins -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- 1 | # Cloud Resume API Challenge 2 | 3 | [![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fcloudresumeapi.dev&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false)](https://hits.seeyoufarm.com) 4 | ![GitHub Repo stars](https://img.shields.io/github/stars/rishabkumar7/cloud-resume-api) 5 | 6 | Welcome to the Cloud Resume API Challenge. A project where you will have the opportunity to build and deploy a serverless API using different Cloud providers (of your choice), integrated with GitHub Actions for CI/CD. The primary goal? Construct an API that can serve resume data in JSON format. 7 | 8 | ## Challenge Objective 🎯 9 | 10 | Your task is to create a Serverless function that fetches resume data stored in a NoSQL Database and return it in JSON format. To level up the challenge, integrate GitHub Actions to automatically deploy updates to your Cloud Serverless function whenever you push to your repository. 11 | If you are video person, you can check [this out.](https://youtu.be/iZq8aaGMpjM?si=O4g8Cm6l3urZA1tI) 12 | 13 | ## Key Requirements 14 | 15 | - NoSQL Database: Containing sample resume data. 16 | - Serverless Function: Fetch and return resume data. 17 | - GitHub Actions: Automatically package and deploy your serverless on every push to the repository. 18 | 19 | ## Getting Started 🚀 20 | 21 | The Challenge now support all three major cloud providers: 22 | 23 | - [AWS](/aws) 24 | - [Azure](/azure) 25 | - [GCP](/gcp) 26 | 27 | ## Submission/Showcase 📥 28 | 29 | Once you're ready to submit your project, you can create a pull request to this repository. 30 | Add your name, github repo URL and the resume API URL to the table in `submissions.md` file. 31 | In your pull request, provide a summary of what you've done and any additional features or functionalities you've added. 32 | 33 | All the submission can be found [here](/submissions). 34 | 35 | ## Acknowledgements 👏 36 | 37 | Thank you to everyone who decides to participate. Community challenges like this are a great way to learn, improve, and demonstrate your skills. I can't wait to see what you build! 38 | -------------------------------------------------------------------------------- /docs/azure.md: -------------------------------------------------------------------------------- 1 | # Cloud Resume API with Azure 2 | 3 | [![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fcloudresumeapi.dev&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false)](https://hits.seeyoufarm.com) 4 | ![GitHub Repo stars](https://img.shields.io/github/stars/rishabkumar7/cloud-resume-api) 5 | 6 | ## Azure Resume API Challenge 7 | 8 | Welcome to the Azure Resume API Challenge. A project where you will have the opportunity to build and deploy a serverless API using Azure Functions and CosmosDB, integrated with GitHub Actions. The primary goal? Construct an API that can serve resume data in JSON format. 9 | 10 | ## Challenge Objective 🎯 11 | 12 | Your task is to create an Azure Function that fetches resume data stored in CosmosDB and return it in JSON format. To level up the challenge, integrate GitHub Actions to automatically deploy updates to your Azure Functions whenever you push changes to your git repository. 13 | 14 | ## Key Requirements 15 | 16 | - CosmosDB Table: Set up a table named Resumes containing sample resume data. 17 | - Azure Function: Fetch and return resume data based on an id. Utilize HTTP Trigger with anonymous access. 18 | - GitHub Actions: Automatically package and deploy your Lambda function on every push to the repository. 19 | 20 | **Bonus**: Use [Azure Bicep](https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/overview?tabs=bicep) or [Terraform](https://www.terraform.io/) for infrastructure as code! 21 | 22 | ## Getting Started 🚀 23 | 24 | - **Set Up Azure**: If you haven't already, sign up for an Azure account and set up your credentials. Remember, when using Azure secrets and never expose them in your code. 25 | - **Create a JSON Resume**: Use [this schema](https://jsonresume.org/schema/) to create your own JSON resume. 26 | - **Create Azure Resources**: Deploy the needed Azure services - CosmosDB and Azure Function. 27 | - **Create Your Workflow**: Use the [provided GitHub Actions template](https://github.com/Azure/functions-action) as a guide, but feel free to innovate! 28 | - **Test Everything**: Ensure your API works as expected and the GitHub Actions deploy smoothly. 29 | 30 | ## Submission Guidelines 📥 31 | 32 | Ensure all your code is in a GitHub repository. 33 | Make sure your README has detailed instructions on how to run and test your API. 34 | Write a blog post sharing the things you learned during building this project. 35 | 36 | Once you're ready to submit, create a pull request to this repository. 37 | Add your name, github repo URL and the resume API URL to the table in `submissions.md` file. 38 | In your pull request, provide a summary of what you've done and any additional features or functionalities you've added. 39 | 40 | All the submission can be found [here](/submissions). 41 | 42 | ## Completion Criteria 🏆 43 | 44 | - Functionality: Does the API work? Does the deployment succeed via GitHub Actions? 45 | - Code Quality: Is the code clean, well-organized, and documented? 46 | - Innovation: Did you add any extra features or use any unique methods? 47 | 48 | ## Acknowledgements 👏 49 | 50 | Thank you to everyone who decides to participate. Community challenges like this are a great way to learn, improve, and demonstrate your skills. I can't wait to see what you build! 51 | -------------------------------------------------------------------------------- /docs/gcp.md: -------------------------------------------------------------------------------- 1 | # Cloud Resume API with GCP 2 | 3 | [![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fcloudresumeapi.dev&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false)](https://hits.seeyoufarm.com) 4 | ![GitHub Repo stars](https://img.shields.io/github/stars/rishabkumar7/cloud-resume-api) 5 | 6 | ## GCP Resume API Challenge 7 | 8 | Welcome to the GCP Resume API Challenge. A project where you will have the opportunity to build and deploy a serverless API using Google Cloud Functions and Firestore, integrated with GitHub Actions. The primary goal? Construct an API that can serve resume data in JSON format. 9 | 10 | ## Challenge Objective 🎯 11 | 12 | Your task is to create an Cloud Function that fetches resume data stored in Firestore and return it in JSON format. To level up the challenge, integrate GitHub Actions to automatically deploy updates to your Cloud Function whenever you push changes to your git repository. 13 | 14 | 15 | 16 | ## Key Requirements 17 | 18 | - Firestore Table: Set up a table named `Resumes` containing sample resume data. 19 | - Google Cloud Function: Fetch and return resume data based on an id. Utilize HTTP Trigger with anonymous access. 20 | - GitHub Actions: Automatically package and deploy your Lambda function on every push to the repository. 21 | 22 | **Bonus**: Use [Google Cloud Deployment Manager](https://cloud.google.com/deployment-manager/docs) or [Terraform](https://www.terraform.io/) for infrastructure as code! 23 | 24 | ## Getting Started 🚀 25 | 26 | - **Set Up GCP**: If you haven't already, sign up for an GCP account and set up your credentials. Remember, when using GCP secrets and never expose them in your code. 27 | - **Create a JSON Resume**: Use [this schema](https://jsonresume.org/schema/) to create your own JSON resume. 28 | - **Create GCP Resources**: Deploy the needed GCP services - Firestore and Google Cloud Function. 29 | - **Create Your Workflow**: Use the provided template as a guide, but feel free to innovate! 30 | - **Test Everything**: Ensure your API works as expected and the GitHub Actions deploy smoothly. 31 | 32 | ## Submission Guidelines 📥 33 | 34 | Ensure all your code is in a GitHub repository. 35 | Make sure your README has detailed instructions on how to run and test your API. 36 | Write a blog post sharing the things you learned during building this project. 37 | 38 | Once you're ready to submit, create a pull request to this repository. 39 | Add your name, github repo URL and the resume API URL to the table in `submissions.md` file. 40 | In your pull request, provide a summary of what you've done and any additional features or functionalities you've added. 41 | 42 | All the submission can be found [here](/submissions). 43 | 44 | ## Completion Criteria 🏆 45 | 46 | - Functionality: Does the API work? Does the deployment succeed via GitHub Actions? 47 | - Code Quality: Is the code clean, well-organized, and documented? 48 | - Innovation: Did you add any extra features or use any unique methods? 49 | 50 | ## Acknowledgements 👏 51 | 52 | Thank you to everyone who decides to participate. Community challenges like this are a great way to learn, improve, and demonstrate your skills. I can't wait to see what you build! 53 | -------------------------------------------------------------------------------- /docs/aws.md: -------------------------------------------------------------------------------- 1 | # Cloud Resume API with AWS 2 | 3 | [![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fcloudresumeapi.dev&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false)](https://hits.seeyoufarm.com) 4 | ![GitHub Repo stars](https://img.shields.io/github/stars/rishabkumar7/cloud-resume-api) 5 | 6 | ## AWS Resume API Challenge 7 | 8 | Welcome to the AWS Lambda Resume API Challenge. A project where you will have the opportunity to build and deploy a serverless API using AWS Lambda and DynamoDB, integrated with GitHub Actions. The primary goal? Construct an API that can serve resume data in JSON format. 9 | 10 | ## Challenge Objective 🎯 11 | 12 | Your task is to create a Lambda function that fetches resume data stored in DynamoDB and return it in JSON format. To level up the challenge, integrate GitHub Actions to automatically deploy updates to your Lambda function whenever you push to your repository. 13 | 14 | 15 | 16 | ## Key Requirements 17 | 18 | - DynamoDB Table: Set up a table named Resumes containing sample resume data. 19 | - Lambda Function: Fetch and return resume data based on an id. 20 | - API Gateway/Function URLs: Integrate API Gateway for your Lambda Function or use Function URLs to make you Lambda Function accessible. 21 | - GitHub Actions: Automatically package and deploy your Lambda function on every push to the repository. 22 | 23 | **Bonus**: Use the [Terraform](https://terraform.io) or [Serverless Framework](https://www.serverless.com/framework) for infrastructure as code! And API Gateway to make you Resume API accessible over the internet. 24 | 25 | ## Getting Started 🚀 26 | 27 | - **Set Up AWS**: If you haven't already, sign up for an AWS account and set up your credentials. Remember, when using AWS secrets and never expose them in your code. 28 | - **Create a JSON Resume**: Use [this schema](https://jsonresume.org/schema/) to create your own JSON resume. 29 | - **Create AWS Resources**: Deploy the needed AWS services - DynamoDB and Lambda Function. 30 | - **Create Your Workflow**: Use the [provided template as a guide](https://github.com/marketplace/actions/aws-lambda-deploy), but feel free to innovate! 31 | - **Test Everything**: Ensure your API works as expected and the GitHub Actions deploy smoothly. 32 | 33 | ## Submission Guidelines 📥 34 | 35 | Ensure all your code is in a GitHub repository. 36 | Make sure your README has detailed instructions on how to run and test your API. 37 | Write a blog post sharing the things you learned during building this project. 38 | 39 | Once you're ready to submit, create a pull request to this repository. 40 | Add your name, github repo URL and the resume API URL to the table in `submissions.md` file. 41 | In your pull request, provide a summary of what you've done and any additional features or functionalities you've added. 42 | 43 | All the submission can be found [here](/submissions). 44 | 45 | ## Completion Criteria 🏆 46 | 47 | - Functionality: Does the API work? Does the deployment succeed via GitHub Actions? 48 | - Code Quality: Is the code clean, well-organized, and documented? 49 | - Innovation: Did you add any extra features or use any unique methods? 50 | 51 | ## Acknowledgements 👏 52 | 53 | Thank you to everyone who decides to participate. Community challenges like this are a great way to learn, improve, and demonstrate your skills. I can't wait to see what you build! 54 | -------------------------------------------------------------------------------- /docs/submissions.md: -------------------------------------------------------------------------------- 1 | # Submissions 📥 2 | 3 | This is the place to add your own Cloud Resume API project! 4 | 5 | ## AWS 6 | 7 | | Name | Resume API URL | GitHub Repo | 8 | | ------------ | -------------- | ----------- | 9 | | Rishab Kumar | https://zw2tkpprcyswk7hm7nqrmugqli0krcrq.lambda-url.ca-central-1.on.aws/ | https://github.com/rishabkumar7/aws-resume-api | 10 | | Wenjie Poh | https://l89f8hvu03.execute-api.ap-southeast-1.amazonaws.com/prod/serverless-api-gw | https://github.com/pohwj/aws-resume-api-terraform | 11 | | Tomiwa Aribisala | https://b741ozvtoc.execute-api.eu-north-1.amazonaws.com/resumeApi/resume_data | https://github.com/TomiwaAribisala-git/cloud-resume-api | 12 | | Lasantha Sanjeewa Silva | https://2eap5vzdl2wcackr6kbgq7znem0faboq.lambda-url.us-east-2.on.aws/ | https://github.com/sanju2/Resume-Rest-API | 13 | | Jaivir Singh Baweja | https://6d7glxgbel2lb6nfht7p6zppsm0gikwg.lambda-url.us-east-1.on.aws/ | https://github.com/jv199768/cloud-resume-api | 14 | | Hein Htet Win | https://iz15tg1yjg.execute-api.ap-southeast-1.amazonaws.com/Prod/ | https://github.com/heinhtetwin/cloud-resume-challenge | 15 | | Suryendu Bhattacharyya | https://ozdzf07h9c.execute-api.eu-central-1.amazonaws.com/prod/resume | https://github.com/SuryenduB/Cloud_Resume_JSON | 16 | | Rohit S | https://6gbptkzmz3.execute-api.us-east-1.amazonaws.com/resume | https://github.com/rohit1101/Cloud-Resume-Api- | 17 | | Meghana Sai Vattikuti | https://alo9hsw5e2.execute-api.us-east-1.amazonaws.com/prod/resume?id=1 | https://github.com/meghanasaivattikuti/cloud-api 18 | | Ojo Samuel | https://sx60706aef.execute-api.us-east-1.amazonaws.com/dev/data | https://github.com/Samuel7050/AWS_RESUME_CHALLENGE.git | 19 | | Toyyib Muhammad-Jamiu | https://zu27je734ldpvy2kic6h57wqy40agiuu.lambda-url.us-east-1.on.aws/ | https://github.com/Abunuman/Abunuman-AWS-Cloud-Resume-API-Challenge | 20 | | George Wettlaufer | https://ry5dzf3ztf.execute-api.us-east-1.amazonaws.com/prod/cloud-resume | https://github.com/loggerboy9325/cloud-resume-api | 21 | | Meriem Terki | https://lpn6ekqu21.execute-api.us-east-1.amazonaws.com/prod/resume | https://github.com/MeriemTerki/aws-cloud-resume-api | 22 | | Ifeanyi Achobandu | https://rcn2ynee74.execute-api.us-east-1.amazonaws.com/resume-test/resume | https://github.com/Achobandu/resumeAPI | 23 | | Anandha krishnan|https://jner4mrs02.execute-api.us-east-1.amazonaws.com/prod|https://github.com/Anandhakrishnan27/resumeApi| 24 | | Zablon Oigo | https://tuipma3603.execute-api.eu-north-1.amazonaws.com/prod | https://github.com/zablon-oigo/cloud-resume-api | 25 | | Amudha Balamurugan | https://abtxuab67i.execute-api.us-east-1.amazonaws.com/prod/ResumeFunction | https://github.com/DevABM/Cloud-Resume-API-Challenge | 26 | | Emmanuel Nyame Cromwell | https://i7jablu12l.execute-api.eu-west-1.amazonaws.com/dev/resume | https://github.com/P-Crommie/resume-api | 27 | | Sylvia Waweru | https://d3ad7vp77b.execute-api.us-west-2.amazonaws.com/dev-stage/ | https://github.com/karungar/Cloud-Resume-API- | 28 | | Eric Wanjala | https://6e2pry5iad.execute-api.eu-north-1.amazonaws.com/wanjala | https://github.com/EoWanjala/aws-cloud-resume-API | 29 | | Meghan Maina | https://u7fdthk4r6.execute-api.eu-north-1.amazonaws.com/dev/| https://github.com/celineMaina/Cloud-Resume-API | 30 | | Susan Ngina| https://lfhrbjrd0b.execute-api.us-east-1.amazonaws.com/dev | https://github.com/Suzannestacks/cloud-resume-API | 31 | | Raunak Bhargava | https://bwb471csz6.execute-api.ca-central-1.amazonaws.com/test/data?resumeId=RaunakBhargava | https://github.com/raunakghost99/GetResume_Json_Lazy_Hr | 32 | | Sheriff Joe | https://vkmm0lx8g3.execute-api.us-east-1.amazonaws.com/dev/resume-data | https://github.com/realexcel2021/cloud-resume-api-challenge | 33 | | Samuel Wanjuri | https://iqnycpfac4.execute-api.eu-north-1.amazonaws.com/dev/ | https://github.com/he-who-must-not-be-nam3d/Cloud-API-Resume-Challenge | 34 | | Rosemary Ojwang | https://d3viw2dbta.execute-api.us-east-1.amazonaws.com/dev/ | https://github.com/RosemaryOjwang/Cloud-Resume-API | 35 | | Linet Kendi| https://xgf77429x1.execute-api.us-east-1.amazonaws.com/dev/data | https://github.com/Simply-Lina/aws-cloud-resume-api | 36 | | Ssali Isaac | https://t7em9zzti0.execute-api.us-east-1.amazonaws.com/prod/Resumes | https://github.com/Issali58/cloud-projects.git | 37 | | Joseph A Leto | https://5yw6uexaub.execute-api.us-east-1.amazonaws.com/Prod/resume | https://github.com/serversorcerer/Cloud-Resume-API-Challenge | 38 | 39 | ## Azure 40 | 41 | | Name | Resume API URL | GitHub Repo | 42 | |---------------|--------------------------------------------------------------------------------------------------------------------------| ----------- | 43 | | CityHallin | https://api.cityhallin.com/v1/resume?name=cityhallin | https://github.com/CityHallin/cloud_resume_api_challenge | 44 | | Sushant Bagul | https://sushantbagul.azurewebsites.net/resumeapi?id=1 | https://github.com/Sushant1209/Azure-Resume-API-Challenge | 45 | | Charles Nwoye | [https://jkcloudresumeapi.azurewebsites.net/api/resume?id=1](https://jkcloudresumeapi.azurewebsites.net/api/resume?id=1) | [https://github.com/Jekwulum/cloud-resume-api.git](https://github.com/Jekwulum/cloud-resume-api.git) | 46 | | Hamit Sehjal | https://resume26hamitfunc.azurewebsites.net/hamitsehjal | https://github.com/hamitsehjal/Serverless-Cloud-Resume | 47 | | Oyeniyi Emmananuel| https://azureresumeapp.azurewebsites.net/api/getresumedata | https://github.com/Emmanuel1930/azure-resume-api | 48 | 49 | ## GCP 50 | 51 | | Name | Resume API URL | GitHub Repo | 52 | | ------------ | -------------- | ----------- | 53 | | Dominik Jaro | https://europe-west2-cloud-resume-api-418008.cloudfunctions.net/cloudresumeapi-1 | https://github.com/dom-j/GCP-cloud-resume-api | 54 | | Jeremy C | https://us-central1-cloud-resume-api-423120.cloudfunctions.net/function-1 | https://github.com/JQCVSC/Cloud-Resume-API | 55 | | Vikram Nayyar | https://us-central1-vn-cloud-resume-api-challenge.cloudfunctions.net/cloud-resume-function | https://github.com/vikramnayyarcs/vn-cloud-resume-api-challenge | 56 | | Damien Burks | https://us-central1-dsb-innovation-hub.cloudfunctions.net/cloud-resume-api | https://github.com/damienjburks/cloud-resume-challenge | 57 | | Godson Chinonyerem | https://europe-west2-my-site-1473725610848.cloudfunctions.net/cloud-resume | https://github.com/nielvid/cloud-resume-challenge | 58 | | Suraj Kamal | https://34.107.250.32.nip.io/resume | https://github.com/SurajKamal24/gcp-cloud-resume-api | 59 | | Rohit S | https://us-central1-lively-encoder-427806-d3.cloudfunctions.net/cloud-resume | https://github.com/rohit1101/Cloud-Resume-Api- | 60 | | Nitish Deshpande | https://asia-south1-nitish-resume-api-cloud.cloudfunctions.net/resume-fetch-json | https://github.com/nitishdeshpande07/cloud-resume-api-challenge | 61 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Cloud Resume API Challenge 2 | 3 | [![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fcloudresumeapi.dev&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false)](https://hits.seeyoufarm.com) 4 | ![GitHub Repo stars](https://img.shields.io/github/stars/rishabkumar7/cloud-resume-api) 5 | 6 | Welcome to the Cloud Resume API Challenge. A project where you will have the opportunity to build and deploy a serverless API using different Cloud providers (of your choice), integrated with GitHub Actions for CI/CD. The primary goal? Construct an API that can serve resume data in JSON format. 7 | 8 | ## Challenge Objective 🎯 9 | 10 | Your task is to create a Serverless function that fetches resume data stored in a NoSQL Database and return it in JSON format. To level up the challenge, integrate GitHub Actions to automatically deploy updates to your Cloud Serverless function whenever you push to your repository. 11 | 12 | ## Key Requirements 13 | 14 | - NoSQL Database: Containing sample resume data. 15 | - Serverless Function: Fetch and return resume data. 16 | - GitHub Actions: Automatically package and deploy your serverless on every push to the repository. 17 | 18 | ## Getting Started 🚀 19 | 20 | The Challenge now support all three major cloud providers: 21 | 22 | | Cloud | Challenge | 23 | | -------- | ------- | 24 | | [AWS](https://cloudresumeapi.dev/aws/) | [x] | 25 | | [Azure](https://cloudresumeapi.dev/azure) | [x] | 26 | | [GCP](https://cloudresumeapi.dev/gcp) | [x] | 27 | 28 | ## Submission/Showcase 📥 29 | 30 | Once you're ready to submit your project, you can create a pull request to this repository. 31 | Add your name, github repo URL and the resume API URL to the table in `submissions.md` file. 32 | In your pull request, provide a summary of what you've done and any additional features or functionalities you've added. 33 | 34 | All the submission can be found [here](docs/submissions.md). 35 | 36 | ## Acknowledgements 👏 37 | 38 | Thank you to everyone who decides to participate. Community challenges like this are a great way to learn, improve, and demonstrate your skills. I can't wait to see what you build! 39 | 40 | ## Author 41 | 42 | - Twitter: [@rishabincloud](https://twitter.com/rishabincloud) 43 | - GitHub: [@rishabkumar7](https://github.com/rishabkumar7) 44 | 45 | ## Star History 46 | 47 | 48 | 49 | 50 | 51 | Star History Chart 52 | 53 | 54 | 55 | ## Contributors so far 56 | 57 | 58 | 59 | 60 | 61 | 68 | 75 | 82 | 89 | 96 | 103 | 104 | 105 | 112 | 119 | 126 | 133 | 140 | 147 | 148 | 149 | 156 | 163 | 170 | 177 | 184 | 191 | 192 | 193 | 200 | 207 | 214 | 221 | 228 | 235 | 236 | 237 | 244 | 251 | 258 | 265 | 272 | 279 | 280 | 281 | 288 | 295 | 302 | 309 | 316 | 317 | 318 |
62 | 63 | rishabkumar7 64 |
65 | Rishab Kumar 66 |
67 |
69 | 70 | DevABM 71 |
72 | Amudha Balamurugan 73 |
74 |
76 | 77 | SuryenduB 78 |
79 | Suryendu Bhattacharyya 80 |
81 |
83 | 84 | EoWanjala 85 |
86 | Eric Wanjala 87 |
88 |
90 | 91 | Samuel7050 92 |
93 | Samuel7050 94 |
95 |
97 | 98 | Sushant1209 99 |
100 | Sushant Bagul 101 |
102 |
106 | 107 | realexcel2021 108 |
109 | Sheriff Joe 110 |
111 |
113 | 114 | MeriemTerki 115 |
116 | Meriem Terki 117 |
118 |
120 | 121 | JQCVSC 122 |
123 | JQCVSC 124 |
125 |
127 | 128 | heinhtetwin 129 |
130 | Hein Htet Win 131 |
132 |
134 | 135 | dominikjaro 136 |
137 | Dominik Jaro 138 |
139 |
141 | 142 | Anandhakrishnan27 143 |
144 | Anandhakrishnan 145 |
146 |
150 | 151 | Achobandu 152 |
153 | Achobandu 154 |
155 |
157 | 158 | Abunuman 159 |
160 | Muhammad-Jamiu Toyyib 161 |
162 |
164 | 165 | SurajKamal24 166 |
167 | Suraj 168 |
169 |
171 | 172 | Suzannestacks 173 |
174 | Suzannestacks 175 |
176 |
178 | 179 | vikramnayyarcs 180 |
181 | Vikram 182 |
183 |
185 | 186 | he-who-must-not-be-nam3d 187 |
188 | he-who-must-not-be-nam3d 189 |
190 |
194 | 195 | jv199768 196 |
197 | Jaivir Baweja 198 |
199 |
201 | 202 | karungar 203 |
204 | karungar 205 |
206 |
208 | 209 | nielvid 210 |
211 | Nielvid 212 |
213 |
215 | 216 | pohwj 217 |
218 | Wenjie Poh 219 |
220 |
222 | 223 | rohit1101 224 |
225 | rohit1101 226 |
227 |
229 | 230 | TomiwaAribisala-git 231 |
232 | Tomiwa 233 |
234 |
238 | 239 | zablon-oigo 240 |
241 | Zablon 242 |
243 |
245 | 246 | RosemaryOjwang 247 |
248 | Rosemary Atieno Ojwang 249 |
250 |
252 | 253 | Raunak-ghost 254 |
255 | Raunak-ghost 256 |
257 |
259 | 260 | meghanasaivattikuti 261 |
262 | meghanasaivattikuti 263 |
264 |
266 | 267 | celineMaina 268 |
269 | Meg 270 |
271 |
273 | 274 | Simply-Lina 275 |
276 | Kendi 277 |
278 |
282 | 283 | hamitsehjal 284 |
285 | Hamit Sehjal 286 |
287 |
289 | 290 | loggerboy9325 291 |
292 | George Wettlaufer 293 |
294 |
296 | 297 | Emmanuel1930 298 |
299 | Oyeniyi Emmanuel 300 |
301 |
303 | 304 | damienjburks 305 |
306 | Damien Burks 307 |
308 |
310 | 311 | Jekwulum 312 |
313 | Charles Nwoye 314 |
315 |
319 | 320 | --------------------------------------------------------------------------------