Villefort-0.1.2.2: README.md
# Villefort
Villefort is a time managment system written in Haskell.
## Version 1.2.2
- Rewrote the weekly sorting by category algorithm so that it actually workds
- Fix weekly page error.
[default config](https://github.com/Chrisr850/Villefort/blob/master/src/Villefort/Config.hs)
# Home screen

# Add new todos

# Stats page

# To install
1. Install cabal (https://www.haskell.org/platform/)
2. In terminal or command prompt run `cabal install Villefort`.
3. and then `cabal run Villefort`.
4. You will be able to see the homescreen by typing localhost:3002 into your favorite browser.
## Configure your villefort
create a custom main method in ~.villefort/villefort.hs. Below is an example.
```haskell
module Main where
import Villefort
import Villefort.Definitions
import System.Random
import System.IO.Strict as S
main :: IO ()
main = villefort def {
daily = [floss,
calendar ],
weekly = defWeekly {
monday = [more,
dailyRef],
tuesday = [dailyRef],
wednesday = [more,
dailyRef],
thursday = [dailyRef],
friday = [more,
scan,
dailyRef]
},
showDatabase = True
}
floss = pure ["","floss","wellness"]
calendar = pure ["","check calendar","admin"]
scan = pure ["scan class notes","scan","admin"]
dailyRef = pure ["write a daily reflection on each class","reflect","admin"]
more = do
z <- S.readFile "/home/chris/.villefort/push" -- readfile to get # push ups
let num = read z :: Double
writeFile "/home/chris/.villefort/push" (show (num+0.3))
sets <- pushUps num
return $ [show sets,"push ups","fit"]
pushUps level = do
dubs <- mapM gen $ replicate 5 level :: IO [Double]
return $ map floor dubs
where gen x = randomRIO (x-(x/3),x+(x/3))
```
Then run ```Villefort --recompile```
the next time you run villefort it will run with your configuration.
The default configuration is located here https://github.com/Chrisr850/Villefort/blob/master/src/Villefort/Config.hs
## How to copy data between versions of Villefort.
Install the new version through cabal
Navigate to ~/.cabal
Navigate to share/
Navigate into your architecture folder mines x86_64-linux-ghc-7.10.3
You should now see different versions of Villefort
Villefort-0.1.1.0/
```
|-- data/
| |-- date
| |-- day
| |-- todo.db
|-- templates/
|-- js.js
```
Villefort-0.1.1.1/
```
|-- data/
| |-- date
| |-- day
| |-- todo.db
|-- templates/
|-- js.js
```
Just copy the data/todo.db from the old version into data/todo.db of the new version.
Then remember to rebuild Villefort if you have a custom build.
Villefort --recompile