Skip to content

npstauff/Feather

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome

Feather is a lightweight IDE written in Java using the JNI-based ImGui renderer by SpaiR at: https://github.com/SpaiR

image

Features

So far the editor supports

  • Multiple windows/docking
  • 3 core windows
    • Explorer, which allows you to find files to edit
    • Editor, which allows you to open files and edit their code
    • Console, which displays the system output and allows you to run commands
  • A plugin development system

Plugins

Plugins are a way to create user-designed windows and display them in the program dynamically.

All the core Feather windows are implemented using the plugin system, so they can be used as extra examples.

Developing A Plugin

To develop a plugin, make a class and place it in the plugins package

image

Next, edit the class to inherit from the StudioWindow class

class MyWindow extends StudioWindow{

	public MyWindow(GuiMain main) {
		super(main);
	}

	@Override
	public String getTitle() {
		//Replace with the title of your window
		return "My Window";
	}

	@Override
	public void guiUpdate() {
		// Do all of your Gui here
		Gui.text("This is my window!");
	}
	
}

You will now see your window appear in the Window menu when you run the application

image

That's all you have to do! The last step is to click on your window in the menu and it will open as a new dockable gui window.

image

Gui

The Gui class is an extension of the ImGui class provided by SpaiR.

Issues

  • The editor has a bug where you have to double click on a recently added file to open it

TODO

Things to implement

  • Editor run files
  • Implement a debugger
  • Plugin publishing and downloading from the web

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages