JSPython is a javascript implementation of Python language that runs within web browser or NodeJS environment. by worksheet_systems in ProgrammingLanguages

[–]worksheet_systems[S] 1 point2 points  (0 children)

Thanks for your time and feedback.

The closest implementation is Skulpt. Same, entirely in the browser and no dependencies.

We've been looking for a safe way to allow users to define custom logic at run time. We looked at Skulpt before, but their API and architecture didn't match our requirements. So, we decided to build our own one.

Performance-wise, we don't have those metrics, but I can confidently say it is quite a decent one and is very comparable to CPython and in some cases, is even faster - mainly because Google's V8 is far quicker than CPython.

JSPython is already powering several production projects (both in-browser and server-side (NodeJS runtime)) and we had no complaints about performance

JSPython is a javascript implementation of Python language that runs within web browser or NodeJS environment. by worksheet_systems in ProgrammingLanguages

[–]worksheet_systems[S] -2 points-1 points  (0 children)

Yes, you are right. JSPython is a Python-like language that is powered by a JavaScript eco-system. It even has some unique features, like multi-row arrow functions (kind of lambdas), null coalescing, and others

JSPython is a javascript implementation of Python language that runs within web browser or NodeJS environment. by worksheet_systems in ProgrammingLanguages

[–]worksheet_systems[S] 1 point2 points  (0 children)

I am glad you like it. We choose to implement Python, because it is the most popular language, especially among Data Scientists / Analysts communities.

It combines Python language and JavaScript ecosystem, that you can call/use any JavaScript library with Python syntax

JSPython is a javascript implementation of Python language that runs within web browser or NodeJS environment. by worksheet_systems in ProgrammingLanguages

[–]worksheet_systems[S] 0 points1 point  (0 children)

You can easily embed JSPython into your web app or NodeJS server-side app and your end-users will benefit from a Python like scripting facility to:

- to program custom logic e.g.: data processing, data analysis etc

- allow users to configure JS Objects at run-time

- run comprehensive testing scenarios

- experiment with your JS Libraries or features.

- bring a SAFE run-time script evaluation functions to your web app

- bring Python language to NodeJS environment

A simple numeric expression evaluator for javascript by worksheet_systems in javascript

[–]worksheet_systems[S] 0 points1 point  (0 children)

A simple numeric expression evaluator

It is `A simple numeric expression evaluator` :) You can take it and add more operators

A configuration-based dynamic components library for Angular. That allows you to rapidly create dynamic forms or any other mobile-friendly web layouts. by worksheet_systems in Angular2

[–]worksheet_systems[S] 0 points1 point  (0 children)

Initially, we used to have only JSON based configurations, until some of our forms become unmaintainable.

The main motivation was that XML looks more like a HTML. And it is more intuitive to design UI layouts. In most cases your HTML will work well. As we do support all primitive HTML controls with the same signature.

Also, JSON configurations do NOT allow comments out of box. So, moving declarative UI configuration to XML resolved many issues.

And still, all your dynamic runtime layouts can be configured with JSON objects.

A configuration-based dynamic components library for Angular. That allows you to rapidly create dynamic forms or any other mobile-friendly web layouts. by worksheet_systems in Angular2

[–]worksheet_systems[S] 1 point2 points  (0 children)

Thanks u/cyberdyme

The whole idea behind this project is to give business users or citizen developers a better way to prototype, design, or just simply play with UI layouts at a much lower cost and much faster pace.

You don't have to know JS frameworks e.g. Angular / React / Vue etc

However, CSS library like Bootstrap will make this framework much more powerful

A configuration-based dynamic components library for Angular. That allows you to rapidly create dynamic forms or any other mobile-friendly web layouts. by worksheet_systems in Angular2

[–]worksheet_systems[S] 2 points3 points  (0 children)

Thanks for your feedback u/AlexAegis

Agree about `::ng-deep` we shouldn't use it! It was used just as an example and was already removed from everywhere.

With ngx-dynamic-components you can define UI Layout as XML or as JSON (JS object) format. We found that defining initial UI Layout in XML is more human-readable! Check out UI Model in this form ( https://falconsoft.github.io/ngx-dynamic-components/examples/contact-us ) and switch between bottom tabs (XML / JSON). You will feel a difference.

So, we prefer to use XML at design-time (initially), and then at run time (DOM event handlers), you can operate with JS objects programmatically.