# GoCity
**Repository Path**: hrx520/GoCity
## Basic Information
- **Project Name**: GoCity
- **Description**: GoCity 用于可视化展示 Go 项目的源代码
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: https://www.oschina.net/p/gocity
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 15
- **Created**: 2020-09-14
- **Last Updated**: 2021-11-03
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
[](https://github.com/rodrigo-brito/gocity/actions)
[](https://travis-ci.org/rodrigo-brito/gocity)
[](https://codecov.io/gh/rodrigo-brito/gocity)
[](https://goreportcard.com/report/github.com/rodrigo-brito/gocity)
[](https://godoc.org/github.com/rodrigo-brito/gocity)
Available here: https://go-city.github.io
Research 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.
## Private Repositories / Localhost
Install gocity:
- `go get -u github.com/rodrigo-brito/gocity`
Open a local project:
- `gocity open github.com/example/my-project`
## UI / Front-end
The 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/)