Skip to content

A sandbox to learn and prototype with GNOME technologies 🛠️

License

Notifications You must be signed in to change notification settings

acidburn0zzz/Workbench

Repository files navigation

Workbench

A sandbox to learn and prototype with GNOME techologies

Workbench aims to provide a great developer experience for the following use cases

  1. An application to learn GNOME development - learning by doing with an instant feedback loop
  2. A scratchpad for experienced developers who want to try or prototype something quickly

Workbench will never be a full fledged IDE or code editor. I see it as the little brother of GNOME Builder.

Features:

  • Live GTK/CSS preview
  • Undo and redo
  • GNOME JavaScript for quick and easy scripting
  • Syntax highlighting
  • Opens .js, .css and .ui files
  • Auto format
  • Auto save and restore
  • Console logs
  • Dark mode switcher
  • More to come

Workbench is a work in progress, feedback and help welcome.

Test

  1. Install GNOME Builder
  2. Open Builder and select "Clone Repository..."
  3. Clone https://github.com/sonnyp/Workbench.git
  4. Press the Run ▶ button

Tips and tricks

Disable code formatting

Workbench uses the prettier code formatter. If you need to exclude some code you can use special comments.

JavaScript

// prettier-ignore
matrix(
  1, 0, 0,
  0, 1, 0,
  0, 0, 1
);

XML

<foo>
  <!-- prettier-ignore-start -->
    <this-content-will-not-be-formatted     />
  <!-- prettier-ignore-end -->
</foo>

CSS

/* prettier-ignore */
.my    ugly rule
{

}

Development

Use GNOME Builder.

Packaging

Please do not attempt to package Workbench any other way than as a Flatpak application.

It is unsupported and may put users at risk.

Contributing

If you can help, here is a list of issues that would make Workbench better

Copyright

© 2022 Sonny Piers

License

GPLv3. Please see COPYING file.

About

A sandbox to learn and prototype with GNOME technologies 🛠️

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 98.3%
  • Meson 1.4%
  • Other 0.3%