Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rodrigo-brito/gocity
:bar_chart: Code City metaphor for visualizing Go source code in 3D
https://github.com/rodrigo-brito/gocity
go golang hacktoberfest react visualization
Last synced: 26 days ago
JSON representation
:bar_chart: Code City metaphor for visualizing Go source code in 3D
- Host: GitHub
- URL: https://github.com/rodrigo-brito/gocity
- Owner: rodrigo-brito
- License: mit
- Created: 2018-09-02T12:17:56.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2023-12-18T22:53:42.000Z (11 months ago)
- Last Synced: 2024-09-26T21:43:45.297Z (about 1 month ago)
- Topics: go, golang, hacktoberfest, react, visualization
- Language: Go
- Homepage: https://go-city.github.io
- Size: 10.3 MB
- Stars: 1,799
- Watchers: 29
- Forks: 139
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-modernization - GoCity - is an implementation of the Code City metaphor for visualizing source code. GoCity represents a Go program as a city, as follows: (Visual / Datbase to Struct)
- awesomeLibrary - gocity - ๐ Code City metaphor for visualizing Go source code in 3D (่ฏญ่จ่ตๆบๅบ / go)
- go-awesome - GoCity - 3D display city (Open source library / Charts)
- hub - ้กน็ฎ
- awesome-list - gocity - brito | 1585 | (Go)
- awesome-golang-repositories - gocity
- awesome-made-by-brazilians - GoCity - brito](https://github.com/rodrigo-brito) (Uncategorized / Uncategorized)
README
[![Actions Status](https://github.com/rodrigo-brito/gocity/workflows/tests/badge.svg)](https://github.com/rodrigo-brito/gocity/actions)
[![codecov](https://codecov.io/gh/rodrigo-brito/gocity/branch/master/graph/badge.svg)](https://codecov.io/gh/rodrigo-brito/gocity)
[![Go Report Card](https://goreportcard.com/badge/github.com/rodrigo-brito/gocity)](https://goreportcard.com/report/github.com/rodrigo-brito/gocity)
[![GoDoc](https://godoc.org/github.com/rodrigo-brito/gocity?status.svg)](https://godoc.org/github.com/rodrigo-brito/gocity)
Available here: https://go-city.github.ioResearch Paper: [26th International Conference on Software Analysis, Evolution and Reengineering (SANER)](https://ieeexplore.ieee.org/document/8668008)
PDF Version: [ASERG Page](https://homepages.dcc.ufmg.br/~mtov/pub/2019-saner-gocity.pdf)
GoCity is an implementation of the Code City metaphor for visualizing source code. GoCity represents a Go program as a city, as follows:- Folders are districts
- Files are buildings
- Structs are represented as buildings on the top of their files.## Structures Characteristics
- The Number of Lines of Source Code (LOC) represents the build color (high values makes the building dark)
- The Number of Variables (NOV) correlates to the building's base size.
- The Number of methods (NOM) correlates to the building height.
## Installation- `go install github.com/rodrigo-brito/gocity@latest`
- Or just head to the [releases](https://github.com/rodrigo-brito/gocity/releases) page and download the latest version for you platform.## Usage:
- Online: https://go-city.github.io
- Commands
- `gocity server` - Start server
- `gocity open ` - Open a specific Github project from github
- `gocity open ./my-project` - Open a local directory
## UI / Front-endThe UI is built with React and uses [babylon.js](https://www.babylonjs.com/) to plot 3D structures. The front-end source code is available in the [front-end](https://github.com/rodrigo-brito/gocity/tree/front-end) branch.
### Related Works
- [Code City](https://wettel.github.io/codecity.html) by [Richard Wettel](https://twitter.com/richardwettel)
- [JS City](https://github.com/ASERG-UFMG/JSCity/wiki/JSCITY) by [Marcus Viana](https://github.com/malilovick).This tool makes part of a scientific research developed at Federal University of Minas Gerais (UFMG)
Student: [Rodrigo Brito](https://github.com/rodrigo-brito)
Advisor: [Marco Tulio Valente](https://homepages.dcc.ufmg.br/~mtov/)