Get Paid Support

Tarikh Shamsi B Miladi ((full)) Jun 2026

While the world runs on the (Miladi) calendar, Iran and Afghanistan use the Solar Hijri (Shamsi) system—widely considered the most accurate calendar in human history. 1. The World’s Most Precise Timekeeper

Because the Solar Hijri year begins in March, a single Shamsi year spans parts of two Miladi years. tarikh shamsi b miladi

The Solar Hijri calendar is a solar-based system that is widely considered one of the most accurate in the world due to its reliance on astronomical observations rather than fixed rules. While the world runs on the (Miladi) calendar,

Converting is a foundational skill for anyone interacting with Persian culture, Iranian bureaucracy, or Afghan history. While the two calendars are offset by approximately 621 or 622 years, the exact conversion requires attention to the vernal equinox, month lengths, and leap year cycles. The Solar Hijri calendar is a solar-based system

How you can help?

I've never charged anything for this project, even did a lot of support for free. I'm still willing to help even if I offer paid support. Not everyone can afford paying me money. You can help by leaving meaningful comment or by starting a discussion, even negative feedback is valuable. I will know that people like this web based terminal. Visitor statistics don't tell everthing.

Thanks

I want to thanks a few services that provided free accounts for this Open Source project:

Here are statuses of those services on master branch:

And devel branch:

While the world runs on the (Miladi) calendar, Iran and Afghanistan use the Solar Hijri (Shamsi) system—widely considered the most accurate calendar in human history. 1. The World’s Most Precise Timekeeper

Because the Solar Hijri year begins in March, a single Shamsi year spans parts of two Miladi years.

The Solar Hijri calendar is a solar-based system that is widely considered one of the most accurate in the world due to its reliance on astronomical observations rather than fixed rules.

Converting is a foundational skill for anyone interacting with Persian culture, Iranian bureaucracy, or Afghan history. While the two calendars are offset by approximately 621 or 622 years, the exact conversion requires attention to the vernal equinox, month lengths, and leap year cycles.

JavaScript Terminal Demo

This is a simple demo, using a JavaScript interpreter. (If the cursor is not blinking, click on the terminal to activate it.) You can type any JavaScript expression, there is debug function dir (like in Python).

You can use jQuery's "$" method to manipulate the page. You also have access to this terminal in the "term" variable. Try dir(term) or demo() for demo typing animation.

NOTE: for unknow reason this demo doesn't work on Mobile, but I assure you that the library do works on mobile. Check full screen version. The issue with the demo is tracked on GitHub issue.

JavaScript code:

// ref: https://stackoverflow.com/q/67322922/387194
var __EVAL = (s) => eval(`void (__EVAL = ${__EVAL}); ${s}`);

jQuery(function($, undefined) {
    $('#term_demo').terminal(function(command) {
        if (command !== '') {
            try {
                var result = __EVAL(command);
                if (result !== undefined) {
                    this.echo(new String(result));
                }
            } catch(e) {
                this.error(new String(e));
            }
        }
    }, {
        greetings: 'JavaScript Interpreter',
        name: 'js_demo',
        height: 200,
        prompt: 'js> '
    });
});

You can also try JavaScript REPL Online, with Book about JavaScript and Terminal on 404 Error page (with a lot of features like chat and games).

Download

Complete source with few examples from github

Or just the files:

Installation

You can download files locally or use:

Bower:

bower install jquery.terminal

NPM:

npm install --save jquery.terminal

Then you can include the scripts in your HTML

:
<script src="https://cdn.jsdelivr.net/npm/jquery"></script>
<script src="js/jquery.terminal-2.46.0.min.js"></script>
<!-- With modern browsers, jQuery mousewheel is not actually needed; scrolling will still work -->
<script src="js/jquery.mousewheel-min.js"></script>
<link href="css/jquery.terminal-2.46.0.min.css" rel="stylesheet"/>

You can also grab the files using a CDN (Content Distribution Network):

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.terminal/2.46.0/js/jquery.terminal.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/jquery.terminal/2.46.0/css/jquery.terminal.min.css" rel="stylesheet"/>

or

<script src="https://cdn.jsdelivr.net/npm/jquery.terminal/js/jquery.terminal.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/jquery.terminal/css/jquery.terminal.min.css" rel="stylesheet"/>

And optional but recomended:

<script src="https://unpkg.com/js-polyfills/keyboard.js"></script>
<script src="https://cdn.jsdelivr.net/gh/jcubic/static/js/wcwidth.js"></script>

If you always want the latest version, you can grab the files from unpkg without specifying version number

<script src="https://unpkg.com/jquery.terminal/js/jquery.terminal.js"></script>
<link href="https://unpkg.com/jquery.terminal/css/jquery.terminal.css" rel="stylesheet"/>

License

The jQuery Terminal Emulator plugin is released under the MIT license.

It contains:

Comments

You can use the terminal below to leave a comment. Click to activate. If you have a question, you can create an issue on github, ask on stackoverflow (you can use the "jquery-terminal" tag). You can also send email with SO question or jump to the chat.

If you have a feature request, you can also add a GitHub issue.

If you've found an issue with this website, you can add issue to the jquery.terminal-www repo.

If you'll ask question in Comments, you can subscribe to comments RSS to see reply, when it's added.