LoGiVi (git visualisation software)

Showcase your libraries, tools and other projects that help your fellow love users.
User avatar
rmcode
Party member
Posts: 454
Joined: Tue Jul 15, 2014 12:04 pm
Location: Germany
Contact:

LoGiVi (git visualisation software)

Post by rmcode »

LoGiVi is a git-repository visualisation tool inspired by Gource and currently in development. It was written from scratch using Lua and the LÖVE framework.

Image

If you find any bugs or have suggestions, please submit a ticket in the bug tracker or reply to this topic.

The code lives at github. You can grab the latest release here.
Last edited by rmcode on Thu Dec 22, 2016 11:43 pm, edited 11 times in total.
User avatar
qubodup
Inner party member
Posts: 775
Joined: Sat Jun 21, 2008 9:21 pm
Location: Berlin, Germany
Contact:

Re: LoGiVi

Post by qubodup »

Nice, didn't find how to change the resolution though.

lg.newImage("cat.png") -- made possible by lg = love.graphics
-- Don't force fullscreen (it frustrates those who want to try your game real quick) -- Develop for 1280x720 (so people can make HD videos)
User avatar
rmcode
Party member
Posts: 454
Joined: Tue Jul 15, 2014 12:04 pm
Location: Germany
Contact:

Re: LoGiVi

Post by rmcode »

Thanks for the video! LoGiVi visualized in LoGiVi ... that's pretty meta :awesome:
qubodup wrote:Nice, didn't find how to change the resolution though.
The resolution can be changed in the config file. More options and keyboard controls will be added in the next update.
User avatar
rmcode
Party member
Posts: 454
Joined: Tue Jul 15, 2014 12:04 pm
Location: Germany
Contact:

Re: LoGiVi

Post by rmcode »

Released version 0142

Code: Select all

# Version 0142 - 01/04/2015
### Additions
- Added more options to the logivi config file
- Added ui panel which can be moved, resized and scrolled which now contains the file list
- Added keybindings for camera controls to the config file
- Added option to hide commit authors in the config file
- Added keybinding to hide / unhide commit authors while LoGiVi is running
- Added option to set the speed at which commits are loaded in the config file
- Added option to set the width of the graph's edges in the config file
- Added option to set visibility of the file panel in the config file.
- Added keybinding to hide / unhide the file panel while LoGiVi is running
- Added labels which are drawn next to their respective node

