Table of contents:
A lots of development teams and whole companies facing the problem of planning their time in an efficient manner. This can have various reasons, like too many ongoing work or unclear requirements from customers. This ends up mostly in not having any clear vision at all which affects the daily development and will lead into bad software quality.
If there is no clear vision it is hard to develop a good roadmap. If there is no good roadmap it is hard to do the weekly planning.
This is where the seer comes in.
The project is currently under development which means there is no official release yet.
After the installation Seer can be used via the command line:
> seer
seer - A collaborative resource planning tool
Usage: seer COMMAND [--version]
Available options:
--version Print the current version
-h,--help Show this help text
Basic commands:
config Configure the environment
get Display one or many entities
create Create an entity
delete Delete an entity
edit Edit an entity
view View the Agenda
More info at <https://github.com/saschagrunert/seer>
The first thing to be done is to create a storage instance.
> seer create storage myLocalStorage
โ Done
Optionally it is possible to provide a remote location for the storage, which should be an empty git repository.
> seer create storage myStorage -r git@github.com:saschagrunert/seer-storage.git
โ Done
The get an overview about the available Storage instances simply execute:
> seer get storages
NAME REMOTE
myLocalStorage
myStorage git@github.com:saschagrunert/seer-storage.git
Per default, the last created storage is currently selected. The Config can be changed to select another Storage:
> seer config get
# STORAGE CREATED
1 myStorage 01.04.18 12:26
> seer config set-storage myLocalStorage
โ Done
> seer config get
# STORAGE CREATED
1 myLocalStorage 01.04.18 12:26
One of the basic entities of Seer are Resources. A Resource can be anything you can imagine which has an available amount of time. For example, team members are resources, but something like rental cars can be resources too. To create a resource called "me" which is available on Mondays from 10:00-18:00 and Fridays from 10:00-15:00, execute:
> seer create resource me -m 10-18 -f 10-15
โ Done
Generally, Resources have a name, an optionally description and a weekly availability. All options can be seen using the help:
> seer create resource -h
The option `-h` expects an argument.
Usage: seer create resource NAME [-d|--description DESCRIPTION]
[-m|--mon HH[:MM]-HH[:MM]]
[-t|--tue HH[:MM]-HH[:MM]]
[-w|--wed HH[:MM]-HH[:MM]]
[-h|--thu HH[:MM]-HH[:MM]]
[-f|--fri HH[:MM]-HH[:MM]]
[-s|--sat HH[:MM]-HH[:MM]]
[-u|--sun HH[:MM]-HH[:MM]]
Create a new Resource within the default Storage
Available options:
-d,--description DESCRIPTION
Optional description for the Resource
-m,--mon HH[:MM]-HH[:MM] Monday availability
-t,--tue HH[:MM]-HH[:MM] Tuesday availability
-w,--wed HH[:MM]-HH[:MM] Wednesday availability
-h,--thu HH[:MM]-HH[:MM] Thursday availability
-f,--fri HH[:MM]-HH[:MM] Friday availability
-s,--sat HH[:MM]-HH[:MM] Saturday availability
-u,--sun HH[:MM]-HH[:MM] Sunday availability
-h,--help Show this help text
All available Resources can be listed using:
> seer get resources
# NAME DESCRIPTION Mon Tue Wed Thu Fri Sat Sun CREATED
1 me 10:00-18:00 10:00-15:00 01.04.18 13:13
Resources can be edited too, like this:
> seer edit resource me -m 10-19 -f 10-15
โ Done
Now the Resource will be updated:
> seer get resources
# NAME DESCRIPTION Mon Tue Wed Thu Fri Sat Sun CREATED
1 me 10:00-19:00 10:00-15:00 01.04.18 13:13
The second base entities are Actions. An Action can be anything you can imagine which consumes time. For example, tasks are actions. To create an action called "myTask" which takes two hours time execute:
> seer create action myTask 2h
โ Done
Generally, Actions have a name, an optionally description and a duration. All options can be seen using the help:
> seer create resource -h
Usage: seer create action NAME DURATION [-d|--description DESCRIPTION]
Create a new Action within the default Storage
Available options:
DURATION The time the action will take, like '1y', '2w', '3d',
'4h', '5m'
-d,--description DESCRIPTION
Optional description for the Action
-h,--help Show this help text
All available Actions can be listed using:
> seer get actions
# NAME DESCRIPTION DURATION CREATED
1 myTask 2h 29.04.18 11:49
Actions can be edited too, like this:
> seer edit action myTask -r 1h
โ Done
Now the Action will be updated:
# NAME DESCRIPTION DURATION CREATED
1 myTask 1h 29.04.18 11:49
The last base entities are Schedules. Schedules glue Actions and Resource together to a real time plan. To create an Schedule between the Action "myTask" and the Resource "me", execute:
> seer create schedule now me myTask
Using calculated date range: 30.04.18 10:00 - 30.04.18 11:00
โ Done
Seer automatically selects the next available time slot for this task, if not already blocked by another task.
Generally, Schedules have a Resource, an Action and a starting date. All options can be seen using the help:
> seer create schedule -h
Usage: seer create schedule START RESOURCE ACTION
Create a new Schedule within the default Storage
Available options:
START The date and time when the Schedule starts
RESOURCE The name of the Resource which should be used
ACTION The name of the Action which should be done
-h,--help Show this help text
The start date parser supports absolute dates (in EU and US format) and relative dates (like "next monday", "now").
To get an overview about all Schedules, execute:
> seer get schedules
# FROM TO ฮฃ RESOURCE ACTION CREATED
1 30.04.18 10:00 30.04.18 11:00 1h me myTask 29.04.18 11:55
Alternatively a more agenda based view is available too:
> seer view
Mon [30.04] 10:00 โฆ myTask (me)
11:00 โฅ myTask (me)
Schedules can be edited too. So it should be possible to reschedule if the time slot is available, change the Action or even the Resource of the Schedule.
For example, to change the Schedule with the number 1
(referenced from the
seer get schedules
command) to the next 5th May:
> seer edit schedule 1 -s "7. may"
โ Done
Now the Schedule should be changed as intended:
> seer get schedules
# FROM TO ฮฃ RESOURCE ACTION CREATED
1 07.05.18 10:00 07.05.18 11:00 1h me myTask 29.04.18 11:55
To start hacking simply clone this repository and make sure that stack is installed. Then simply hack around and build the project with:
> stack build --file-watch
You want to contribute to this project? Wow, thanks! So please just fork it and send me a pull request.