DO YOU LIKE SCRIPTONIT?
As a fellow developer, I'm supporting you with this powerful tool
so that you can create amazing pieces of software. If you think
it helped you, if you do enjoy creating with it, please consider
supporting my work!
I prefer USD if possible.
$10 is fine, $20 is wonderful.
Thank you!
What is this?
Scriptonit is your new best friend to create Windows apps.
Imagine a very-easy-to-use environment where you can use your HTML/JS/CSS skills, but also access the local files and work like a real application! This is the idea behind Scriptonit. You can literally create a fully functional app in a few minutes. And you already know everything.
Technically, it's a headless browser window. But it's a lot more than that. Do you know Electron? It's something like that. Only, this one is super slim and fast and works out of the box.
Imagine a very-easy-to-use environment where you can use your HTML/JS/CSS skills, but also access the local files and work like a real application! This is the idea behind Scriptonit. You can literally create a fully functional app in a few minutes. And you already know everything.
Technically, it's a headless browser window. But it's a lot more than that. Do you know Electron? It's something like that. Only, this one is super slim and fast and works out of the box.
Why choose Scriptonit over Electron?
Because it's small, fast and ridiculously easy to use.
Here's what I mean:
SMALL - usually, a desktop app done in Electron will be like 30-50 megabytes, sometimes more, without the data. It's just what you need to even wake up the beast. With Scriptonit, you have a 0.1MB executable file (yes, zero point one, 85 kilobytes to be precise) and a small app folder with your source. One of my own tools written in Scriptonit, app itself is 30k, plus bootstrap plus jquery, so at the end of the day it's like 250k. That's 0.34MB altogether, including the exe file.
FAST - I mean, under 200ms, from clicking the app, to being ready to use. It all depends on what you're doing and what kind of a monster you have for a computer; but it starts lightning fast. Mainly because it's small, but also it utilizes many components that are probably already loaded.
EASY TO USE - well, the most developer-friendly thing you've ever seen is instant refresh. Use any editor (even just a Notepad), keep the app running next to it, and you'll see your changes instantly whenever you hit Save. It's just there. It's like programming should have always been, since your first 10 PRINT "HELLO" in numbered basic.
Wait, let me center this with a bigger font.
It's just like you imagined programming would be.
You write something - and it happens.
You'll see how this helps you stay in the flow, boosting your productivity from the start.
But there's more.
Scriptonit was designed with simplicity in mind. You need something, it's right there. If it's not, you can ask the operating system. For this, you can use one-shot or realtime shell capturing, that is, either just run some OS command and get the results, or start it and keep watching the output. It's made very convenient with simple JS callbacks. You also have a filesystem interface so you can access local files directly, including listing them recursively. There's an MCI audio control to play (or record!) sounds on the OS level. There's a lot more, including some cherries on the top like auto-remembering window size & position, plaintext config, ability to hide window borders, but the main thing is the joy of creation. The happiness of freedom that was part of the world of developers once, back then, and now it's here again.
Here's what I mean:
SMALL - usually, a desktop app done in Electron will be like 30-50 megabytes, sometimes more, without the data. It's just what you need to even wake up the beast. With Scriptonit, you have a 0.1MB executable file (yes, zero point one, 85 kilobytes to be precise) and a small app folder with your source. One of my own tools written in Scriptonit, app itself is 30k, plus bootstrap plus jquery, so at the end of the day it's like 250k. That's 0.34MB altogether, including the exe file.
FAST - I mean, under 200ms, from clicking the app, to being ready to use. It all depends on what you're doing and what kind of a monster you have for a computer; but it starts lightning fast. Mainly because it's small, but also it utilizes many components that are probably already loaded.
EASY TO USE - well, the most developer-friendly thing you've ever seen is instant refresh. Use any editor (even just a Notepad), keep the app running next to it, and you'll see your changes instantly whenever you hit Save. It's just there. It's like programming should have always been, since your first 10 PRINT "HELLO" in numbered basic.
Wait, let me center this with a bigger font.
You write something - and it happens.
You'll see how this helps you stay in the flow, boosting your productivity from the start.
But there's more.
Scriptonit was designed with simplicity in mind. You need something, it's right there. If it's not, you can ask the operating system. For this, you can use one-shot or realtime shell capturing, that is, either just run some OS command and get the results, or start it and keep watching the output. It's made very convenient with simple JS callbacks. You also have a filesystem interface so you can access local files directly, including listing them recursively. There's an MCI audio control to play (or record!) sounds on the OS level. There's a lot more, including some cherries on the top like auto-remembering window size & position, plaintext config, ability to hide window borders, but the main thing is the joy of creation. The happiness of freedom that was part of the world of developers once, back then, and now it's here again.
So this is, like, a compiler?
Something like that. It's a yes and no from me.
To anyone born after 2000, it's practically a compiler. Older fellows will tell you it's an interpreter. Other will say it's a scripting host. At the end of the day, JS goes in, EXE comes out, that qualifies as a compiler, but the actual compiling only happens within the browser component, which is not even inside your exe but inside Windows itself. So strictly speaking: no, Scriptonit is not really a compiler, not like those hardcode C- or Pascal-based languages that can be directly compiled to machine code.
But this has more pros than cons, if you ask me. All the realtime changes when you develop your app, all the beauty of a CSS-based UI, all the convenience and simplicity JavaScript offers with high-level data structures and garbage collection and everything - it's way better for small projects. And it's fast enough unless you do something time-critical. So thank God it's not a compiler, I'd say.
To anyone born after 2000, it's practically a compiler. Older fellows will tell you it's an interpreter. Other will say it's a scripting host. At the end of the day, JS goes in, EXE comes out, that qualifies as a compiler, but the actual compiling only happens within the browser component, which is not even inside your exe but inside Windows itself. So strictly speaking: no, Scriptonit is not really a compiler, not like those hardcode C- or Pascal-based languages that can be directly compiled to machine code.
But this has more pros than cons, if you ask me. All the realtime changes when you develop your app, all the beauty of a CSS-based UI, all the convenience and simplicity JavaScript offers with high-level data structures and garbage collection and everything - it's way better for small projects. And it's fast enough unless you do something time-critical. So thank God it's not a compiler, I'd say.
Did you bring me presents?
Sure, examples are included in the download.
-
HelloWorld and SimplestPossibleApp are the easiest, hence their names. The classic
Hello World is spiced up with a little interaction, but only to give you a better starting point
if you want to begin creating right away.
FolderStats is more like a medium level guy. It will give you insight about the sizes of your directories, it's actually useful, but the point is to see how realtime shell capturing works. Size stats move as the app receives data from the OS, you can see the little bars adapting to the currently available information, it's fun to watch.
VoiceNote is a complete product. It can record and organize mp3 notes for you, and has a nice UI with custom folders and everything. In the source there are several JS files to make it easier to follow what's where. The whole source is like 50k and it's far from super-optimized.
FileMonitor is a handy tool, it does nothing special other than watching a file for changes. Super useful, if you ask me, but from a technical perspective it's a penny product. The soul of it is just one line where it gets the details of the file being monitored; and there's setInterval which you already know.
CheatSheet, last but not least, is a very-very helpful one, it serves as a reference for the developer. It's like an offline help in an offline browser. Having it open makes it a lot easier to work, even for myself. Sad but true :)
sci.
is the
magic part, all the rest is just pure JS that you already know.
Is this free?
Yes.
This version (0.9) is absolutely free and I'm not willing to make it a paid product; if I change my mind later, this early version will still be available for no cost, and with only a gentle suggestion to buy me a beer with the donation link. Several beers is always an option.
This version (0.9) is absolutely free and I'm not willing to make it a paid product; if I change my mind later, this early version will still be available for no cost, and with only a gentle suggestion to buy me a beer with the donation link. Several beers is always an option.
Can I use JS frameworks?
In theory, you can use anything that runs in a browser.
I tried Vue, it worked, it was very simple but cool.
However, let's not forget that this is a glorified Internet Explorer here, so it's not the sharpest knife, and sometimes it needs polyfills and earlier versions of modern miracles. It took me a good 10 minutes of research until the first Vue app started to work; but I tried for 2 hours to Vuetify it and I finally had to retreat. Not all peaches and cream - but for a proof of concept, it's pretty sufficient.
I tried Vue, it worked, it was very simple but cool.
However, let's not forget that this is a glorified Internet Explorer here, so it's not the sharpest knife, and sometimes it needs polyfills and earlier versions of modern miracles. It took me a good 10 minutes of research until the first Vue app started to work; but I tried for 2 hours to Vuetify it and I finally had to retreat. Not all peaches and cream - but for a proof of concept, it's pretty sufficient.
OK, where's the documentation?
If you just download the starter pack and look for the demo app called
CheatSheet, you'll find everything that matters. But there's a web based
documentation, too.