tp

User Guide

Contents

Introduction | Return to Contents

Welcome to the SysLib User Guide: your all-in-one document to learn how to use SysLib to manage your work and responsibilities as a librarian.

Our user guide is for every system librarian whether you’re a beginner, novice, or expert in using a CLI library management software.

From viewing, adding, searching, and many more, SysLib provides all the features you need to optimize your work from hours to seconds. In no time, you will be typing intuitive commands to manage your library resources and upcoming events!

Without further ado, let’s get started with how to navigate the guide!

How to Use the User Guide

Information about how to use the guide (e.g. how to navigate the document, meaning of icons and formatting used)

Important pointers to take note of:

  1. Format for Commands:
    • Capital letters - placeholders for your input
    • Small letters - exact commands to enter
    • / - indicates the type of information you are entering
    • [] - optional arguments
  2. Recommended Terminals

The following table lists down the operating systems and their respective terminals that Syslib CLI has been tested on to work.

Operating System Version Recommended Terminal
Microsoft Windows Windows 10 2004 and above Windows Terminal (User Guide)
Apple macOS macOS 10.15 Catalina and above Terminal (User Guide)
Ubuntu Linux Ubuntu 20.04.3 (LTS) and above Bash Terminal (User Guide)

⚠️ IMPORTANT:

If your operating system is not listed in the table above, it means our application has not been tested on it. We therefore cannot guarantee that the application will work as intended. We highly encourage you to use one of the recommended operating systems in the table above. We apologise for any inconvenience caused.

Quick Start | Return to Contents

  1. Make sure that you have Java 11 or above installed on your computer.
  2. Download the latest release of Syslib.jar
  3. Copy the Syslib.jar file into a folder on its own.
  4. Open a command terminal, type cd <FILE_DIRECTORY>, where <FILE_DIRECTORY> refers to the directory to the Syslib.jar file.
  5. Run the following command: java -jar Syslib.jar. You should see the following welcome screen.
____________________________________________________________
Data directory does not exist. Creating now...
Storage file does not exist. Creating now...
Loaded 0 resources and 0 events!
____________________________________________________________
             .....................                  
          -##@*+*@*++++++++++#@++##                 
         .@. @-=%=            *#-+%                 
         :@  @+-  :----------. .=#%                 
         :@  @.  *%----------@-  =%                 
         :@  @.  #*          @=  =%                 
         :@  @.  #*          *:  :+                 
         :@  @.  *%-----.  .=+****+-.               
         :@  @.   :-----.-#*-.   .:-*#-             
         :@  @.        .%+.     .@*#+.*%.           
         :@  @:        %=       %*  +@.=%           
         :@  @*#*.    -@      *###***+. @-          
         :@ .@:.=@... -@ .+*#*####      @-          
         :@#*++++++++. %=.%+  +#       +%           
         :@. =++++++++-.%*.+%*@.      *%.           
          %+  ........   =#*-::   .-*%=             
           =*************. .=+****+-.               
 ____            _     _ _        ____ _     ___    
/ ___| _   _ ___| |   (_) |__    / ___| |   |_ _|   
\___ \| | | / __| |   | | '_ \  | |   | |    | | 
 ___) | |_| \__ \ |___| | |_) | | |___| |___ | |  
|____/ \__, |___/_____|_|_.__/   \____|_____|___| 
       |___/                                        

Hello! What would you like to do?
____________________________________________________________

Features | Return to Contents

Syslib CLI allows System Librarians to create Resources (Books, Magazines, Newspapers, CDs, eBooks, eMagazines, eNewspapers) as well as Events.

Managing Your Resources and Events with Ease

Our intuitive system ensures that you never lose track of your valuable resources and events. Here’s how it works:

📁 Automatic Saving on Exit

> exit
Thanks for using SysLib! We have saved the current resources and events.
See you next time!
____________________________________________________________

🔄 Seamless Loading on Startup

____________________________________________________________
Data directory exists.
Storage file exists.
Loaded 2 resources and 1 events!
____________________________________________________________

📍 File Location

Resources

Add a Listing: add | Return to Contents

Adding New Resources to Your Library Inventory

Easily expand your library’s collection with our streamlined process for adding new resources. Here’s everything you need to know:

Resource Tags - Identify Your Resources

Choose the right tag to classify each new addition:

Electronic Versions

Status Types - Keep Track of Availability Set the status to keep your inventory organized:

📚 Note:

Default Status

ISBN requirements

Use of Slash (‘/’)

Quick Tips

The specific commands for each resource types can be seen below:

Add Book

Format: add /i ISBN /t TITLE /a AUTHOR /tag b [/g GENRE /s STATUS]