### Fixes
- Fixed [#9](https://github.com/rm-code/logivi/issues/9) - Use radius of a node in mass calculation to make sure small nodes get pushed away far enough from bigger nodes
- Fixed [#8](https://github.com/rm-code/logivi/issues/8) - Prevent crash when trying to modify a file which doesn't exist (anymore)
- Fixed [#7](https://github.com/rm-code/logivi/issues/7) - Parents are removed correctly if they became empty after their last child had been removed
- Fixed [#6](https://github.com/rm-code/logivi/issues/6) - Avatars no longer rotate with the camera
- Fixed [#2](https://github.com/rm-code/logivi/issues/2) - Edges are removed correctly when a node is killed

### Other changes
- Updated message box when no git log is found and added a button to directly open the logivi wiki
- Improved graph layout by tweaking the mass calculation and charge of each node (edges should now be shorter which reduces the total size of the graph)
- Increased width of the graph's edges
- Replaced old movement code for authors with physical based approach (Closes [#5](https://github.com/rm-code/logivi/issues/5))
User avatar
rmcode
Party member
Posts: 454
Joined: Tue Jul 15, 2014 12:04 pm
Location: Germany
Contact:

Re: LoGiVi (git visualisation tool)

Post by rmcode »

Released version 0204:

Code: Select all

# Version 0204 - 2015/04/10

### Additions
- Added option to set the visibility of folder labels in the config file
- Added keybinding for hiding / unhiding folder labels while LoGiVi is running
- Added keybinding for pausing the automatic commit loading
- Added keybinding for manually loading the next commit
- Added keybinding for manually loading the previous commit
- Added keybinding for rewersing the graph creation (will run back until it reaches the first commit)
- Added keybinding for toggling fullscreen mode
- Added a timeline 
	- Indicates the current position of the log compared to the total commit history and shows the date of the currently indexed commit
	- Allows the user to quickly jump around in time (forward and backwards) while still rendering the full graph (Closes #10)
	- Can be hidden via keybinding or in the config file
- Added option to the config file which makes the visualisation start at the end of the git log (so it starts with the newest commit and moves towards the oldest)
- Added option to disable autoplay in the config file

### Fixes
- Fixed #18 - Prevents crash when no git log is found
- Fixed #15 - Files no longer overlap folder labels
- Fixed #13 - Links between authors and files will fade after a certain period of inactivity

### Other Changes
- Labels now use the folder's name instead of its path
- Config is now set to use the fullscreen mode by default
- Increased width of the "beam" between authors and files
- Files list is now sorted by the amount of files of the same extension (Closes [#14](https://github.com/rm-code/logivi/issues/14))
- Files now are marked with different colors depending on the applied git modifier (addition = green, modification = orange, deletion = red)
Last edited by rmcode on Mon Apr 20, 2015 9:45 am, edited 1 time in total.
User avatar
rmcode
Party member
Posts: 454
Joined: Tue Jul 15, 2014 12:04 pm
Location: Germany
Contact:

Re: LoGiVi (git visualisation tool)

Post by rmcode »

Released version 0312:

Code: Select all

# Version 0312 - 2015/04/20

### Additions
- Added keybinding for easy exiting
- Added selection screen
	- LoGiVi can keep track of multiple git logs
	- User can select which log to visualize on the selections screen
	- User can use "exit"-key to return to the selection screen
	- Log-selection list is scrollable with the mouse wheel
	- Added watch button which takes the user to the visualization of the selected log
- Added example log which will be written to the save directory if no logs are found
- Added option to specify a custom color for a file extension in the config file
- Git logs can now be created from within LoGiVi (Closes #3)
	- The user can specify the path to a local repository in the config file
	- LoGiVi will automatically create a log and load this repository on start
	- Information about the repository will be automatically written to the project folder (first commit, latest commit, total number of commits)
		- This currently doesn't work on Windows (See #28)
		- Information is displayed on the info panel
	- Added a refresh button to the SelectionScreen's info panel, which can be used to update the selected log
- Added function to sort files based on their extension while placing them around their folder node (Closes #22)
- Added button to SelectionScreen which opens the save directory
- Added tooltips
- Added custom colors for links between authors and files
- Added new high quality sprites (Closes #17)
- Added config file validation after it has been loaded (Closes #26)

### Fixes
- Fixed #33 - Ignore lines in config file which aren't formatted correctly 
- Fixed #32 - Resize Timeline when MainScreen is resized
- Fixed #31 - Directly pass the repository's path to the git command
- Fixed #30 - Ignore files when no changes were applied
- Fixed #29 - Reset the FileManager when MainScreen is closed
- Fixed #27 - Replace escape characters in the path to a repository
- Fixed #23 - Increase speed at which example is written to the harddrive
- Fixed #20 - Center the screen when it is resized in the config
- Fixed #19 - Allow multiple key bindings
- Fixed #5 - Improve author movement
- Fixed crash when the file list wasn't updated after creating the example

### Other Changes
- Updated the warning message which is displayed when no logs are found
- Logs are now located in the 'logs' subfolder in the save directory of LoGiVi
- Reduced time before authors start fading
- Config file now uses a custom format based on ini-files
User avatar
rmcode
Party member
Posts: 454
Joined: Tue Jul 15, 2014 12:04 pm
Location: Germany
Contact:

Re: LoGiVi (git visualisation software)

Post by rmcode »

Released version 0375

Code: Select all

Important: With this version LoGiVi now requires LÖVE Version 0.10.0 to run and will no longer work with LÖVE 0.9.2! LÖVE 0.10.0 has not yet been officially released, but can be compiled from the source. For more information check out the official LÖVE repository.

# Fixes
- Fixed #43 - Allow more printable characters as keys in config file
- Fixed #42 - Prevent crash with faulty info files
- Fixed #41 - Make sure paths lead to a valid git repository

# Other Changes
- Updated LoGiVi to run on LÖVE 0.10.0
Image
User avatar
Jack5500
Party member
Posts: 148
Joined: Wed Dec 07, 2011 8:38 pm
Location: Hamburg, Germany

Re: LoGiVi (git visualisation software)

Post by Jack5500 »

I really like it. But it would be great if the camera could auto adjust
User avatar
rmcode
Party member
Posts: 454
Joined: Tue Jul 15, 2014 12:04 pm
Location: Germany
Contact:

Re: LoGiVi (git visualisation software)

Post by rmcode »

Jack5500 wrote:I really like it. But it would be great if the camera could auto adjust
Thanks a lot :)

Having an auto-adjustable camera was on my todo list from day one, but last time I tried to implement it the math was a bit too intimidating and I got sidetracked. Will see what I can do!
User avatar
rmcode
Party member
Posts: 454
Joined: Tue Jul 15, 2014 12:04 pm
Location: Germany
Contact:

Re: LoGiVi (git visualisation software)

Post by rmcode »

The way I see it I have to do the following things:

- Calculate a rectangle around my graph
- Check if one of the sides is (noticeably) longer than the other
-> If it is the graph should be turned by 90 degrees
- Check if the graph's rectangle is smaller or bigger than the screen size
-> If it is smaller we need to zoom in
-> If it is bigger we need to zoom out
Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests