Python REPL IDE Web App Update - Version 2.1.1 Hi All! — LOTS of Major New Updates to the Python REPL IDE (yes, tho' it's a IDE for Python using the Pyodide library, it was written in Astro / React.JS!). We're all the way up to version 2.1.1, a looooooooong way from the last version 1.4.0! And here's some of the NEW NEW GOODNESS packed into this baby — * Fixed the dreaded blank page error on load! * Moved Client UI Static FIles into an AWS S3 Bucket for quicker start-up loading * Fixed a race condition where two AWS Serverless Lambda instances could create duplicate profiles * Fixed the "Complete Profile" modal where the Cancel/X button was broken * Fixed user files not loading after sign-in * Now Has Full Console Input Support with Python's `input()` * Added fallback for browsers that don't support JSPI — uses `window.prompt()` instead * Set-up Testing Infrastructure — Vitest for unit testing and Playwright for end-to-end (browser) testing of API route tests, React component tests, hook tests, and schema validation tests * Created a Pyodide stub so Python-related tests can run in Node.JS * Projects! (& new database table) — Added a brand-new "Projects" table to the Turso database, files can be organized into projects * Wrote unit tests for the new Projects feature * Astro 6 & Vite 7 compatibility fixes * Save/Open dialogs, project management, and Explorer drag-and-drop! — Added a Save Dialog that opens with Cmd+S (Mac) or Ctrl+S (Windows/Linux) * Added an Open/Import Dialog for importing .py and .txt files from your local filesystem into the IDE or into a specific project (only .py and .txt files can be saved or imported) - FOR LOGGED-IN USER ACCOUNTS ONLY * Created full Project management: create projects in the Explorer, group files under projects, and delete projects * Explorer pane shows projects as collapsible folders with nested files underneath * Drag-and-drop support: drag files into projects or out to the general Explorer area * Added "Open / Import" button in the toolbar (visible when signed in) * Created React Query hooks for project CRUD and file-to-project assignment * Playwright (end-to-end test engine) test reliability fix & dependency updates — Fixed Playwright end-to-end tests stalling indefinitely * Updated Astro, drizzle-orm, aws-cdk, react-resizable-panels, lucide-react, & Pyodide NPM Packages So that's it! Try it out, make an account for yourself, do some Python :snake: code!! Enjoy. * The Python REPL IDE Web App - https://pyrepl.dev/ * Full CHANGELOG-simple.md — https://lnkd.in/gpZjmwsc * Python REPL IDE / Code Canvas Astro GitHub Repository — https://lnkd.in/gXdMe2qu
Python REPL IDE Web App Update 2.1.1 Released
More Relevant Posts
-
The Mindset Shift (Python vs Laravel) The hardest part of switching from Laravel to Python. It is not the syntax. As a developer who has spent years mastering PHP and Laravel, moving into Python and FastAPI for AI projects was a system shock. The hardest part was not learning how to write Python code. The syntax is actually beautiful and very simple to pick up. The hardest part was leaving Eloquent behind. The Laravel Mindset (The Magic): Laravel spoils us. Eloquent ORM is so powerful that it handles your database, relationships, and data formatting almost magically. You just call User::create() and the framework handles the rest. The Python Mindset (Explicit Control): When you switch to FastAPI, you quickly realize how much heavy lifting Laravel was doing for you in the background. In Python, you have to be completely explicit. You define your database schemas with SQLAlchemy and your data validation rules with Pydantic. At first, it feels like writing a lot of extra code. But once you start building Generative AI applications, you understand why it is built this way. Python forces you to have absolute, strict control over the exact shape of your data before you ever pass it to an LLM. It is a completely different architectural mindset. Are there any other Laravel developers here making the jump to Python for AI? What has been your biggest challenge so far? Let's connect in the comments below. 👇 #Python #Laravel #FastAPI #SoftwareArchitecture #TechWithMuk
To view or add a comment, sign in
-
-
The Mindset Shift (Python vs Laravel) The hardest part of switching from Laravel to Python. It is not the syntax. As a developer who has spent years mastering PHP and Laravel, moving into Python and FastAPI for AI projects was a system shock. The hardest part was not learning how to write Python code. The syntax is actually beautiful and very simple to pick up. The hardest part was leaving Eloquent behind. The Laravel Mindset (The Magic): Laravel spoils us. Eloquent ORM is so powerful that it handles your database, relationships, and data formatting almost magically. You just call User::create() and the framework handles the rest. The Python Mindset (Explicit Control): When you switch to FastAPI, you quickly realize how much heavy lifting Laravel was doing for you in the background. In Python, you have to be completely explicit. You define your database schemas with SQLAlchemy and your data validation rules with Pydantic. At first, it feels like writing a lot of extra code. But once you start building Generative AI applications, you understand why it is built this way. Python forces you to have absolute, strict control over the exact shape of your data before you ever pass it to an LLM. It is a completely different architectural mindset. Are there any other Laravel developers here making the jump to Python for AI? What has been your biggest challenge so far? Let's connect in the comments below. 👇 #Python #Laravel #FastAPI #SoftwareArchitecture #TechWithMuk
To view or add a comment, sign in
-
-
🚀 Python GUI Libraries – Complete Guide for Developers (2026) If you think Python is only for backend or data science… think again 👇 👉 You can build powerful desktop & web applications using Python GUI libraries . 📌 What is GUI in Python? GUI (Graphical User Interface) allows users to interact with applications using: ✔️ Buttons ✔️ Text fields ✔️ Menus ✔️ Windows Instead of typing commands, users interact visually → making apps more user-friendly. . 📌 Top Python GUI Libraries You Should Know 🔹 Tkinter (Beginner Friendly) ✔️ Comes pre-installed ✔️ Simple & easy to learn ✔️ Best for small apps . 🔹 Kivy (Mobile + Touch Apps) ✔️ Works on Android & iOS ✔️ Supports gestures & multitouch ✔️ Great for modern UI apps . 🔹 Streamlit (Data Science Apps) ✔️ Build web apps without HTML/CSS ✔️ Perfect for dashboards & ML demos ✔️ Real-time updates . 🔹 PyQt (Professional Apps) ✔️ Advanced widgets & tools ✔️ Ideal for large applications ✔️ Cross-platform support . 🔹 PyGUI (Lightweight) ✔️ Simple & minimal ✔️ Native system look ✔️ Low resource usage . 🔹 wxPython (Native UI Experience) ✔️ Looks like OS-native apps ✔️ Stable & powerful ✔️ Great for enterprise tools . 🔹 PySimpleGUI (Fast Development) ✔️ Very easy syntax ✔️ Quick prototyping ✔️ Less code, faster results . 🔹 Libavg (Multimedia Apps) ✔️ Animation & video support ✔️ Hardware-accelerated graphics ✔️ Interactive displays . 🔹 PyForms (Form-based Apps) ✔️ Visual form designer ✔️ Works for desktop & web ✔️ Ideal for admin tools . 📌 Real Insight As shown across the document (pages 1–6), each library is designed for a specific use case—from beginner apps to advanced, enterprise-level GUI systems. . 🔥 Which One Should You Choose? 👉 Beginner → Tkinter / PySimpleGUI 👉 Data Science → Streamlit 👉 Professional Apps → PyQt / wxPython 👉 Mobile Apps → Kivy . 🔥 Final Thought: Python is not just a scripting language… 👉 It’s a complete tool for building real-world applications with UI . 💬 Question: Which GUI library have you used or want to learn? 🚀 Follow for more Python, AI & Tech content . . #Python #PythonDeveloper #GUI #Tkinter #PyQt #Kivy #Streamlit #DataScience #MachineLearning #Programming #Coding #Developers #SoftwareEngineering #Tech #LearnPython #100DaysOfCode #AppDevelopment #WebDevelopment #AI #TechCommunity
To view or add a comment, sign in
-
💡 Create custom tools with Python & uv This is my favourite uv workflow. I can turn any one-off script or project into a CLI tool I can install into my own system to create commands I can use easily from anywhere on my machine. It all starts with an app project. You want to build a CLI tool, so that’s an app (not a lib). The uv command for that is `uv init --app ...`. But there’s something else. Later, you’ll want to install the project on your own computer, so it needs to be a package. That means you need an extra piece of data in your file `pyproject.toml`. You could add it by hand... Or you can tell uv to add it for you. Initialise the project with this command: `uv init --app --package example-proj`. If you open the file `pyproject.toml`, you will see a section that looks like this: ```toml [project.scripts] example-proj = "example_proj:main" ``` The section `[project.scripts]` of your file `pyproject.toml` sets the entrypoints of your package. They map commands, like `example-proj`, to functions in your code. Right now, if you run `uv run example-proj`, uv will run the function `main` that’s in the file `src/example_proj/__init__.py`. Try it: ```bash $ uv run example-proj Hello from example-proj! ``` To change the name of the command, change what's to the left of the equals `=` sign. To create more commands, add more lines under `[project.scripts]`. You'll need some code to make your CLI a bit more interesting. This could be any script you wrote before, for example. After you have the code you care about, you want to install the tool. As of now, the project only works if you use it through the command `uv run example-proj` from the root of your repository. What you want to do is make the command accessible everywhere on your system. To do that, you’ll install your own project as a uv tool. To install _this_ project, make sure you’re at the root of your project and run ```bash $ uv tool install -e . ``` The period `.` tells uv to install the current project and the option `-e` makes it an editable install. What does that mean? It means that if you update the code, your installed tool picks up the changes immediately. Otherwise, every time you change the code, you’d have to reinstall the tool. Try opening a new terminal and run the command `uv tool list`. You should see the tool `example-proj` in the output: ```bash $ uv tool list ... example-proj v0.1.0 - example-proj ... ``` Now, the command `example-proj` can be ran from anywhere on your system! I use this a lot to create my own utilities. For example, I have a script that automatically syncs a GitHub repository for when I’m live-coding when I’m giving a training. Every minute, the tool synchronises my work with the repo so that every student has near-live access to all of my work on their machines. That’s a uv project that I installed with `uv tool install -e .`. What tools will you use this for?
To view or add a comment, sign in
-
---- Slow Requests in Python (Django): What’s Really the Problem? Slow APIs are not a Python issue , they’re an engineering failure. Most slow requests come from poor decisions in data access, logic, and system design, not the language itself. * Too many database queries (N+1 problem): This happens when the app queries the database inside loops instead of fetching related data efficiently. What should be one query turns into dozens or hundreds, killing performance and scalability. * Inefficient ORM usage: Fetching full objects when only a few fields are needed adds unnecessary weight to your queries. This increases memory usage and slows down both processing and serialization. * Blocking synchronous code: Long operations like external API calls, file handling, or heavy computations block the request cycle. Since Django runs synchronously by default, everything waits and your response time explodes. * No caching strategy: If your app keeps recalculating the same results or hitting the database for identical requests, you’re wasting resources. Caching avoids redundant work and drastically improves speed. * Heavy serialization: Returning large or deeply nested data structures makes responses slower. Overloaded serializers and missing pagination can turn even simple endpoints into performance bottlenecks. -> In conclusion : When you are in development phase, always think as if you are already in production. Your users are not 1 or 2 they can be thousands or even millions.
To view or add a comment, sign in
-
-
Django vs. FastAPI: Which Python framework should you choose for your next project? The Python web landscape is no longer a one-horse race. While Django has long been the 'batteries-included' gold standard for perfectionists with deadlines, FastAPI has rapidly become the go-to for high-performance, asynchronous APIs. Django provides a structured, monolithic environment with a built-in ORM and Admin interface, perfect for rapid full-stack development. FastAPI, built on Starlette and Pydantic, offers raw speed and automatic documentation that rivals Node.js and Go. Are you building a complex enterprise application or a high-concurrency microservice? The choice defines your entire architecture and developer experience. Read more: https://lnkd.in/eqE-TczD #Python #WebDevelopment #Django #FastAPI #SoftwareArchitecture #Backend
To view or add a comment, sign in
-
Introducing my first published Python package - django-field-permissions! As far as Python web frameworks go, Django is undoubtedly the choice that comes with the most features out of the box. "Batteries included" is their mantra, after all. One of these "batteries" is the permissions framework, which is a flexible foundation for creating role-based access systems in your apps. One limitation is that by default, it only operates at the model level. Field-level granularity is where it stops short. You can say, "this user can view and edit orders" - but you can't say "this user can view and edit order dates and quantities, but can only view addresses". That's a gap that Django's native permissions framework doesn't cover. That's exactly what django-field-permissions is built to fill - it lets you define field-level permissions with minimal setup. You can get it up and running in a Django project in 5 minutes, with: - Assignable read and edit permissions on any models that you specify - Permission checks in both templates and backend - Built-in caching for performance with automatic invalidation via signals - Django admin integration for managing field permissions through the UI The package is live on PyPi to install: https://lnkd.in/gtntwqHp Check out the source code here (maybe give it a star?): https://lnkd.in/gMaPMPqq
To view or add a comment, sign in
-
Python application Build process: Building a python application involves packaging, dependency resolution, distribution steps that are required for CI/CD and production deployments. the python build process include: 1. organize the project structure myapp/ │ ├── myapp/ # Application source code │ └── __init__.py ├── tests/ # Unit tests ├── pyproject.toml # Modern metadata and build system ├── requirements.txt # Dependency list (optional) └── README.md 2. Declare dependencies use requirements.txt or pyproject.toml to declare dependencies. these are install using pip install eg: pip install -r requirements.txt 3.Build the package python uses setuptools and build to convert your source code into distributable format(sdist and wheel) python3 -m venv venv source venv/bin/activate pip install build python -m build This generates: dist/myapp-0.1.0.tar.gz (source distribution) dist/myapp-0.1.0-py3-none-any.whl (wheel binary) 4.Run unit tests use pytest, unittest and another test framework for code quality pytest tests/ 5. distribute distribute via pypi pip install twine twine upload dist/* 6. Deploy manually or via CI/CD package can be deployed into containers, vms or directly like aws lambda, google cloud run, etc. REAL WORLD EXAMPLE: for a flask based project: . declare dependencies using requirements.txt . create a pyproject.toml for packaging metadata . ran python -m build in ci to produce a wheel . build a docker image with the wheel inside . deploy in kubernetes using helm chart
To view or add a comment, sign in
More from this author
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development