Mukul Mantosh

Mukul Mantosh

Developer Advocate at JetBrains

Mukul invests most of his time in crafting applications using Django, experimenting with Go, refining APIs, and delving into containers, cloud technologies, and Kubernetes.

Build a RAG App with AWS Bedrock and Go

Tutorial

Build a RAG App with AWS Bedrock and Go
Develop an RAG App with combination of AWS Bedrock, Go & OpenSearch.
Creating the KnowledgeBase

Part of tutorial

Creating the KnowledgeBase
Setting up the Knowledge Base and configuring the vector store.
Introduction

Part of tutorial

Introduction
What is RAG?
Getting Started

Part of tutorial

Getting Started
Setting up the AWS environment and configuring the AWS SDK.
Building APIs

Part of tutorial

Building APIs
AWS Go SDK Integration & Streamlit Python UI
AI Assistant with AWS Bedrock and Go

Tutorial

AI Assistant with AWS Bedrock and Go
Develop an AI assistant by combining AWS Bedrock, Go, and React for a dynamic frontend.
Building the Backend

Part of tutorial

Building the Backend
Configuring a New Project in GoLand.
Building the Frontend - Project Setup and Configuration

Part of tutorial

Building the Frontend - Project Setup and Configuration
Configuring a New React Project with Vite.
Crafting a Frontend Application

Part of tutorial

Crafting a Frontend Application
Component Configuration, UI Development, and WebSocket Integration.
Getting Started

Part of tutorial

Getting Started
Preparing your environment.
Introduction

Part of tutorial

Introduction
What exactly is Amazon Bedrock?
Enable Model Access

Part of tutorial

Enable Model Access
Turning On Models in AWS Bedrock.
References

Part of tutorial

References
Code Samples and Reference Materials
Interacting with ML Models — Anthropic

Part of tutorial

Interacting with ML Models — Anthropic
Interacting with Anthropic in AWS Bedrock.
Interacting with ML Models — Llama3

Part of tutorial

Interacting with ML Models — Llama3
Interacting with Llama3 in AWS Bedrock.
Full Line Code Completion in GoLand

Tip

Full Line Code Completion in GoLand
Faster code completion with the help of a locally running deep learning model.
Goroutines Profiler Labels

Tip

Goroutines Profiler Labels
Advance beyond the current line of code and move on to the next line.
Run to cursor

Tip

Run to cursor
Continues the execution until the position of the caret is reached.
Step Over

Tip

Step Over
Advance beyond the current line of code and moves on to the next line.
Change the editor font size using the mouse wheel

Tip

Change the editor font size using the mouse wheel
Increase or decrease the font size on-the-fly
Docker

Topic

Docker
Build, test, and deploy applications quickly
Boost your Development Speed with Docker and Django

Tutorial

Boost your Development Speed with Docker and Django
Combining Django and Docker to simplify your development and deployment process.
Running Docker through PyCharm

Part of tutorial

Running Docker through PyCharm
Build and run a Docker container from your IDE.
Introduction to Docker for Python and Django

Part of tutorial

Introduction to Docker for Python and Django
Using containers to build and deploy applications.
DockerHub

Part of tutorial

DockerHub
Pushing Image to Remote Registry.
Making your deployment production-ready

Part of tutorial

Making your deployment production-ready
Additional tools for your Django app production environment.
Setting Up and Running the Application

Part of tutorial

Setting Up and Running the Application
Configuring the Application Using Dockerfile and Docker Compose.
Attach the Debugger to a Running Go Processes

Tip

Attach the Debugger to a Running Go Processes
Attach a debugger to a running process in your IDE, whether local, remote, or in Docker.
REST API Development with Gin

Tutorial

REST API Development with Gin
Developing a Bookstore App with the Gin Framework
Database Setup

Part of tutorial

Database Setup
Configuring Your PostgreSQL Database.
Data Models

Part of tutorial

