User Guide
Welcome to BizBook – a tool designed to help students manage internship applications with speed and simplicity. BizBook streamlines your everyday tasks, such as tracking application statuses and managing deadlines, allowing you to organize important information in a fast, efficient way. By typing commands, you can quickly add, update, search, and handle your applications with minimal effort, making it a valuable companion for any busy student on an internship hunt.
How BizBook addresses the problem:
- BizBook exposes succinct commands for adding, editing, finding, filtering and sorting applications, so users can complete common tasks with a few keystrokes.
- By keeping data local and serialised as JSON, users retain full control of their data and can transfer or back it up easily.
- The combination of a CLI and a simple GUI gives both productivity (keyboard-first workflows) and visual clarity (cards, status bar and help window).
Background / comparison:
- How BizBook addresses the problem:
- Background / comparison:
- Quick start
-
Features
- Viewing help :
help - Adding an application:
add - Listing all applications :
list - Sorting applications :
sort - Editing an application :
edit - Finding applications by name :
find - Filtering applications by status and/or industry :
filter - Deleting an application :
delete - Clearing all entries :
clear - Exiting the program :
exit - Saving the data
- Editing the data file
- Viewing help :
- FAQ
- Known issues
- Command summary
Quick start
-
Ensure you have Java
17or above installed in your Computer.
Mac users: Ensure you have the precise JDK version prescribed here. -
Download the latest
.jarfile from here. -
Copy the file to the folder you want to use as the home folder for your AddressBook.
-
Open a command terminal,
cdinto the folder you put the jar file in, and use thejava -jar BizBook.jarcommand to run the application.
A GUI similar to the below should appear in a few seconds. Note how the app contains some sample data.

-
Let’s try typing these in order and see the result!
Step 1: Add your applications - First, let’s clear the sample data and add 3 new applications.
clearadd n/Google i/Technology a/SWE Intern t/Backend microservices e/careers@google.com s/Saved d/2024-12-31add n/DBS Bank i/Finance a/Data Analyst Intern t/Analytics team e/internships@dbs.com s/Saved d/2025-01-15add n/ByteDance i/Technology a/PM Intern t/TikTok team e/hr@bytedance.com s/Saved d/2024-12-20
Result: Your list now shows 3 applications, in the order you added them.
Step 2: Prioritize and update - You want to apply for the one with the earliest deadline first.
sort deadline
Result: The list immediately re-orders. ByteDance is now at Index 1. Let’s say you applied for it.
edit 1 s/Applied
Result: The ByteDance card at Index 1 updates its status to
Applied.Step 3: Filter and delete - Now you only want to see your “To-Do” list (status
Saved).filter s/Saved
Result: The list is filtered, hiding “ByteDance”. The status bar now says “2 applications listed”.
- DBS Bank
Looking at this filtered list, you decide you’re not interested in DBS Bank (Index 2).
delete 2
Result: The item at Index 2 of the current list (DBS Bank) is permanently deleted.
Step 4: Reset and final check - Finally, clear the filter to see all your remaining applications.
list
Result: The filter is cleared. You now see your remaining applications: ByteDance (Status:
Applied) and Google (Status:Saved).DBS Bankis gone.Step 5: Exit - Now that you have finished adding all your applications, you can now exit BizBook!
exit
-
Refer to the Features below for details of each command.
Features
Notes about the command format:
-
Words in
UPPER_CASEare the parameters to be supplied by the user.
e.g. inadd n/COMPANY_NAME,COMPANY_NAMEis a parameter which can be used asadd n/Google. -
Extraneous parameters for commands that do not take in parameters (such as
help,list,exitandclear) will be ignored.
e.g. if the command specifieshelp 123, it will be interpreted ashelp. -
Items in square brackets are optional.
e.gedit INDEX [n/COMPANY_NAME] [i/INDUSTRY] [a/JOB_ROLE] [e/EMAIL] [t/DESCRIPTION] [s/STATUS] [d/DEADLINE]can be used with or without the description. -
If you are using a PDF version of this document, be careful when copying and pasting commands that span multiple lines as space characters surrounding line-breaks may be omitted when copied over to the application.
Viewing help : help
Shows a message explaining how to access the help page.

Format: help
Adding an application: add
Adds a new internship application to BizBook.
Format: add n/COMPANY_NAME i/INDUSTRY a/JOB_ROLE t/DESCRIPTION e/EMAIL s/STATUS d/DEADLINE
Notes:
-
COMPANY_NAMEcan contain alphanumeric characters, spaces, and these special characters:& . - ' ,(e.g., AT&T, McDonald’s, Apple Inc., Coca-Cola) -
INDUSTRYmust be one of: Technology, Finance, Consulting, Healthcare, Marketing, Operations, Graphic Design -
STATUSmust be one of: Saved, Applied, Interviewing, Offer, Rejected. -
DEADLINEmust be in the format YYYY-MM-DD (e.g., 2024-12-31) - You can add multiple applications to the same company as long as they are for different job roles (e.g., Google SWE Intern and Google PM Intern are both allowed)
Examples:
add n/Google i/Technology a/SWE Intern t/Backend microservices e/careers@google.com s/Saved d/2024-12-31add n/DBS Bank i/Finance a/Data Analyst Intern t/Analytics team e/internships@dbs.com s/Applied d/2025-01-15-
add n/AT&T i/Technology a/Network Intern t/5G deployment e/careers@att.com s/Saved d/2024-12-20(company name with&) -
add n/McDonald i/Operations a/Management Trainee t/Store operations e/hr@mcdonalds.com s/Applied d/2025-01-10(company name with')
sample output from running add n/DBS Bank i/Finance a/Data Analyst Intern t/Analytics team e/internships@dbs.com s/Applied d/2025-01-15
Listing all applications : list
Shows a list of all internship applications in BizBook.
Format: list
sample output from running list
Sorting applications : sort
Note: After sorting, the list you see is the one affected by subsequent commands like
deleteoredit. For example,delete 1will delete the first application in the sorted list currently displayed.
Sorts all internship applications in the current list by the specified field.
Format: sort FIELD
Notes:
-
FIELDmust be one of:name,status, ordeadline - The field name is case-insensitive (e.g.,
sort NAMEworks the same assort name) - Sorting persists until you run another sort command with a different field
- Applications remain sorted even after adding, editing, or deleting entries
Examples:
-
sort name- Sorts applications alphabetically by company name -
sort status- Sorts applications by status in logical workflow order (Saved → Applied → Interviewing → Offer → Rejected) -
sort deadline- Sorts applications chronologically by deadline (earliest first)
Typical usage:
-
listfollowed bysort deadlineshows all applications sorted by deadline to help you prioritize upcoming applications. -
sort statushelps you see your application pipeline in logical progression order.
sample output from running sort deadline
Editing an application : edit
Edits the details of an existing internship application.
Format: edit INDEX [n/COMPANY_NAME] [i/INDUSTRY] [a/JOB_ROLE] [e/EMAIL] [t/DESCRIPTION] [s/STATUS] [d/DEADLINE]
Notes:
- Edits the application at the specified
INDEX(as shown in the current list). The index is 1-based. - At least one field to edit must be provided.
- Existing values will be overwritten by the new inputs.
-
COMPANY_NAMEcan contain alphanumeric characters, spaces, and these special characters:& . - ' , - Input for
INDUSTRYandSTATUSis case-insensitive (e.g.,i/technologyands/appliedare accepted). -
DEADLINEmust be in the format YYYY-MM-DD (e.g., 2024-12-31)
Examples:
edit 1 n/Google Singaporeedit 2 s/Interviewing d/2025-02-28edit 3 a/Quant Intern t/Global Markets desk
sample output from running edit 1 s/applied
Finding applications by name : find
Note: The results shown after a
findcommand form a list that can be used with commands likedeleteoredit. For example,delete 1will delete the first application in the current search results.
Finds and lists all applications whose company names contain any of the specified keywords.
Format: find KEYWORD [MORE_KEYWORDS]...
Notes:
- The search is case-insensitive (e.g.,
googlewill matchGoogle) -
Partial matches are allowed (e.g.,
Techwill matchTechCorp,FinTech, andTech Solutions) - The order of keywords does not matter (e.g.,
Bank DBSwill matchDBS Bank) - Only the company name field is searched - other fields like industry, job type, description, email, status, and deadline are not searched
- Applications matching at least one keyword will be returned (e.g.,
Google Microsoftwill return applications for both Google and Microsoft)
Examples:
-
find Googlereturns applications forGoogle,Google Singapore, andGoogleTech -
find DBS OCBCreturns applications forDBS Bank,OCBC, andDBS Group -
find TechreturnsTechCorp,FinTech,Tech Solutions, and any company with “Tech” in the name -
find MetareturnsMeta,Metaverse Inc, andMetaData Corp(partial matches work)
sample output from running find meta
Filtering applications by status and/or industry : filter
Filters and displays applications based on their status and/or industry. The filter does not modify the stored data, only affects what is displayed.
Format: filter [s/STATUS] [i/INDUSTRY]
Notes:
- At least one filter criterion must be specified - you can filter by status only, industry only, or both
- When both filters are specified, only applications matching both criteria will be shown (AND logic)
- The filter is case-insensitive (e.g.,
s/appliedands/APPLIEDboth work) -
STATUSmust be one of: Saved, Applied, Interviewing, Offer, Rejected -
INDUSTRYmust be one of: Technology, Finance, Consulting, Healthcare, Marketing, Operations, Graphic Design - Use
listto clear all filters and show all applications again
Examples:
-
filter s/Applied- Shows only applications with “Applied” status -
filter i/Technology- Shows only applications in the Technology industry -
filter s/Interviewing i/Finance- Shows applications that are both “Interviewing” status AND in Finance industry -
filter i/Healthcare s/Offer- Same as above (order doesn’t matter)
Typical usage:
-
filter s/Appliedfollowed bysort deadlineto see all applied positions sorted by their deadlines -
filter i/Technology s/Savedto see all saved Technology positions you haven’t applied to yet -
listto return to viewing all applications
sample output from running filter s/offer
Deleting an application : delete
Deletes the specified internship application.
Format: delete INDEX
- Deletes the application at the specified
INDEX. - The index refers to the number shown in the current list being displayed. This includes lists shown after using commands such as
find,filter, orsort. For example, after usingfind Google,delete 1deletes the first item in the search results you currently see, not the original unfiltered list. - The index must be a positive integer 1, 2, 3, …
Examples:
-
listfollowed bydelete 2deletes the 2nd application in the list. -
find Googlefollowed bydelete 1deletes the 1st application in the search results.
sample output from running delete 1
Clearing all entries : clear
Clears all entries from BizBook.
Format: clear
Exiting the program : exit
Exits the program.
Format: exit
Saving the data
Data are saved to disk automatically after any command that changes data. There is no need to save manually.
Editing the data file
Data are saved automatically as a JSON file [JAR file location]/data/addressbook.json. Advanced users may edit that file directly.
Furthermore, certain edits can cause the app to behave in unexpected ways (e.g., invalid values). Edit the data file only if you are confident you can update it correctly.
FAQ
Q: How do I transfer my data to another Computer?
A: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous AddressBook home folder.
Known issues
-
When using multiple screens, if you move the application to a secondary screen, and later switch to using only the primary screen, the GUI will open off-screen. The remedy is to delete the
preferences.jsonfile created by the application before running the application again. -
If you minimize the Help Window and then run the
helpcommand (or use theHelpmenu, or the keyboard shortcutF1) again, the original Help Window will remain minimized, and no new Help Window will appear. The remedy is to manually restore the minimized Help Window.
Command summary
| Action | Format, Examples |
|---|---|
| Add |
add n/COMPANY_NAME i/INDUSTRY a/JOB_ROLE t/DESCRIPTION e/EMAIL s/STATUS d/DEADLINE e.g., add n/Google i/Technology a/SWE Intern t/Backend microservices e/careers@google.com s/Saved d/2024-12-31
|
| Clear | clear |
| Delete |
delete INDEXe.g., delete 1
|
| Edit |
edit INDEX [n/COMPANY_NAME] [i/INDUSTRY] [a/JOB_ROLE] [e/EMAIL] [t/DESCRIPTION] [s/STATUS] [d/DEADLINE]e.g., edit 2 s/Interviewing d/2025-02-28
|
| Exit | exit |
| Filter |
filter [s/STATUS] [i/INDUSTRY] e.g., filter s/Applied, filter i/Technology, filter s/Interviewing i/Finance
|
| Find |
find KEYWORD [MORE_KEYWORDS]...e.g., find Google DBS
|
| Help | help |
| List | list |
| Sort |
sort FIELD e.g., sort name, sort status, sort deadline
|