Become a Smart AI Engineer

Minilab offers Do-It-Yourself (DIY) recipes for crafting your own technological solutions. Follow these step-by-step technical instructions either on your desktop or in our lab environment. By practicing and implementing these recipes, you can achieve your solution without the need to scour countless sources for answers.

Get Started

All recipes are free to use, open source. Source available on GitHub

Generative AI

Generative AI refers to a category of artificial intelligence systems that are designed to generate new content, such as images, text, audio, or even video, that is similar to or indistinguishable from content created by humans. These systems work by learning patterns and structures from large datasets and then using this learned information to produce new content autonomously.

Retrieval-Augmented Generation (RAG)

"Retrieval-Augmented Generation" (RAG) is a framework that combines elements of retrieval-based and generative-based approaches to natural language processing (NLP). In traditional retrieval-based systems, responses are generated by selecting the most appropriate response from a large database of pre-existing responses based on the input query. Generative models, on the other hand, generate responses from scratch based on the input query.

Large Language Models (LLMs)

LLMs stands for Large Language Models. These are a class of artificial intelligence models designed to understand and generate human-like text. LLMs are typically based on deep learning architectures, particularly transformer models like OpenAI's GPT (Generative Pre-trained Transformer) series, such as GPT-3 and custom LLMs.

Microservices

The term "Microservice Architecture" has sprung up over the last few years to describe a particular way of designing software applications as suites of independently deployable services.

Docker

Docker takes away repetitive, mundane configuration tasks and is used throughout the development lifecycle for fast, easy and portable application development on desktop and cloud.

Kubernetes

Kubernetes, also known as K8s, is an open-source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical units for easy management and discovery.

Continuous Integration

Continuous integration most often refers to the build or integration stage of the software release process and entails both an automation component (e.g. a CI or build service) and a cultural component (e.g. learning to integrate frequently).

Continuous Deployment

Continuous deployment is a strategy in software development where code changes to an application are released automatically into the production environment. This automation is driven by a series of predefined tests. Once new updates pass those tests, the system pushes the updates directly to the software's users.

Code Quality and Code Security

Catch tricky bugs to prevent undefined behaviour from impacting end-users. Fix vulnerabilities that compromise your app, and learn AppSec along the way with Security Hotspots. Make sure your codebase is clean and maintainable, to increase developer velocity.

Logging and Log Aggregation

Log aggregation is the process of collecting, standardizing, and consolidating log data from across an IT environment in order to facilitate streamlined log analysis.

Spring Boot

Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run". Takes an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss.

Service Mesh

A service mesh is a dedicated infrastructure layer that you can add to your applications. It allows you to transparently add capabilities like observability, traffic management, and security, without adding them to your own code. Istio service mesh integrates seamlessly with Spring Boot.

Single Sign On (SSO)

Single sign On is an authentication method that enables users to securely authenticate with multiple applications and websites by using just one set of credentials.

Keycloak SSO and Spring Boot

Keycloak adds authentication to applications and enables secure services with minimum effort. No need to deal with storing users or authenticating users. Keycloak provides user federation, strong authentication, user management, fine-grained authorization, and more. Integrates with Spring Boot seamlessly.

Micrometer and Spring Boot

Micrometer provides a simple facade over the instrumentation clients for the most popular monitoring systems, allowing you to instrument your JVM-based application code without vendor lock-in. Think SLF4J, but for metrics. Integrates with Spring Boot seamlessly.

Prometheus (Metrics and Insights)

From metrics to insight Power your metrics and alerting with the leading open source monitoring solution. Monitoring system with a dimensional data model, flexible query language, efficient time series database and modern alerting approach.

