Skip to content

Commit

Permalink
Language tweaks to history page
Browse files Browse the repository at this point in the history
  • Loading branch information
ku1ik committed Nov 27, 2023
1 parent 7f8040a commit f5374fa
Showing 1 changed file with 36 additions and 35 deletions.
71 changes: 36 additions & 35 deletions docs/history.md
Original file line number Diff line number Diff line change
@@ -1,64 +1,65 @@
# History

asciinema project was started by [Marcin Kulik](https://hachyderm.io/@ku1ik) in
2011.
The asciinema project was started by [Marcin Kulik](https://hachyderm.io/@ku1ik)
in 2011.

While Marcin was playing with the idea of sharing terminal session recordings on
the web since 2010, the working prototype of what eventually became asciinema
came to life a bit later.
While Marcin had been playing with the idea of sharing terminal session
recordings on the web since 2010, the working prototype of what eventually
became asciinema came to life a bit later.

Initially, all components of asciinema - the recorder (aka CLI), the player, the
server - were developed as parts of a single [Ruby on
Rails](https://rubyonrails.org/) codebase. The recorder was a simple, single
file Python program. The player was a single JavaScript file, with an ad-hoc,
incomplete parser for ANSI escape sequences, using jQuery for juggling the lines
of a fake terminal view in a web browser. It was rough but worked well enough to
deserve continued development.
Initially, all components of asciinema - the recorder (aka CLI), the player, and
the server - were developed as parts of a single [Ruby on
Rails](https://rubyonrails.org/) codebase. The recorder was a simple,
single-file Python program. The player was a single JavaScript file with an
ad-hoc, incomplete parser for ANSI escape sequences, using jQuery to juggle the
lines of a fake terminal view in a web browser. It was rough but worked well
enough to deserve continued development.

The project was initially named "ascii.io". In March 2012 ascii.io site was
launched, providing free hosting for terminal session recordings made with
`asciiio` script (tripple "i", omg!). The project was renamed to "asciinema" in
The project was initially named "ascii.io". In March 2012, the ascii.io site was
launched, providing free hosting for terminal session recordings made with the
`asciiio` script (triple "i", omg!). The project was renamed to "asciinema" in
September 2013 and published as a Python package to PyPI around the same time.

In late 2014 the recorder was rewritten in Go, preserving the functionality of
In late 2014, the recorder was rewritten in Go, preserving the functionality of
the previous versions while improving in some areas. The first release of the
new codebase was 0.9.9, published in December 2014.

The same year version 1.0 of the player came out, quickly followed by version
1.0 of the recorder, which came out in March 2015. Those releases stabilized the
first version of asciinema's recording file format, [asciicast
The same year, version 1.0 of the player came out, quickly followed by version
1.0 of the recorder, which was released in March 2015. These releases stabilized
the first version of asciinema's recording file format, [asciicast
v1](../manual/asciicast/v1/).

Version 1.2 of the recorder was the final version implemented in Go. For
[several
reasons](https://blog.asciinema.org/post/and-now-for-something-completely-different/)
reasons](https://blog.asciinema.org/post/and-now-for-something-completely-different/),
it was reverted to the previous Python implementation. The new-old recorder was
released in July 2016 as version 1.3, with all new features backported from the
Go codebase.

The lack of proper ANSI parser in the early versions of the asciinema player was
an obstacle for timely bugfixes and more comprehensive terminal emulation,
therefore in 2015 the work started to implement new version of the player with
proper ANSI-compatible terminal parser embedded. The result was asciinema player
2.0, rewritten from scratch in ClojureScript, and released in January 2016.
The lack of a proper ANSI parser in the early versions of the asciinema player
was an obstacle to timely bug fixes and more comprehensive terminal emulation.
Therefore, in 2015, work started on implementing a new version of the player
with a proper ANSI-compatible terminal parser embedded. The result was asciinema
player 2.0, rewritten from scratch in ClojureScript, and released in January
2016.

Around 2017 asciinema server was made way more self-hosting friendly, with
updated installation docs and simplified setup in containerized environments.
Around 2017, the asciinema server was made more self-hosting-friendly, with
updated installation docs and a simplified setup in containerized environments.

February 2018 marked the release of asciinema recorder 2.0, which introduced
February 2018 marked the release of asciinema recorder 2.0, which introduced an
improved recording file format, [asciicast v2](../manual/asciicast/v2/), among
many new features.

Another milestone was achieved in May 2022 with the release of asciinema player
3.0, in which the terminal emulation part was implemented in Rust (as
[avt](https://github.com/asciinema/avt) library), and compiled to WebAssembly,
resulting in [4x smaller, 50x
3.0, in which the terminal emulation part was implemented in Rust (as the
[avt](https://github.com/asciinema/avt) library) and compiled to WebAssembly,
resulting in a [4x smaller, 50x
faster](https://blog.asciinema.org/post/smaller-faster/) player.

Outside of asciinema's core components, a new, ultra-fast asciinema GIF
generator, [agg](../manual/agg/), was released in August 2022. Creation of agg
was, to a degree, sparked by avt. In fact, avt has also been integrated into
asciinema server, where it's used for thumbnail generation and recording
generator, [agg](../manual/agg/), was released in August 2022. The creation of
agg was, to a degree, sparked by avt. In fact, avt has also been integrated into
the asciinema server, where it's used for thumbnail generation and recording
analysis since 2020.

The latest version of asciinema recorder, 2.4, was released in October 2023.
The latest version of the asciinema recorder, 2.4, was released in October 2023.

0 comments on commit f5374fa

Please sign in to comment.