https://github.com/owlinux1000/kproject
https://github.com/owlinux1000/kproject
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/owlinux1000/kproject
- Owner: owlinux1000
- Created: 2017-11-08T02:12:35.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-11-08T03:06:11.000Z (over 8 years ago)
- Last Synced: 2025-03-06T00:26:34.951Z (over 1 year ago)
- Language: Python
- Size: 28.3 KB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Kproject
kproject is initializing tool to clean repo and to wirte experiment code quickly.
## Tutorial
First, you use ```new``` command of kproject and create new some directories and files such.
```
$ kproject new mnist
$ cd mnist; ls -R
README.md dataset kproject.json model result src
./dataset:
./model:
./result:
./src:
lib main.py
./src/lib:
args.py
```
Here is recommend usage of these directories.
|name|recommend way to use|
|:--:|:--:|
|dataset|Save some dataset you use.|
|models|Save your models here.|
|results|Save your experiment results.|
|src|Save your codes.|
|src/lib|Save your codes of library.|
Here is description some files created automatically.
|name|description|
|:---:|:---:|
|README.md|You should know.|
|kproject.json|Automatically use with ```run``` command|
|src/main.py|You should write main codes here.|
|src/lib/args.py|This file says code of argument parser.|
Next, you use ```run``` command.
```
$ kproject run
[ INFO ] Run in `kproject.json`
```
Automatically run ```src/main.py``` with configuration of ```kproject.json```. Now, you implicitly used ```kprojec.json```, so let's see more in detail. Here is content of initial ```krpoject.json```.
```
{
"experiments": [
{
"cmd": "./src/main.py",
"exec?": true,
"args": {
}
}
]
}
```
If you added command line argument and use the argument, you should set value of ```args```.
## Useful kproject library
kproject has some useful library. Here is useful library I think.
### About argument parser
Already template argument parser has implemented by ```argparse``` in ```src/lib/args.py```. So you can easy to add some options. Then this file defined ```CONFIG```.
```
from lib.args import CONFIG
print(CONFIG['title'])
```
### About logging
Some logging class has already defined.
```
from kproject.log import MDLog
from kproject.utils import *
log = MDLog("experiment1") #=> create /result/experiment1.md
log.start()
log.info("some information")
log.info(h2("experiment 1-1")) #=> ## experiment 1-1
log.finish()
```
## Install
```
$ pip install git+https://github.com/owlinux1000/kproject
```