Grafana (Observability Stack

Grafana allows you to query, visualize, alert on and understand your metrics no matter where they are stored. Create, explore, and share beautiful dashboards with your team and foster a data driven culture.

Micrometer, Prometheus, Grafana and Spring Boot

Seamless integration of Micrometer, Prometheus, Grafana and Spring Boot to provide out of the box support for log aggregation, application monitoring and insights.

Kiali (Console for Istio Service Mesh)

Manage, visualize, validate and troubleshoot your mesh. Kiali is a management console for Istio service mesh. Kiali can be quickly installed as an Istio add-on, or trusted as a part of your production environment.

API Gateway, Spring Cloud Gateway

API Gateway is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale. APIs act as the "front door" for applications to access data, business logic, or functionality from your backend services.

Resilience4j

Resilience4j provides higher-order functions (decorators) to enhance any functional interface, lambda expression or method reference with a Circuit Breaker, Rate Limiter, Retry or Bulkhead.

JUnit

JUnit is a unit testing framework for the Java programming language. JUnit has been important in the development of test-driven development, and is one of a family of unit testing frameworks.

Mockito

Tasty mocking framework for unit tests in Java .The framework allows the creation of test double objects in automated unit tests for the purpose of test-driven development or behavior-driven development.

Functional Testing with Karate

Karate is the only open-source tool to combine API test-automation, mocks, performance-testing and even UI automation into a single, unified framework. The BDD syntax popularized by Cucumber is language-neutral, and easy for even non-programmers.

Testcontainers

Testcontainers is a Java library that supports JUnit tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.

OWASP, Vulnerabilities Scanner (ZAP)

The OWASP ZAP tool can be used during web application development by web developers or by experienced security experts during penetration tests to assess web applications for vulnerabilities.

Container Vulnerability Scanning (Clair, Anchore)

A container image can have many bugs and security vulnerabilities, which gives a good opportunity for hackers to get access to the application or data present on the container. A container security scanner will help you find all the vulnerabilities inside your containers and monitor them regularly against any attack, issue, or new bug.

Kubernetes threat detection (Falco)

Detect threats at runtime by observing the behavior of your applications and containers. Falco acts as a security camera detecting unexpected behavior, intrusions, and data theft in real time.

Cloud native repository for Kubernetes (Harbor)

Registry that secures artifacts with policies and role-based access control, ensures images are scanned and free from vulnerabilities, and signs images as trusted. Harbor delivers compliance, performance, and interoperability to help you consistently and securely manage artifacts across cloud native compute platforms like Kubernetes and Docker.

GitOps

GitOps is an operational framework that takes DevOps best practices used for application development such as version control, collaboration, compliance, and CI/CD tooling, and applies them to infrastructure automation.

Multi-Cloud Object Storage (MinIO)

MinIO offers high-performance, S3 compatible object storage. Native to Kubernetes, MinIO is the only object storage suite available on every public cloud, every Kubernetes distribution, the private cloud and the edge.

Cloud-native application life-cycle orchestration (Keptn)

Observability, dashboards & alerting. SLO-driven multi-stage delivery. Operations & remediation, all declarative, extensible and based on GitOps. Keptn uses a declarative approach to build scalable automation for delivery and operations which can be scaled to a large number of services.

Unified Logging and Observability Pipeline (fluentd,fluentbit)

Fluentd unifies data collection and consumption for a better use and understanding of data. Fluent Bit is a super fast, lightweight, and highly scalable logging and metrics processor and forwarder. It is the preferred choice for cloud and containerized environments.

Manage Secrets & Protect Sensitive Data (Vault)

Secure, store and tightly control access to tokens, passwords, certificates, encryption keys for protecting secrets and other sensitive data using a UI, CLI, or HTTP API. Vault brokers and deeply integrates with trusted identities to automate access to secrets, data, and systems.

Infrastructure As Code (Terraform)

Automate Infrastructure on Any Cloud. Provision, change, and version resources on any environment. Terraform codifies cloud APIs into declarative configuration files and helps you version control your infrastructure.

Amazon Web Services

Amazon Web Services offers reliable, scalable, and inexpensive cloud computing services. These cloud computing web services provide distributed computing processing capacity and software tools via AWS server farms.

Design Thinking

Design thinking is an iterative process in which you seek to understand your users, challenge assumptions, redefine problems and create innovative solutions which you can prototype and test. The overall goal is to identify alternative strategies and solutions that are not instantly apparent with your initial level of understanding.

Figma - UX Development

Figma is a collaborative browser-based interface design tool, with additional offline features enabled by desktop applications for macOS and Windows. The Figma mobile app for Android and iOS allows viewing and interacting with Figma prototypes in real-time on mobile and tablet devices.

Material Design - UX Development

Material is an adaptable system of guidelines, components, and tools that support the best practices of user interface design.

React and Redux

React is a free and open-source front-end JavaScript library for building user interfaces based on UI components.Redux is an open-source JavaScript library for managing and centralizing application state.

Bootstrap

Bootstrap is a free and open-source CSS framework directed at responsive, mobile-first front-end web development. It contains HTML, CSS and JavaScript-based design templates for typography, forms, buttons, navigation, and other interface components.

Material UI

Material is an adaptable system of guidelines, components, and tools that support the best practices of user interface design. MUI provides a simple, customizable, and accessible library of React components. Follow your own design system, or start with Material Design.

Tailwind CSS

Tailwind CSS is a popular utility-first CSS framework that provides a set of pre-built, atomic CSS classes for rapidly building modern web interfaces. Unlike traditional CSS frameworks like Bootstrap or Foundation, which offer predefined components and styles, Tailwind CSS focuses on providing low-level utility classes that you can use to construct custom designs.

Shadcn

Beautifully designed components that you can copy and paste into your apps. Accessible. Customizable. Open Source.

Aceternity UI

Make your websites look 10x beautiful, modern and awesome. Copy paste the most trending components and use them in your websites without having to worry about styling and animations.

Agile and Scrum

Scrum is a framework that helps teams work together. Much like a rugby team (where it gets its name) training for the big game, scrum encourages teams to learn through experiences, self-organize while working on a problem, and reflect on their wins and losses to continuously improve.

Extreme Programming (XP)

Extreme Programming (XP) is an agile software development framework that aims to produce higher quality software, and higher quality of life for the development team. XP is the most specific of the agile frameworks regarding appropriate engineering practices for software development.

Atlassian Tools

Agile tools for enterprise agile planning, Project and Issue tracking, Collaborative documentation and many more. Helps in creating amazing products, practices, and open work for all teams across the globe.

Site Powered by