We first need to set some context on the general design philosophy and design choices for this tool-building framework. The main focus is on improving

Part II: How We Built An Internal Tools Builder That Lives In Your Python Codebase

submited by
Style Pass
2024-05-10 16:30:04

We first need to set some context on the general design philosophy and design choices for this tool-building framework. The main focus is on improving developer efficiency without compromising security. Here are the main design principles in this paradigm. 

This means localhost development, version control, and CI/CD. Storing all files locally would let devs manage and version their codebase with their preferred versioning system (e.g. GitHub, GitLab, or custom). Developers can also set up new or reuse existing CI/CD pipelines.

Data should be processed in the user's machines. Since internal tools act on sensitive data, every aspect of data processing needs to take place in the user's infrastructure, from storing database credentials and function code, to executing those functions and fetching data from APIs.

The framework should be convenient to use and fit the mental model of Python devs. For example, it should allow code autocomplete and ancillary features such as user permissions built-in.

Leave a Comment