Are you happy with your logging solution? Would you help us out by taking a 30-second survey? Click here


IDE/Advanced text editor mainly focusing on support for the Nim programming language.

Subscribe to updates I use Aporia

Statistics on Aporia

Number of watchers on Github 332
Number of open issues 29
Average time to close an issue 5 months
Main language Nimrod
Average time to merge a PR 6 days
Open pull requests 10+
Closed pull requests 9+
Last commit over 2 years ago
Repo Created almost 10 years ago
Repo Last Updated almost 2 years ago
Size 21.5 MB
Organization / Authornim-lang
Latest Releasev0.4.1
Page Updated
Do you use Aporia? Leave a review!
View open issues (29)
View Aporia activity
View on github
Fresh, new opensource launches 🚀🚀🚀
Trendy new open source projects in your inbox! View examples

Subscribe to our mailing list

Evaluating Aporia for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)


Aporia is an IDE for the Nim programming language. Aporia uses GTK as the default toolkit, and the gtksourceview for the text editor component.

Aporia on Windows 7

Aporia on Mac OS X


The method by which Aporia can be installed depends on your platform. The following installation instructions are valid as of version 0.4.1 of Aporia.


No windows binaries available right now I'm afraid. Sorry!

You can install Aporia via the Nimble package manager, take a look at the Linux/BSD installation instructions to see how this can be done. Keep in mind that you will need to also install Aporia's dependencies manually if you install Aporia this way. The dependencies are listed below under the #dependencies section.

Mac OS X

As of version 0.4.0 Aporia now offers very good Mac OS X support. The releases page contains a zipped archive to an Aporia app bundle, which you can download and begin using immediately!

For your convenience, here is the app bundle for Aporia v0.4.0:


Some Linux/BSD distributions may package Aporia so make sure to search for it using your favourite package manager. For example, AUR offers an aporia-git package.

In most cases, you will need to compile and install Aporia manually. The easiest way to do so is using Nimble. First, if you haven't already done so, install Nimble. The instructions for doing so can be found here.

Once Nimble is installed, you can install Aporia by executing the following in a terminal:

nimble install aporia

This will download the latest Aporia release, compile it and install it to ~/.nimble/pkgs/ and ~/.nimble/bin/aporia. You can then execute Aporia by executing ~/.nimble/bin/aporia from your terminal. You can add ~/.nimble/bin to your $PATH to make the execution easier.

If Aporia fails to start with an error similar to the following:

could not load:

Then you will need to use your Linux/BSD distribution's package manager to install Aporia's dependencies. These include gtk2, gtksourceview (version 2, not 3), and pcre. More information about these can be found in the #dependencies section.


To compile Aporia you need the latest version of the nim compiler, preferably the unstable release from github. Aporia sometimes relies on bug fixes which have not yet made it to a stable release.

To build Aporia execute nimble build in its directory. To build and install Aporia execute nimble install in its directory.

You can also quickly install it using nimble without the need to clone this repo yourself, just execute nimble install aporia@#head.

Note: You also need to install some dependencies for Aporia to run. The section below explains this in more detail.

Assuming that all dependencies are installed and you installed Nimble properly, you will be able to launch Aporia by executing aporia in the terminal.

Compiling from C sources

If you do not want to get the nim compiler you can still compile Aporia from the generated C sources, it's as simple as executing the script (or build.bat on Windows). You can then also use to install Aporia.


Aporia depends on the following libraries. You may already have those installed especially if you are on Linux.

  • GTK (version 2!)
  • GtkSourceView (any version compatible with GTK2)
  • PCRE


Warning: If you are on a 64bit version of Windows you must not compile Aporia using a 64 bit version of Nim. This is because there are no 64 bit GTK+ binaries available, see discussion here.


If you already have GTK+ on your system, you don't need to do anything. Just make sure GTK+ is in your PATH.

If you don't have GTK+ installed then you need to install it. You can get the latest version from here. Make sure that the installer adds GTK+ to the PATH.


