Code Monkey home page Code Monkey logo

mycolog's Introduction

screenshot of overview page screenshot of details page demo video

mycolog helps you keep an overview of your mushroom cultivation projects. It can store notes for each component, so that it's easier to remember which experiments succeeded and which failed. Genetics can be traced through family trees.

Installation

You can download the precompiled program from the releases page.

In order to get family trees displayed, you need to have Graphviz installed. You can download it here.

If you want to compile the program yourself, do this:

git clone [email protected]:codesoap/mycolog.git
cd mycolog
go install ./cmd/mycolog/
# The binary is now at ~/go/bin/mycolog.

Backups

mycolog stores all its data in a single file. On Windows you'll find it in your user profile folder, usually C:\Users\<your-username>\mycolog.sqlite3.

On Linux and other unix-like operating systems, you'll find it at XDG_DATA_HOME, if this environment variable is set. Otherwise it will be located at ~/.local/share/mycolog.sqlite3.

mycolog's People

Contributors

codesoap avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

mycolog's Issues

Data storage location

Would be great to include in the documentations where the log data is stored, so that users can make backup and/or delete/switch databases

unable to open database file: no such file or directory

Hi,
This seems like a great project and I'd like this to work for me. This is my first time working with go, so maybe I'm making a dumb mistake.

Since I'm on an M1 mac I can't use the amd64 pre-compiled program, so I'm compiling it myself. I followed the instructions on the readme and got a binary file out. However, when I try to execute the binary I get the error:

(base) chris@Chriss-MacBook-Pro bin % ./mycolog 
panic: unable to open database file: no such file or directory

goroutine 1 [running]:
main.init.0()
	/Users/chris/Documents/mycolog/cmd/mycolog/main.go:25 +0x78

Let me know if you need any more information.

Any help would be greatly appreciated. Thanks!

Duplicated token

I was looking through the token generation code and it didn't seem that there is a check for duplicated token (though the chance of a duplicate token being generated is very low) either in token.go or in modifications.go where the generateToken function is called. Maybe there is a check somewhere else that I just missed? If not, I'm working on an alternate token generation method where tokens are generated in sequence and you just read the last database entry token and increment it for the new token.

Would something like this work? Code attached as .txt file here. I haven't worked with .go nor sqlite databases before so don't know the code for pulling the last database entry. Is that easy to do in token.go file?

token_v2.txt

I implemented token with a length 2 since that already gives 1000 tokens and the shorter length makes labeling easier. But it isn't hard to increase the token length if needed.

Compilation notes

Sharing a compilation note for Windows OS FYI:

Need to first enable CGO in cmd prompt with command

set CGO_ENABLED=1

Also watch out to make sure your GO compiler and GCC compiler are the same bit depth (32 vs 64). I wasn't paying attention to that at first and had to reinstall a different version of GO compiler.

On an unrelated note โ€” I wanted the program to display all cultures by default without needing to manually set the 30 day filter, so I just changed line 110 in "queries.go" to

if filter.Since == nil {

It works perfectly for my purpose but is definitely a hack. If there is another easy way to flip the 30 day flag that is more "proper", please let me know ;)

Token generation

Awesome program. I'm posting a feature request - may be cool to allow the user to generate their own token for each entry since people may already have a naming system in place for their cultures, or perhaps a way to search the notes field when entering "parents" information. Not neccessary but might just be useful for some.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.