Example input:

add /i 9780763630189 /t Frankenstein /a Mary Shelley /tag b
add /i 9780763630188 /t Moby Dick /a Herman Melville /tag b /g Adventure, Fiction
add /i 9780763630187 /t Harry Squatter /a J.K. /tag b /g History /s lost

Example output:

This book is added:
[B]  ID: 3 Title: Harry Squatter ISBN: 9780763630187 Author: J.K. Genre: History Status: LOST Received Date: 11 Nov 2023
____________________________________________________________

📚 Note:

Add eBook

Format: add /i ISBN /t TITLE /a AUTHOR /tag eb /l LINK [/g GENRE /s STATUS]

Example input:

add /i 9780763630189 /t Frankenstein /a Mary Shelley /tag eb /l frankenstein.com
add /i 9780763630188 /t Moby Dick /a Herman Melville /tag eb /l www.mobyd.com /g Adventure, Fiction
add /i 9780763630187 /t Harry Squatter /a J.K. /tag eb /l www.jk.com/harrysquatter /g History /s lost

Example output:

Attention: Status is not stated. Status set to default: AVAILABLE.
This e-book is added:
[EB]  ID: 2 Title: Frankenstein ISBN: 9780763630189 Author: Mary Shelley Genre: - Link: frankenstein.com
____________________________________________________________

📚 Note:

Add CD

Format: add /i ISBN /t TITLE /c CREATOR /ty TYPE /tag cd [/s STATUS]

Example input:

add /i 9780763630189 /t Frankenstein /c Mary Shelley /ty Audio Book /tag cd
add /i 9770763630236 /t Mayday /c Kim Bondi /ty Video Recording /tag cd /s borrowed
add /i 9760763630369 /t Performing Arts in Singapore /c Evelyn Lim /ty Oral Interview /tag cd /s available

Example output:

This CD is added:
[CD]  ID: 8 Title: Mayday ISBN: 9770763630236 Creator: Kim Bondi Type: Video Recording Status: BORROWED
____________________________________________________________

Add Magazine

Format: add /i ISBN /t TITLE /b BRAND /is ISSUE /tag m [/s STATUS]

Example input:

add /i 9781234567913 /t Tech Trends /b Wired Tech /is Volume 22, Issue 3 /tag m
add /i 9781234567944 /t Cozy Living /b Better Homes Publishing /is Home Edition, May 2023 /tag m /s LOST
add /i 9781234567951 /t Market Movers /b Forbes Publications /is Quarterly Report, Q2 2023 /tag m /s BORROWED

Example output:

This magazine is added:
[M]  ID: 11 Title: Cozy Living ISBN: 9781234567944 Brand: Better Homes Publishing Issue: Home Edition, May 2023 Status: LOST
____________________________________________________________

Add eMagazine

Format: add /i ISBN /t TITLE /b BRAND /is ISSUE /tag em /l LINK [/s STATUS]

Example input:

add /i 9781234567913 /t Tech Trends /b Wired Tech /is Volume 22, Issue 3 /tag em /l www.wiredtech.com/techtrends
add /i 9781234567944 /t Cozy Living /b Better Homes Publishing /is Home Edition, May 2023 /tag em /l www.cozyliving.net /s lost
add /i 9781234567951 /t Market Movers /b Forbes Publications /is Quarterly Report, Q2 2023 /tag em /l forbes.com /s available

Example output:

This e-magazine is added:
[EM]  ID: 15 Title: Market Movers ISBN: 9781234567951 Brand: Forbes Publications Issue: Quarterly Report, Q2 2023 Link: forbes.com
____________________________________________________________

Add Newspaper

Format: add /i ISBN /t TITLE /p PUBLISHER /ed EDITION /tag n [/s STATUS] Example input:

add /i 9730763630288 /t City Herald /p Metro Media Group /ed Morning Edition, March 15 2023 /tag n
add /i 9730763630277 /t Sports Daily /p Sports Press International /ed Daily Sports Wrap, March 15 2023 /tag n /s lost
add /i 9730763630266 /t Community Chronicle /p Local News Network /ed Weekly Community News, March 13, 2023 /tag n /s available

Example output:

Attention: Status is not stated. Status set to default: AVAILABLE.
This newspaper is added:
[N]  ID: 16 Title: City Herald ISBN: 9730763630288 Publisher: Metro Media Group Edition: Morning Edition, March 15 2023 Status: AVAILABLE

Add eNewspaper

Format: add /i ISBN /t TITLE /p PUBLISHER /ed EDITION /tag en /l LINK [/s STATUS]

Example input:

add /i 9730763630288 /t City Herald /p Metro Media Group /ed Morning Edition, March 15 2023 /tag en /l https://www.cityherald.com/march15-2023
add /i 9730763630277 /t Sports Daily /p Sports Press International /ed Daily Sports Wrap, March 15 2023 /tag en /l dailysports.com /s available
add /i 9730763630266 /t Community Chronicle /p Local News Network /ed Weekly Community News, March 13, 2023 /tag en /l www.lcn.com/news/031323 /s available

Example output:

This e-newspaper is added:
[EN]  ID: 20 Title: Sports Daily ISBN: 9730763630277 Publisher: Sports Press International Edition: Daily Sports Wrap, March 15 2023 Link: dailysports.com
____________________________________________________________

Delete a Listing: delete | Return to Contents

Deletes the resource with the specified ID from the library inventory. You can find the ID using the list command.

Format: delete /id ID

Example input:

delete /id 1

Example input:

Looking for ID: 1...
This resource is removed: 
[B]  ID: 1 Title: Moby Dick ISBN: 9780763630188 Author: Herman Melville Genre: Adventure, Fiction Status: LOST
____________________________________________________________

List All Items: list | Return to Contents

The list command displays every resource in the library along with their details and categorized by their type Book, Magazine,CD, or Newspaper, giving you a quick and neat overview of all the resources in one place.

Looking for a more specific list? list also offers you the capability to filter for a specific tag, genre, or status, generating a tailored list for your needs.

Format: list [/tag TAG /g GENRE /s STATUS]

📚 Note:

Potential Issues:

You may face an issue where you are unable to see the list, or it’s difficult to read the table due to the display alignment. Kindly click here to jump to the Known Issues section to solve any issues regarding the list.

Example input:

list
list /tag B
list /g Thrill
list /s Available
list /tag B /g Fiction
list /tag B /g Fiction /s Available

Example output:

ExampleOutput

Find Specific Listings: find | Return to Contents

Find What You Need, Fast!

Our advanced search capabilities make it easy to locate the resources you need. Here’s how you can make the most out of our search tool:

📚 Note:

Quick Tips

Discover exactly what you’re looking for, effortlessly!

Format: find [/t TITLE OR /i ISBN OR /a AUTHOR/PUBLISHER/BRAND/CREATOR OR /id ID]

Example input:

find /t Moby Dick
find /i 9780763630188
find /a J. K. Rowling
find /id 123456789
find /id 123456789 /i 9780763630188 
find /a Vogue

Example output: img.png

Edit a Listing: edit | Return to Contents

We all know the horror of making a typo and having to delete and add a resource again—it’s absolutely dreadful.

Fear not! Update a resource’s details using the edit command and fix your typos in a flash.

Format: edit /id ID /argumentname ARGUMENT [/argumentname2 ARGUMENT2..]

📚 Note:

Argument Names:

Argument names differ based on resource type. The table below shows the argument names you can enter for each resource type.

Type Argument Names Notes
Book
eBook
/t TITLE
/a AUTHOR
/g GENRES
/s STATUS
/l LINK
/i ISBN
/g GENRES:
If you’re inputting multiple genres, separate them by with comma ,.

For example: /g Horror, Fantasy
/l LINK:
For eBook only.
Magazine
eMagazine
/t TITLE
/b BRAND
/is ISSUE
/s STATUS
/l LINK
/i ISBN
/l LINK:
For eMagazine only.
Newspaper
eNewspaper
/t TITLE
/p PUBLISHER
/ed EDITION
/s STATUS
/l LINK
/i ISBN
/l LINK:
For eNewspaper only.
CD /t TITLE
/c CREATOR
/ty TYPE
/s STATUS
/i ISBN
 

For example, if you would like to update a eBook, you can edit the attributes given under the Argument Names column, that is the title, author, genre, status, link, and isbn.

Example input:

edit /id 1 /t NEW_TITLE
edit /id 1 /t NEW TITLE /a NEW AUTHOR /g Horror, Fiction /s LOST /i 1231231231234
edit /id 2 /c NEW CREATOR /ty NEW TYPE
edit /id 3 /b NEW BRAND /is NEW ISSUE
edit /id 4 /p NEW PUSBLISHER /ed NEW EDITION

Example output:

Successfully updated! Your updated resource: 

[B]  ID: 3 Title: Mary ISBN: 123 Author: John Genre: Horror, Adventure Status: LOST
____________________________________________________________

Events

📚 Note:

Event Adding: eventadd | Return to Contents

📚 Note:

Adds an event to the database.

Format: eventadd /t TITLE /date DATE [/desc DESCRIPTION]

Example input:

eventadd /t Fan meetup for xxx /date 11 Jan 2010
eventadd /t Meet and Greet for xxx /date 10 Jan 2010 /desc buffet style

Example output:

Event inserted at: 0
0: Fan meetup for xxx | 11 Jan 2010 | null
____________________________________________________________

Event Listing: eventlist | Return to Contents

Displays all events in the database.

Format: eventlist

Example input:

eventlist

Example output:

This is the current event list:
0: Meet and Greet for xxx | 10 Jan 2010 | buffet style
1: Fan meetup for xxx | 11 Jan 2010 | null
____________________________________________________________

Event Delete: eventdelete | Return to Contents

📚 Note:

Deletes an event from the database based on the index provided.

Format: eventdelete /id INDEX

Example input:

eventdelete /id 0

Example output:

This event is removed:
Meet and Greet for xxx | 10 Jan 2010 | buffet style
____________________________________________________________

Event Edit: eventedit | Return to Contents

📚 Note:

Edits attributes of an event based on information provided.

Format: eventedit /id INDEX [/t TITLE /date DATE /desc DESCRIPTION]

Example input:

eventedit /id 2 /t NEW TITLE
eventedit /id 0 /t NEW TITLE /date 23 Jan 2024 /desc NEW DESCRIPTION

Example output:

Event edited successfully. New event details:
0: NEW TITLE | 23-01-2024 | NEW DESCRIPTION
____________________________________________________________

Summary: summary | Return to Contents

Provide a summary of resources added and upcoming 3 events

Format: summary

Example input:

summary

Example output

Summary of Resources:
Total Resources: 26
Total Books: [████████████████] 12
Total CDs: [███] 2
Total Magazines: [██████] 4
Total E-Books: [█] 1
Total E-Magazines: [████] 3
Total Newspapers: [███] 2
Total E-Newspapers: [███] 2

Summary of Events:
Total Events: 7
Upcoming Events (Next 3):
1. Storey telling session | 21 Dec 2023 | null
2. Maintenance | 21 Dec 2023 | null
3. New Year | 01 Jan 2024 | null
____________________________________________________________

Exiting the Program : exit | Return to Contents

Exits the program, all data in resource list and event list will be saved to a storage file.

Format: exit

Example:

> exit
Thanks for using SysLib! We have saved the current resources and events.
See you next time!
____________________________________________________________

Viewing Help : help | Return to Contents

Displays a list of available commands with examples and their syntax format.

Format: help

Example:

helpexampleoutput

FAQ | Return to Contents

Q: How do I download Java 11 on my computer?
A: Follow the guide here!

Q: How do I open command terminal?

A:

Q: What should I do if I encounter an error or bug?
A: Go to your github issue page and submit an issue including the following:

We will get back to you as quickly as possible!

Known Issues | Return to Contents

List Table looks messy or unable to see the full details: [Return to list feature]

Upon executing list, you may encounter an issue where the table is out of alignment:

ListProblem.png

This issue is due to the window size of your command line terminal and occurs when you have long details in your resources.

Solutions:

You can try any of the following solutions to fix this issue:

Command summary | Return to Contents

Action Command
Add Book add /i ISBN /t TITLE /a AUTHOR /tag b [/g GENRE /s STATUS]
Add eBook add /i ISBN /t TITLE /a AUTHOR /tag eb /l LINK [/g GENRE /s STATUS]
Add CD add /i ISBN /t TITLE /c CREATOR /ty TYPE /tag cd [/s STATUS]
Add Magazine add /i ISBN /t TITLE /b BRAND /is ISSUE /tag m [/s STATUS]
Add eMagazine add /i ISBN /t TITLE /b BRAND /is ISSUE /tag em /l LINK [/s STATUS]
Add Newspaper add /i ISBN /t TITLE /p PUBLISHER /ed EDITION /tag n [/s STATUS]
Add eNewspaper add /i ISBN /t TITLE /p PUBLISHER /ed EDITION /tag en /l LINK [/s STATUS]
Delete Listing delete /id <id of listing>
Listing All Items list [/tag <type of item> /g <genre of item> /s <status of item>]
Find Specific Listing find [/t <title of listing> OR /i <ISBN of item> OR /a AUTHOR OR /id ID]
Edit a Listing edit /id ID /argument1 <ARGUMENT1> [/argument2 <ARGUMENT2>]...
Event Add eventadd /t TITLE /date DATE [/desc DESCRIPTION] (Format for date DD-MM-YYYY)
Event Delete eventdelete /id INDEX
Event Listing eventlist
Event Edit eventedit /id INDEX [/date DATE /desc DESCRIPTION](Format for date DD-MM-YYYY)
Summary summary
View Help help
Exit exit