danslimmon / impulse Goto Github PK
View Code? Open in Web Editor NEWimpulse manages a stack of intentions as you're working
impulse manages a stack of intentions as you're working
skeleton out Frame and then make tests for it and then implement it.
implement
// Top returns the topmost Frame in f.
//
// If f has no children, f itself is returned.
func (f *Frame) Top() *Frame
If convenient, update other Frame tests to use this.
every 1 week on tuesday
every 1 week on wednesday
every 2 weeks on friday [needs a "starting"]
- could just interpret it as:
- do (weeks since unix epoch) % 2
- do it if that's 0
every 3 months on the 11th [needs a "starting"]
- this would be interpreted as:
- (months since unix epoch) % 3
- pick a quotient from [0,2] by …
idk. something like that. or just use a start date (that would be easier)
Schedule.Next(time.Time)
can be as dumb as "evaluate the criterion against every day starting from the given time until it matches."
another way it could work is: there's a log of upcoming recurrences, and each time a recurrence is processed, we add a new instance to that log
implement
// Render returns a string representation of the Frame.
func Render(f *Frame) string {...}
so they don't always have to construct their own
for any given task, impulse should be able to display it by itself, in a nice tree format
this'll be useful when we have task history and templates
e.g.
$ impulse status
_ 12
blue 4
pink 7
errands 2
maybe make it prettier later. sparkline? bar chart?
How should we avoid attention being lost between the tasks of modifying the stack and working on tasks?
Should there be an edit mode and a working mode? Should editing the stack put an "edit stack" task at the top? should text color change?
auto-collapse tasks that are not the ancestor or descendant of the selected task.
a collapsed tasks should say in parens how many children it has.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.