Skip to content

Releases: joshmode/ip

Bibi v0.3.1

Choose a tag to compare

@joshmode joshmode released this 18 Sep 08:32
59c31a2

Bibi v0.3.1 — delete, and a tidy-up

A small release on top of v0.3. One new way to say something you could
already say, and a round of corrections behind the scenes.

New since v0.3

  • delete now works anywhere remove does. They are the same
    command under two names, so delete 2 and remove 2 do the same
    thing. Whichever you type is the one Bibi uses when it answers: ask
    for delete without a number and it says so in those words, rather
    than pointing you at a command you did not type. Capitalization does
    not matter, and undo reverses either.

Fixed

  • The command summary in the user guide rendered with a broken row on
    the published site.
  • The help listing put the removal entry out of line with every other
    command above and below it.

Unchanged

Everything else behaves exactly as in v0.3, and save files from v0.2 and
v0.3 load without conversion.

Running it

Java 25 required. Put the JAR in a folder of its own and run:

java -jar bibi.jar

For the text interface:

java -cp bibi.jar bibi.Bibi

The JAR bundles graphics libraries for Windows, Linux (x86-64) and Apple
Silicon macOS. On an Intel Mac the window will not open — use the text
interface, which needs no graphics libraries.

Bibi v0.3

Choose a tag to compare

@joshmode joshmode released this 15 Sep 14:49
769c286

Bibi v0.3 — the graphical release

Bibi now has a window. The text interface it grew up with is still in the same
JAR, and both keep their tasks in the same file, so nothing is lost by switching
between them.

New since v0.2

  • A GUI, in a cyberpunk palette: replies run the full width beside Bibi's
    portrait, your own lines sit as tinted chips, and anything that went wrong is
    styled apart so an error cannot be mistaken for a confirmation.
  • sort — puts the list in date order, earliest first and undated tasks last.
    The new order is saved, not just displayed.
  • undo — reverses the last change to the list: an add, a removal, a mark,
    an unmark or a sort. One step, this session only.
  • help --examples — the short command list stays short; worked examples,
    every accepted date format and the keyboard shortcuts sit behind the flag.
  • hi, hello, hey, thanks get a short reply without touching the list.
  • More ways to write a date: 21/12/2026, 21-12-2026, 21.12.2026,
    21 Dec 2026, 21 December 2026, 21/12/26, each with an optional 1800,
    18:00, 6 pm or 6:00 pm. Numeric dates are always day first. Dates now
    read 21 Dec 2026 rather than Dec 21 2026.
  • Keyboard conveniences in the window: Up and Down recall this session's
    commands without running them, a rejected command stays in the box for
    editing, and the transcript can be selected and copied.
  • Sharper rejections: every error names what was wrong, the correct form of
    the command, and an example.

Compatibility: save files from v0.2 load unchanged.

Running it

Java 25 required. Put the JAR in a folder of its own and run:

java -jar bibi.jar

For the text interface:

java -cp bibi.jar bibi.Bibi

The JAR bundles graphics libraries for Windows, Linux (x86-64) and Apple
Silicon macOS. On an Intel Mac the window will not open — use the text
interface, which needs no graphics libraries.

Bibi v0.2

Choose a tag to compare

@joshmode joshmode released this 31 Aug 17:59

Bibi is a command-line chatbot that keeps track of ToDos, deadlines, and events.

New since v0.1

  • find <keyword> searches task descriptions. The match ignores case and
    matches any part of a word, so find book finds Read Book. Results keep the
    number they have in the full list, so you can mark or remove one straight
    away.
  • Impossible dates are now refused. 2019-02-30 used to be quietly accepted
    as 28 February; it is now reported as an error.

Running it

Requires JDK 25.

  1. Copy bibi.jar into an empty folder.

  2. Open a command window in that folder.

  3. Run:

    java -jar "bibi.jar"
    

Bibi saves your tasks to data/bibi.txt inside that folder and restores them the
next time you start it. Nothing else needs to be installed — the JAR contains
everything it needs.

Commands

Command What it does
todo <description> Add a task with no date
deadline <description> /by <date> Add a task due by a date
event <description> /from <start> /to <end> Add a task that runs between two dates
list Show every task
find <keyword> Show tasks whose description contains the keyword
on <date> Show the deadlines due, and events running, on one date
mark <number> / unmark <number> Change whether a task is done
remove <number> Delete a task
help Show this list in the app
bye Exit

Dates are written as 2019-10-15 or 2/12/2019, each optionally followed by a
24-hour time, for example 2/12/2019 1800.

What is in this release

Everything up to the Level-9 increment: task types with real dates, automatic
saving and loading with recovery from a damaged save file, keyword search, an
OOP structure of Ui, Parser, Command, TaskList and Storage organised
into packages, a Gradle build enforcing the SE-EDU coding standard through
Checkstyle, and 81 JUnit tests alongside 17 scripted UI tests.

Bibi v0.1

Choose a tag to compare

@joshmode joshmode released this 31 Aug 17:38

Bibi is a command-line chatbot that keeps track of ToDos, deadlines, and events.

Running it

Requires JDK 25.

  1. Copy bibi.jar into an empty folder.

  2. Open a command window in that folder.

  3. Run:

    java -jar "bibi.jar"
    

Bibi saves your tasks to data/bibi.txt inside that folder and restores them the
next time you start it. Nothing else needs to be installed — the JAR contains
everything it needs.

Commands

Command What it does
todo <description> Add a task with no date
deadline <description> /by <date> Add a task due by a date
event <description> /from <start> /to <end> Add a task that runs between two dates
list Show every task
on <date> Show the deadlines due, and events running, on one date
mark <number> / unmark <number> Change whether a task is done
remove <number> Delete a task
help Show this list in the app
bye Exit

Dates are written as 2019-10-15 or 2/12/2019, each optionally followed by a
24-hour time, for example 2/12/2019 1800.

What is in this release

Everything up to the A-Jar increment: task types with real dates, automatic
saving and loading with recovery from a damaged save file, an OOP structure of
Ui, Parser, Command, TaskList and Storage organised into packages, a
Gradle build, and 73 JUnit tests.