Rhinestone: Simplifying API Documentation and API Testing Across Every Tech Stack

vivek keshore (~vivek17)


6

Votes

Description:

Abstract

Step into the world of API development with Rhinestone, a versatile tool designed to simplify and enhance the way we approach API documentation and testing. Though FastAPI autogenerates the swagger docs based on pydantic models, but not every framework does it. Also, the autogenerated docs cannot be used for automated api testing.

Necessity is the mother of invention. This tool is developed by myself as a Python based Flask application when I faced the problem in documenting APIs using Swagger and perform the API testing in high paced development. In this 30 minutes talk, we will delve deep into Rhinestone's capabilities, uncovering how it effortlessly tackles two crucial aspects of modern software development. Imagine a tool that not only generates comprehensive Swagger documentation, breaking down complex APIs into clear, user-friendly instructions with lots of positive and negative scenarios and examples, but also empowers you to rigorously test your APIs' functionality with ease. The key highlight of the Rhinestone tool is that it breaks the barriers of technology stacks, offering developers a unified solution for building robust Swagger based API documentation and API testing tool, for APIs developed in any framework of other technologies like nodejs, java, go etc.

Let's explore Rhinestone's functionalities, understand its inner workings, and embark on a journey to enhance our API development practices and API testing like never before.

Outline of the Talk

1. The challenges we face (5 mins)

  • Writing Swagger or open API spec manually
  • Limitations of existing libraries like Flask-RestX or Swagger Inspector
  • Swagger documentation for APIs implemented in other technologies like java, js, go, php etc.
  • Proper API testing with fast paces development

2. Introduction to Rhinestone (5 mins)

  • Overview of Rhinestone's dual capabilities: Generating Swagger documentation and facilitating API testing.
  • Installation and setup
  • Advantages and solution to challenges mentioned above

3. Rhinestone in action (10 mins)

  • Live demonstration of Rhinestone tool showcasing the generation of Swagger docs
  • Live demonstration showcasing Rhinestone's seamless API testing workflow, including test saving and execution

4. Key Takeaways - Conclusion (5 mins)

  • Comprehensive Documentation: Rhinestone's automatic Swagger documentation for backend apps across diverse technology stacks.
  • Effortless API Testing: Rhinestone's seamless testing capabilities to enhance API quality and reliability.
  • Versatile Integration: Learn how Rhinestone easily fits into your workflow, catering to both documentation and testing needs.

5. Feedback and QnA (5 mins)

  • Engaging with audience to know their opinion, suggestion, criticism and queries.

Prerequisites:

Basic knowledge of Python coding and syntax.

Speaker Info:

I am a Python Enthusiast who loves building software applications and education related content. I am a technology professional and a passionate programmer with 12 years of experience in Python & Python related technologies. I am currently working as Architect at SenecaGlobal Inc, Hyderabad.

I have been involved with multiple professional projects in various industrial domains and technical fields. My expertise is in application development, data processing & analysis, data pipelines, data structures, & algorithms, various non-relational and relational databases, Python, Flask, FastAPI, Celery, Redis, Cassandra, AWS, Airflow, GreatExpectations, Docker, and various other tech stacks. I am also an open source contributor, and published self developed libraries on PyPI. I love creating libraries and various utility tools that help me in solving a challenge/problem that could also be used by others in the developers community.

My personal interest is in exploring new technologies, web application development, IoT systems, spread Python education, and read novels. I also write and share my thoughts occasionally on Quora and Medium.

Speaker Links:

Delivered workshop - PyCon 2023

From Novice to Virtuoso: Mastering Object-Oriented Python in 3 Hours

PyPI Libraries

  • Flask-Dantic - Library to integrate Pydantic with Flask
  • Lazy Alchemy - A library to load SQLAlchemy Tables Lazily
  • And many more in progress ...

Docker HUB

Rhinestone

Medium Articles (Published in NerdForTech and MLearning.ai)

https://vivek-keshore.medium.com

Github

Github

LinkedIn

LinkedIn

Section: Python in Platform Engineering and Developer Operations
Type: Talk
Target Audience: Beginner
Last Updated: