Skip to content

Commit

Permalink
GoKi => Goki
Browse files Browse the repository at this point in the history
  • Loading branch information
kkoreilly committed Dec 21, 2023
1 parent d305b72 commit 5be3925
Show file tree
Hide file tree
Showing 20 changed files with 48 additions and 48 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/hugo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:
with:
go-version: '1.21.3'

- name: Install GoKi
- name: Install Goki
run: go install -tags offscreen goki.dev/goki@latest

- name: Build Demo
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
BSD 3-Clause License

Copyright (c) 2023, The GoKi Authors
Copyright (c) 2023, The Goki Authors
All rights reserved.

Redistribution and use in source and binary forms, with or without
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# The GoKi Website
# The Goki Website

This is the website for GoKi ([goki.dev](https://goki.dev)).
This is the website for Goki ([goki.dev](https://goki.dev)).
8 changes: 4 additions & 4 deletions content/en/_index.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
+++
title = 'GoKi'
title = 'Goki'
+++

{{< blocks/cover title="Insert the Ki to Accelerate Your Go Experience" image_anchor="top" height="80%" >}}
Expand All @@ -14,7 +14,7 @@ title = 'GoKi'
{{< /blocks/cover >}}

{{% pageinfo %}}
**NOTE:** GoKi is currently undergoing a period of significant development to make it easier to make useful, fast, and beautiful apps and support running apps on mobile. As such, some of the information on this website and in the [GoKi GitHub repositories](https://github.com/goki) may be incorrect. Furthermore, there may be breaking changes soon, so starting new apps with this framework is not recommended at this time; if you do, please be ready to adjust to any breaking changes. If you want to accelerate the improvement of GoKi, please contribute by following the [Contribution Guidelines](https://goki.dev/docs/general/contributionguidelines/). Development of Gi is currently happening on the [main branch](https://github.com/goki/gi/tree/main). For the latest stable version of Gi, import version 1.3.19 and see the [v1 branch](https://github.com/goki/gi/tree/v1).
**NOTE:** Goki is currently undergoing a period of significant development to make it easier to make useful, fast, and beautiful apps and support running apps on mobile. As such, some of the information on this website and in the [Goki GitHub repositories](https://github.com/goki) may be incorrect. Furthermore, there may be breaking changes soon, so starting new apps with this framework is not recommended at this time; if you do, please be ready to adjust to any breaking changes. If you want to accelerate the improvement of Goki, please contribute by following the [Contribution Guidelines](https://goki.dev/docs/general/contributionguidelines/). Development of Gi is currently happening on the [main branch](https://github.com/goki/gi/tree/main). For the latest stable version of Gi, import version 1.3.19 and see the [v1 branch](https://github.com/goki/gi/tree/v1).


{{% /pageinfo %}}
Expand All @@ -27,7 +27,7 @@ A large library of widgets, 3D support, a robust event system, and infinite cust


{{% blocks/feature icon="fa-truck-fast" title="Fast" url="/docs" %}}
GoKi is built on the cutting-edge [Vulkan graphics framework](https://en.wikipedia.org/wiki/Vulkan), making it possible to create lightning-fast 3D games and editors.
Goki is built on the cutting-edge [Vulkan graphics framework](https://en.wikipedia.org/wiki/Vulkan), making it possible to create lightning-fast 3D games and editors.
{{% /blocks/feature %}}


Expand All @@ -40,7 +40,7 @@ Good default styles and easy, extensive customizability with a direct styling sy


{{% blocks/section %}}
Applications Built With GoKi
Applications Built With Goki
{.h1 .text-center}
{{% /blocks/section %}}

Expand Down
8 changes: 4 additions & 4 deletions content/en/about/index.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
+++
linkTitle = 'About'
title = 'About GoKi'
title = 'About Goki'

[menu]
[menu.main]
weight = 10
+++

{{% blocks/cover title="About GoKi" image_anchor="bottom" height="auto" %}}
{{% blocks/cover title="About Goki" image_anchor="bottom" height="auto" %}}

A framework for trees (Ki in Japanese) in Go, including the GoGi 2D & 3D GUI framework.
{.mt-5}
Expand All @@ -16,13 +16,13 @@ A framework for trees (Ki in Japanese) in Go, including the GoGi 2D & 3D GUI fra

{{% blocks/lead %}}

GoKi is an open-source project that provides a set of frameworks for constructing cross-platform GUIs and other useful tools in pure Go using full-strength tree structures. The name GoKi is derived from the word tree in Japanese (木), which is pronounced Ki (き).
Goki is an open-source project that provides a set of frameworks for constructing cross-platform GUIs and other useful tools in pure Go using full-strength tree structures. The name Goki is derived from the word tree in Japanese (木), which is pronounced Ki (き).

{{% /blocks/lead %}}

{{% blocks/section %}}

### The core package of GoKi is Ki, which provides trees using the `Ki` interface implemented by the `Node` struct. This supports arbitrarily directed structural trees and standard operations on them.
### The core package of Goki is Ki, which provides trees using the `Ki` interface implemented by the `Node` struct. This supports arbitrarily directed structural trees and standard operations on them.
{.text-center}

{{% /blocks/section %}}
Expand Down
4 changes: 2 additions & 2 deletions content/en/blog/releases/v2.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
+++
date = '2023-08-23'
description = 'Version 2 of the GoKi framework brings significant improvements to many packages'
description = 'Version 2 of the Goki framework brings significant improvements to many packages'
title = 'Announcing Version 2'
+++

## Migrating and Breaking Changes

For information about how to migrate to V2 of the GoKi framework and a list of breaking changes made, see [Migrating to V2](https://goki.dev/docs/general/migrating)
For information about how to migrate to V2 of the Goki framework and a list of breaking changes made, see [Migrating to V2](https://goki.dev/docs/general/migrating)
4 changes: 2 additions & 2 deletions content/en/docs/_index.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
+++
linkTitle = 'Documentation'
title = 'Welcome to the GoKi Docs!'
title = 'Welcome to the Goki Docs!'
weight = 20

[menu]
[menu.main]
weight = 20
+++

GoKi is an open-source project that provides a set of frameworks for constructing cross-platform GUIs and other useful tools in pure Go using full-strength tree structures. The name GoKi is derived from the word tree in Japanese (木), which is pronounced Ki (き).
Goki is an open-source project that provides a set of frameworks for constructing cross-platform GUIs and other useful tools in pure Go using full-strength tree structures. The name Goki is derived from the word tree in Japanese (木), which is pronounced Ki (き).
2 changes: 1 addition & 1 deletion content/en/docs/general/_index.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
+++
description = 'General project-wide information that applies to all GoKi projects.'
description = 'General project-wide information that applies to all Goki projects.'
title = 'General'
weight = 1
+++
8 changes: 4 additions & 4 deletions content/en/docs/general/contributionGuidelines/_index.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
+++
description = 'How to contribute to GoKi projects'
description = 'How to contribute to Goki projects'
title = 'Contribution Guidelines'
weight = 2
+++

## Bugs

If you have found a bug with a GoKi project, create an issue on the GitHub repository for it, tag it with the label "bug," and state your operating system and the code you were running in the issue. Also, please provide all relevant information about the bug, like any panic stack traces. We will reply to your issue as soon as possible and do our best to fix it quickly, and you should reply to any questions we ask you.
If you have found a bug with a Goki project, create an issue on the GitHub repository for it, tag it with the label "bug," and state your operating system and the code you were running in the issue. Also, please provide all relevant information about the bug, like any panic stack traces. We will reply to your issue as soon as possible and do our best to fix it quickly, and you should reply to any questions we ask you.

## Feature Requests

If you want a new feature to be added to a GoKi project, create an issue on the GitHub repository for it, tag it with the label "enhancement," and clearly describe the feature, why you want it, and how it can be implemented in the issue. We will reply to your issue as soon as possible and either give a timeline on when we plan to implement it or explain why we will not implement it.
If you want a new feature to be added to a Goki project, create an issue on the GitHub repository for it, tag it with the label "enhancement," and clearly describe the feature, why you want it, and how it can be implemented in the issue. We will reply to your issue as soon as possible and either give a timeline on when we plan to implement it or explain why we will not implement it.

## Code Contributions

If you want to fix a bug or add a feature on a GoKi project, you should create a pull request on the GitHub repository for it, commit your changes on that pull request, and then request for the pull request to be reviewed. We will review it as quickly as possible, give feedback, and merge it if the changes are good.
If you want to fix a bug or add a feature on a Goki project, you should create a pull request on the GitHub repository for it, commit your changes on that pull request, and then request for the pull request to be reviewed. We will review it as quickly as possible, give feedback, and merge it if the changes are good.

## Documentation Contributions

Expand Down
2 changes: 1 addition & 1 deletion content/en/docs/general/migrating/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ weight = 1

## Breaking Changes

### GoKi-wide
### Goki-wide
* Import paths have been changed from `github.com/goki/*` to `goki.dev/*` (for example, `github.com/goki/gi` changed to `goki.dev/gi`). All repositories with a changed import URL that were on version 1 are now on version 2 and have a major version URL suffix (for example, `goki.dev/gi/v2`)
* `KiT_*` global variables have been renamed to `Type*` (for example, `KiT_Button` changed to `TypeButton`); fixing this should be a simple find and replace for `KiT_` => `Type`
* `AddNew*` functions and methods have been renamed to `New*` (for example, `AddNewButton` changed to `NewButton`); fixing this should be a simple find a replace for `AddNew` => `New`
Expand Down
4 changes: 2 additions & 2 deletions content/en/docs/general/structFieldComments/_index.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
+++
description = 'How GoKi autogenerates struct field comments'
description = 'How Goki autogenerates struct field comments'
title = 'Struct Field Comments'
weight = 3
+++
Expand Down Expand Up @@ -31,7 +31,7 @@ We build upon goimports because it is a tool already called in almost all Go edi

## Installation

The struct field comments generated by the tool will be visible in all editors without any extra effort. However, if you are making an app with GoKi that uses struct field descriptions or contributing to any of the GoKi repositories, you should install the fork of goimports so that you will generate struct field comments. Installation is very simple -- you just have to run
The struct field comments generated by the tool will be visible in all editors without any extra effort. However, if you are making an app with Goki that uses struct field descriptions or contributing to any of the Goki repositories, you should install the fork of goimports so that you will generate struct field comments. Installation is very simple -- you just have to run

```
go install github.com/goki/go-tools/cmd/goimports@latest
Expand Down
4 changes: 2 additions & 2 deletions content/en/docs/gi/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ NOTE: Requires Go version `1.18+` -- now using the new generics.

See the [Wiki](https://github.com/goki/gi/wiki) for more docs (increasingly extensive), [Install](https://github.com/goki/gi/wiki/Install) instructions (mostly basic `go build` procedure, but does now depend on `cgo` on all platforms due to `glfw`, so see details for each platform -- for mac you must now install the [Vulkan SDK](https://vulkan.lunarg.com), and [Google Groups goki-gi](https://groups.google.com/forum/#!forum/goki-gi) email list, and the new github [Discussions](https://github.com/goki/gi/discussions) tool.

GoGi uses the [GoKi](https://github.com/goki/ki) tree infrastructure to implement a scenegraph-based GUI framework in full native idiomatic Go, with minimal OS-specific backend interfaces based originally on the [Shiny](https://github.com/golang/exp/tree/master/shiny) drivers, now using [go-gl/glfw](https://github.com/go-gl/glfw) and vulkan-based [vgpu](https://github.com/goki/vgpu), and supporting MacOS, Linux, and Windows.
GoGi uses the [Goki](https://github.com/goki/ki) tree infrastructure to implement a scenegraph-based GUI framework in full native idiomatic Go, with minimal OS-specific backend interfaces based originally on the [Shiny](https://github.com/golang/exp/tree/master/shiny) drivers, now using [go-gl/glfw](https://github.com/go-gl/glfw) and vulkan-based [vgpu](https://github.com/goki/vgpu), and supporting MacOS, Linux, and Windows.

The overall design integrates existing standards and conventions from widely-used frameworks, including Qt (overall widget design), HTML / CSS (styling), and SVG (rendering). The core `Layout` object automates most of the complexity associated with GUI construction (including scrolling), so the programmer mainly just needs to add the elements, and set their style properties -- similar to HTML. The main 2D framework also integrates with a 3D scenegraph, supporting interesting combinations of these frameworks (see `gi3d` package and [examples/gi3d](https://github.com/goki/gi/tree/master/examples/gi3d)). Currently GoGi is focused on desktop systems, but nothing should prevent adaptation to mobile.

Expand All @@ -30,7 +30,7 @@ See [Gide](https://github.com/goki/gide) for a complete, complex application wri

* `SVG` element (in `svg` sub-package) supports SVG rendering -- used for Icons internally and available for advanced graphics displays -- see `gi/examples/svg` for viewer and start on editor, along with a number of test .svg files.

* **Model / View** paradigm with `reflect`ion-based view elements that display and manipulate all the standard Go types (in `giv` sub-package), from individual types (e.g., int, float display in a `SpinBox`, "enum" const int types in a `ComboBox` chooser) to composite data structures, including `StructView` editor of `struct` fields, `MapView` and `SliceView` displays of `map` and `slice` elements (including full editing / adding / deleting of elements), and full-featured `TableView` for a `slice`-of-`struct` and `TreeView` for GoKi trees.
* **Model / View** paradigm with `reflect`ion-based view elements that display and manipulate all the standard Go types (in `giv` sub-package), from individual types (e.g., int, float display in a `SpinBox`, "enum" const int types in a `ComboBox` chooser) to composite data structures, including `StructView` editor of `struct` fields, `MapView` and `SliceView` displays of `map` and `slice` elements (including full editing / adding / deleting of elements), and full-featured `TableView` for a `slice`-of-`struct` and `TreeView` for Goki trees.
+ `TreeView` enables a built-in GUI editor / inspector for designing gui elements themselves. Just press `Control+Alt+I` in any window to pull up this editor / inspector. Scene graphs can be automatically saved / loaded from JSON files, to provide a basic GUI designer framework -- just load and add appropriate connections..

* GoGi is a "standard" *retained-mode* (scenegraph-based) GUI, as compared to *immediate-mode* GUIs such as [Gio](https://gioui.org). As such, GoGi automatically takes care of everything for you, but as a result you sacrifice control over every last detail. Immediate mode gives you full control, but also the full burden of control -- you have to code every last behavior yourself. In GoGi, you have extensive control through styling and closure-based "callback" methods, in the same way you would in a standard front-end web application (so it will likely be more familiar to many users), but if you want to do something very different, you will likely need to code a new type of Widget, which can be more difficult as then you need to know more about the overall infrastructure. Thus, if you are likely to be doing fairly standard things and don't feel the need for absolute control, GoGi will likely be an easier experience.
Expand Down
2 changes: 1 addition & 1 deletion content/en/docs/grid/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ The simple Go install command should work, for modules mode:
$ go get github.com/goki/grid/cmd/grid
```

See [GoKi Install](https://github.com/goki/gi/wiki/Install) for more information and prereqs for different platforms -- if you encounter any difficulties, ensure that GoKi works first.
See [Goki Install](https://github.com/goki/gi/wiki/Install) for more information and prereqs for different platforms -- if you encounter any difficulties, ensure that Goki works first.

Exporting PNG and PDF depends on https://inkscape.org -- on the Mac you need to make a link to `/usr/local/bin` and likewise for Linux:

Expand Down
Loading

0 comments on commit 5be3925

Please sign in to comment.