NAME

Farabi - Modern Perl IDE

VERSION

version 0.47

SYNOPSIS

  # Run on the default port 4040
  $ farabi
  
  # Run it on port 5050
  $ farabi --port 5050

DESCRIPTION

This is a modern web-based Perl IDE that runs inside your favorite browser.

Please run the following command and then open http://127.0.0.1:4040 in your browser:

  farabi

SECURITY WARNING

Farabi is an experiment in progress. It is a web-based user interface with a backend Perl web server. Please DO NOT serve it on the Internet unless you jail it in an isolated uber-secure environment that has proper CPU and I/O limits and non-root access.

You have been warned, young padawan :)

FEATURES

Open File(s)

The dialog provides partial filename search inside the directory where Farabi was started. Matched single or multiple file selections can then be opened in one batch.

WARNING: Please do not start farabi in a folder with too many files like your home directory because this feature's performance will eventually suffer.

METHODS

support_can_be_enabled

Returns 1 when a required module with a specific version is found otherwise returns 0.

It can be used in the future to toggle feature XYZ runtime support

TECHNOLOGIES USED

  • Mojolicious - A next generation web framework for the Perl programming language

  • jQuery - A new kind of JavaScript Library

  • JSHint - A JavaScript Code Quality Tool

  • Bootstrap - Sleek, intuitive, and powerful front-end framework for faster and easier web development

  • CodeMirror - In-browser code editing made bearable

  • Perlito - Runtime for "Perlito" Perl5-in-Javascript

SEE ALSO

EPIC, Kephra, Padre, TryPerl

HISTORY

The idea started back in March 2012 as a fork of Padre. I wanted to dump Wx for the browser. The first version was in 11th April as Mojolicious::Plugin::Pedro. It used the ACE Javascript editor and jQuery UI. Then i hibernated for a while to play games :) Later I heard about Galileo. It basically used the same idea, mojolicious backend, browser for the frontend. So I stopped playing games and rolled my sleeves to focus on Pedro.

Later I discovered Pedro was not a good name for my project. So I chose Farabi for Al-Farabi who was a renowned scientist and philosopher of the Islamic Golden Age. He was also a cosmologist, logician,and musician.

SUPPORT

If you find a bug, please report it in:

https://github.com/azawawi/farabi/issues

If you find this module useful, please rate it in:

http://cpanratings.perl.org/d/Farabi

AUTHORS

Ahmad M. Zawawi <ahmad.zawawi@gmail.com>

CONTRIBUTORS

Kevin Dawson <bowtie@cpan.org>

AUTHOR

Ahmad M. Zawawi <ahmad.zawawi@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2014 by Ahmad M. Zawawi.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.