Data Models
Defining models and establishing database connection
Introduction

Part of tutorial

Introduction
Introducing Gin, the high-performance web framework, written in Go.
HTTP Handlers

Part of tutorial

HTTP Handlers
Managing Web Requests - The HTTP Handler Approach.
Project Layout

Part of tutorial

Project Layout
Organizing and Navigating Through Your Codebase.
Project Configuration

Part of tutorial

Project Configuration
Install the dependencies used for the sample application.
Interfaces & CRUD Operations

Part of tutorial

Interfaces & CRUD Operations
Centering on business logic via CRUD operations.
Remote Development in PyCharm Professional Using Google Cloud Code

Tutorial

Remote Development in PyCharm Professional Using Google Cloud Code
Leverage Cloud Code and PyCharm to enhance and optimize your developer productivity.
Google Kubernetes Engine

Part of tutorial

Google Kubernetes Engine
Harnessing the Power of Google Kubernetes Engine.
Introduction

Part of tutorial

Introduction
Breaking Barriers - Revolutionizing Development through Remote Collaboration.
Installing the Google Cloud Code plugin and the Google Cloud SDK

Part of tutorial

Installing the Google Cloud Code plugin and the Google Cloud SDK
Simplifying Setup with GCloud SDK and Cloud Code Plugin.
Creating a new project in PyCharm

Part of tutorial

Creating a new project in PyCharm
Initiating Projects with PyCharm's New Project Creation.
Running applications in GKE

Part of tutorial

Running applications in GKE
Running Applications and Securing Domains with SSL Certificates in GKE.
Creating CRUD APIs (TODO App)

Part of tutorial

Creating CRUD APIs (TODO App)
Building APIs with Django Rest Framework.
Authentication

Part of tutorial

Authentication
Integrating FastAPI with JWT Tokens.
Cleanup

Part of tutorial

Cleanup
Cleaning up stack (removing RDS, EKS, ElastiCache, LoadBalancer, Route53).
Helm Charts

Part of tutorial

Helm Charts
Combine your K8s manifests into a single package using Helm Charts.
Elastic Kubernetes Service (EKS)

Part of tutorial

Elastic Kubernetes Service (EKS)
Deploying application using EKS, RDS, ElastiCache, Route53 & AWS Certificate Manager.
Kubernetes Deployment

Part of tutorial

Kubernetes Deployment
Writing K8s manifests & deploying in minikube.
Project Setup

Part of tutorial

Project Setup
Setting up FastAPI project type in PyCharm Professional.
Celery & Redis

Part of tutorial

Celery & Redis
Configuring Celery & Redis with FastAPI.
REST API - Part I

Part of tutorial

REST API - Part I
Implementing a REST API for User modules using Pydantic & API Router.
References

Part of tutorial

References
Reference materials which helped to prepare this tutorial.
REST API - Part II

Part of tutorial

REST API - Part II
Performing CRUD operations in our User module.
REST API - Part III

Part of tutorial

REST API - Part III
Performing CRUD operations in Products & Category Module.
REST API - Part IV

Part of tutorial

REST API - Part IV
Performing CRUD operations in Orders & Cart Module.
Database Setup - Part II

Part of tutorial

Database Setup - Part II
Setting up database migrations with Alembic.
Database Setup - Part I

Part of tutorial

Database Setup - Part I
Configuring database connection with SQLAlchemy and FastAPI.
Testing

Part of tutorial

Testing
Writing Unit Tests using Pytest & Asyncio.
REST API - Part V

Part of tutorial

REST API - Part V
Performing CRUD operations in Orders along with placing a new order.
Developing FastAPI Application using K8s & AWS

Tutorial

Developing FastAPI Application using K8s & AWS
Build seamless FastAPI applications in PyCharm through Kubernetes & AWS.
Introduction

Part of tutorial

Introduction
Introducing FastAPI, a modern, fast (high-performance), web framework.
Developing Django Application using AWS