The GtkSourceView doesn't have an installer, however binaries are available from here (these are 32 bit only!). Just pick the latest version and download the archive then copy the files/folders in the archive into the 'bin' directory in gtk's directory (Most likely: C:\Program Files\GTK2-Runtime\bin).


GtkSourceView depends on libxml2-2. This should be downloaded from here (these are 32 bit only!). And the contents of it should be copied the same 'bin' directory as GtkSourceView above. The zip you are looking for is usually called


The dll for this can be found in nim's repo, in the "dist" directory. Just copy it into aporia's directory or somewhere into your PATH.

Microsoft Visual C++ 2010 Redistributable Package (optional)

If you are experiencing a MSVC100.dll cannot be found then you may need to install the Microsoft Visual C++ 2010 Redistributable Package, this can be downloaded from here (win64)


Use your package manager to install the dependencies (gtk2, gtksourceview and PCRE).

Mac OS X

The easiest way to get Aporia running on Mac OS X is by installing its dependencies using Homebrew.

$ brew install gtk gtksourceview

To get a nice OS X theme you will also need the GTK Quartz engine. The best one to get is from TingPing/homebrew-gnome.

$ brew tap TingPing/gnome
$ brew install --HEAD gtk-quartz-engine

To use the Quartz engine you must also define the following environment variables.

export GTK_DATA_PREFIX=/usr/local
export GTK_EXE_PREFIX=/usr/local
export GTK2_RC_FILES=$(nimble path aporia | tail -n 1)/share/themes/Quartz/gtk-2.0/gtkrc

You can put those in your .bash_rc file or similar to make it system-wide.

For El Capitan Mac OSX

brew tap homebrew/dupes
brew install libiconv
cd /usr/local/lib/
sudo ln -s libgdk-quartz-2.0.dylib libgdk-x11-2.0.dylib
sudo ln -s libgtk-quartz-2.0.dylib libgtk-x11-2.0.dylib

Note: For this to work you must have Aporia installed via Nimble.

If running aporia now tells you about a missing dynamic library, dependencies might have changed and you could need to brew install another package (tell us this is broken by creating an issue and we will update the documentation).

Assuming that you have set everything up correctly, you should see an Aporia window that looks like this:

Aporia on Mac OS X

Aporia open issues Ask a question     (View All Issues)
  • over 3 years Allow using tabs
  • over 3 years Aporia 0.4.0 on Win10: Menu `Edit > Raw Preferences` error (missing ``)
  • over 3 years [Feature request] Left panel/file observer
  • over 3 years v0.4.1 Crashs on macosx 10.11.5
  • over 3 years The compiler output is sometimes being omitted
  • over 3 years Fails to install on os X 10.10.5
  • almost 4 years compilation failure doesn't prevent program execution
  • about 4 years [Feature request] Leo editor inspired clone views
  • over 4 years [Feature request] Indent/Dedent
  • over 4 years Incorrect highlighting for infix keywords
  • over 4 years Hangs after searching Regex backwards
  • over 4 years Use nimgrep for find
  • over 4 years Code Bookmarks
  • almost 5 years could not import: iconv_open
  • over 5 years Disable suggest when editing a comment line
  • over 5 years Definition retrieval failed on Windows 7
  • over 5 years Create debian executable
  • over 6 years When compiled with --app:gui, hide consoles
  • over 6 years console output to Output is damn slow on Windows
  • about 8 years Output panel should be per-tab
Aporia open pull requests (View All Pulls)
  • Added: Delete by Indent & Keep Empty Lines + minor highlighting improvements
  • Allow config and nim path to be relative (portable app)
  • use the new poInteractive flag for much better control over external …
  • reload tabs via command line
  • Fixed #119.
  • Fixed most deprecation warnings
  • Check open files for modifications
  • Missing files on launch now show in one dialog
  • Goto changes
  • Fix crash when searching for .*
Aporia list of languages used
Aporia latest release notes
v0.4.1 v0.4.1

Fixes compilation on case sensitive OS'. The Mac OS X AppBundle also includes different DLLs, see for more details.

v0.4.0 v0.4.0


Other projects in Nimrod