Tutorial

Developing Django Application using AWS
Run, build, test and deploy Django Application in PyCharm using NICE DCV.
Behavior-Driven Development(BDD) Testing

Part of tutorial

Behavior-Driven Development(BDD) Testing
Writing and running BDD tests using Behave.
Cleanup

Part of tutorial

Cleanup
Cleaning up resources from AWS.
GitHub Actions

Part of tutorial

GitHub Actions
Deploy Docker Image to AWS ECR through GitHub Actions.
Introduction

Part of tutorial

Introduction
Introducing Django, a high-level python web framework.
Exploring Django with Docker

Part of tutorial

Exploring Django with Docker
Building and running Django Containers through Docker.
Secure REST APIs with JWT

Part of tutorial

Secure REST APIs with JWT
Using Simple JWT authentication plugin for the Django REST Framework.
Exploring Project Structure & Creating Django App

Part of tutorial

Exploring Project Structure & Creating Django App
Create a new app, define models, and explore the project's structure.
Implementing Rest APIs

Part of tutorial

Implementing Rest APIs
Writing CRUD (Create, Read, Update, Delete) in Django Rest Framework.
Creating a new Django Project in PyCharm

Part of tutorial

Creating a new Django Project in PyCharm
Create a virtual environment and install Python dependencies.
Setup Ubuntu Desktop in AWS using NICE DCV

Part of tutorial

Setup Ubuntu Desktop in AWS using NICE DCV
Configure security group and launch a new instance.
Integrating Sentry Application Monitoring

Part of tutorial

Integrating Sentry Application Monitoring
Track errors & monitor performance in all major languages & frameworks with Sentry.
Setting up VPC and RDS in AWS

Part of tutorial

Setting up VPC and RDS in AWS
Setup VPC, Subnets, Route Tables, Internet Gateway and Relational Database.
Setup AWS RDS in PyCharm

Part of tutorial

Setup AWS RDS in PyCharm
Connect Postgres with our Django Application.
Unit Tests

Part of tutorial

Unit Tests
Writing and running unit tests in Django.
Developing Serverless APIs using AWS Toolkit

Tutorial

Developing Serverless APIs using AWS Toolkit
Run, build, and deploy serverless functions in PyCharm.
Securing APIs with JSON Web Tokens (JWT)

Part of tutorial

Securing APIs with JSON Web Tokens (JWT)
Adding Custom Authorizers in Lambda functions
Background on Serverless

Part of tutorial

Background on Serverless
Introduce Microservices, AWS SAM (Serverless Application Model)
Setting Up a Database in MongoDB Atlas

Part of tutorial

Setting Up a Database in MongoDB Atlas
Connect MongoDB smoothly by connecting through Pycharm Professional to explore the database GUI.
Cleanup

Part of tutorial

Cleanup
Removing Resources from AWS Console
Writing REST APIs

Part of tutorial

Writing REST APIs
Beginning CRUD (Create, Read, Update, Delete) Operations
Deploying Functions

Part of tutorial

Deploying Functions
Use PyCharm Professional to deploy your Lambda APIs.
Invoking Functions Locally

Part of tutorial

Invoking Functions Locally
Execute Lambda function inside a container through PyCharm Professional.
Project Setup

Part of tutorial

Project Setup
Install AWS SAM (Serverless Application Model), AWS CLI & finally PyCharm Plugin AWS Toolkit.
Exploring Project Structure

Part of tutorial

Exploring Project Structure
Launching up project in PyCharm Professional, installing plugin and exploring the project layout.
Testing

Part of tutorial

Testing
Writing unit tests of our functions that we deploy to AWS Lambda, to ensure everything works.
Database Visualization

Tip

Database Visualization
Visualize the structure of a database with diagrams.
Mukul Mantosh

Author

Mukul Mantosh
Developer Advocate at JetBrains