Welcome to CapitalConnect: Your Portfolio Powerhouse!
Do you ever feel like your startup portfolio is a tangled mess of spreadsheets and endless documents? You're not alone. As a Venture Capital Portfolio Manager, juggling diverse investments across industries can be a complex challenge.
Our application is built for the aspiring venture capitalist! You are a professional on the lookout for the next Google. You are passionate about innovative and new technologies. Most importantly, you want to make your network your net-worth.
CapitalConnect is here to revolutionize your experience.
As a desktop app for managing startup investments and contacts, CapitalConnect is optimized for use via a Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, CapitalConnect can get your investment management done faster than traditional GUI apps.
We streamline and wrap everything in a sleek, easy to use platform. And by everything, we mean everything from
and much, much, more!
This user guide is your key to unlocking the full potential of the app. We'll walk you through every step, from effortlessly adding new investments to categorizing them by industry and funding stage. Forget the days of chasing down data – CapitalConnect empowers you to track your startup investments with ease.
Throughout this guide, we'll use clear, step-by-step instructions and helpful screenshots to ensure you master CapitalConnect in no time. So, buckle up and get ready to experience a smoother, more efficient way to manage your startup investments!
Ensure you have Java 11
or above installed in your Computer.
Download the latest capitalconnect.jar
from here.
Copy the file to the folder you want to use as the home folder for CapitalConnect.
Open a command terminal, cd
into the folder you put the jar file in, and use the java -jar capitalconnect.jar
command to run the application.
A GUI similar to the below should appear in a few seconds. Note how the app contains some sample data.
Type the command in the command box and press Enter to execute it. e.g. typing help
and pressing Enter will open the help window.
Some example commands you can try:
list
: Lists all startups.
add n/Pichu p/98765432 i/finance v/10 f/B e/pichuhr@example.com a/pichu street, block 123, #01-01
: Adds a startup called Pichu
to CapitalConnect.
delete 3
: Deletes the 3rd startup shown in the current list.
clear
: Deletes all startups.
exit
: Exits the app.
Refer to the Features below for details of each command.
Notes about the command format:
Words in UPPER_CASE
are the parameters to be supplied by the user.
e.g. in add n/NAME
, NAME
is a parameter which can be used as add n/capital connect
.
Items in square brackets are optional.
e.g n/NAME [t/TAG]
can be used as n/capital connect t/stealth startup
or as n/capital connect
.
Items with …
after them can be used multiple times including zero times.
e.g. [t/TAG]…
can be used as (i.e. 0 times),
t/stealth startup
, t/steath startup t/mvp
etc.
Parameters can be in any order.
e.g. if the command specifies n/NAME p/PHONE_NUMBER
, p/PHONE_NUMBER n/NAME
is also acceptable.
Extraneous parameters for commands that do not take in parameters (such as help
, list
, exit
and clear
) will be ignored.
e.g. if the command specifies help 123
, it will be interpreted as help
.
Currently selected startup card will appear blue.
e.g. in the image below, the currently selected startup is Allium
.
The key employees and notes displayed in the key employee box and note box belongs to the currently selected startup.
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.
help
Shows a message explaining how to access the help page.
Format: help
add
Adds a startup to the address book.
Format: add n/NAME p/PHONE_NUMBER i/INDUSTRY f/FUNDING_STAGE e/EMAIL a/ADDRESS v/VALUATION [t/TAG]…
We restrict v/VALUATION
to be a value between 0 and 5 Trillion. (Note that the most expensive company is only valued at around 3 Trillion as of April 10, 2024) For now, there is no way to specify currency denomination and values have to be input in integer form, I.e. To reflect a valuation of 10k
, the user must input 10000
. Additionally, the input value is truncated to 4 characters to allow for a clean display. I.e. A input of 101800
will be displayed as a 4 character 101k
, 123200010
to 123m
.
We only support traditional funding stages, hence inputs for FUNDING_STAGE
must be either S
, PS
, A
, B
or C
.
A
, B
, C
represents the respective funding series whilst PS
refers to pre-seed and S
refers to the seed stage. For more information about funding stages, see here!
[t/TAG]
variables are not length-limited. We also do not allow duplicate [t/TAG]
, however [t/TAG]
is case-sensitive, hence it is possible for a startup to have both the tags inDebt
and InDebt
at the same time.
Note that n/NAME
is currently case-sensitive in CapitalConnect, hence it is possible to have a startup with the name Google
and another with the name google
on CapitalConnect at the same time.
Tip: Use t/TAG
to store information that you need to easily view!
Tip: A startup can have any number of tags (including 0)
Tip: We understand that profitable investments requires prospecting a large range of industries. Hence, we have no restrictions on INDUSTRY
!
We let you decide how specific you want to define your startup categories by! If Tech
is too general, you can now use more specific industry categories, such as
web 3
, AI
, IAAS
!
Examples:
add n/Google p/98765432 e/sundarpichal@example.com v/100000 a/Menlo Park, block 123, #01-01 f/A i/tech
add n/FTX t/bankrupted e/sbf@example.com v/100 a/Newgate Prison p/1234567 t/criminal f/A i/web 3
list
Shows a list of all startups in the address book.
Format: list
edit
Edits an existing startup in the address book.
Format: edit INDEX [n/NAME] [p/PHONE] [v/VALUATION] [f/FUNDING_STAGE] [i/INDUSTRY] [e/EMAIL] [a/ADDRESS] [t/TAG]…
INDEX
. The index refers to the index number shown in the displayed startup list. The index must be a positive integer 1, 2, 3, …t/
without
specifying any tags after it.Examples:
edit 1 p/91234567 e/stripe@example.com
Edits the phone number and email address of the 1st startup to be 91234567
and stripe@example.com
respectively.edit 2 n/Stripe t/
Edits the name of the 2nd startup to be Stripe
and clears all existing tags.Tip: The same input rules for add
applies here! An invalid input will throw an error.
find n/
Finds startups with names that contain any of the given keywords.
Format: find n/NAME [MORE_NAME]
apple
will match Apple
.Jane Street
will match Street Jane
.Microsoft
will not match Microsofts
.OR
search).
e.g. Jane Street
will return Jane Technologies
, State Street
.Examples:
find f/
Finds startups that match the funding stages you are looking for.
Format: find f/FUNDING_STAGE [MORE_FUNDING_STAGES]
a
will match A
A B
will match B A
.FUNDING_STAGE
should be either S
, PS
, A
, B
or C
in order to find a matching startup.
A
, B
, C
represents the respective funding series whilst PS
refers to pre-seed and S
refers to the seed stage.Examples:
find i/
Finds startups with industries that match any of the given keywords.
Format: find i/INDUSTRY [MORE_INDUSTRIES]
ai
will match AI
.AI WEB3
will match WEB3 AI
.Examples:
delete
Deletes the specified startup from CapitalConnect.
Format: delete INDEX
INDEX
.Examples:
list
followed by delete 2
deletes the 2nd startup in the address book.find n/apple
followed by delete 1
deletes the 1st startup in the results of the find
command.Notes are useful in tracking additional information about your startup when making your investment decisions!
addnote
Adds a note to an existing startup in the address book.
Format: addnote INDEX NOTE
INDEX
. The index refers to the index number shown in the displayed startup list. The index must be a positive integer 1, 2, 3, …NOTE
field must be provided and cannot be empty.INDEX
field refers to the startups in the list currently displayed. If the INDEX
does not exist in the current startup list, the command will fail.Examples:
addnote 1 Secured Series A funding
Adds a note about securing Series A funding to the 1st startup.addnote 2 Launching new product in Q2
Adds a note about a product launch in Q2 to the 2nd startup.What's the difference between a NOTE
and a t/TAG
?
We aim for NOTE
to be used to store longer, more verbose details! Whereas t/TAG
should be used to store information that needs to be easy to reach and accessible!
Consider the storing the following: "The startup founder seems very passionate in his speech", storing this with t/TAG
may not be the best idea as it is verbose, and it might be information you don't need on hand.
However, if the founder's passion is something important to you, and you want the ability to know this detail about a startup
without clicking into it on the user interface, you could tag the startup with t/passionate
.
""
Tip: Use specific and concise notes to effectively capture important information about each startup.
editnote
Edits an existing note of a startup in the address book.
Format: editnote INDEX NOTE_INDEX NOTE
INDEX
refers to the position of the startup in the displayed startup list. It must be a positive integer (e.g., 1, 2, 3, ...) and a startup must exist corresponding to this index in the list.NOTE_INDEX
refers to the position of the note within the selected startup's list of notes. It must also be a positive integer. A Note must also exist in the index of note list belonging to the startup.NOTE
is the new text that will replace the existing note. This field must not be empty.Examples:
editnote 1 1 Revised Series A valuation
Edits the first note of the 1st startup to "Revised Series A valuation".editnote 2 2 Updated market expansion strategy
Edits the second note of the 2nd startup with updated expansion strategy details.Tip: Editing notes allows you to keep information about startups up to date with the latest developments.
deletenote
Deletes a note from an existing startup in the address book.
Format: deletenote INDEX NOTE_INDEX
NOTE_INDEX
from the startup specified by INDEX
. Both indexes refer to the index number of the startup in the currently displayed startup list and the individual note in the note list within that startup, respectively.Examples:
deletenote 1 1
Deletes the first note of the 1st startup.deletenote 2 2
Deletes the second note of the 2nd startup.Tip: Use the deletenote
command cautiously to ensure important notes are not accidentally removed.
Is there any better way to delete all notes quickly?
Currently, we do not support a feature allowing users to delete all their notes with a single command. However, we understand that this may be useful especially for keeping user storage clean. This will be a feature for a future iteration!
add-p
Format: add-p INDEX pn/NAME pe/EMAIL [pd/DESCRIPTION]…
INDEX
in CapitalConnect. The index refers to the index number shown in the startup list. The index must be a positive integer 1, 2, 3, …Caution: Detection of Duplicated Persons
Note that duplicated persons in one startup are detected by pe/EMAIL
. We assume that email is unique for every person.
In other words, we assume that it is possible to have 3 Johns in one company, and they all have different emails. Before adding a new person to the startup, always double-check their pe/EMAIL
to make sure that the person is not added already.
Also take note that we allow one person to work in multiple startups.
Example:
add-p 1 pn/John pe/johndoe@example.com pd/founder
Adds the founder of the first startup John into the company.add-p 1 pn/Amy pe/amybee@example.com
Adds Amy to the first startup.edit-p
PERSON_INDEX
of startup at index INDEX
. The index refers to the index number shown in the displayed key employees and startup list respectively. The index must be a positive integer 1, 2, 3, …pd/
without
specifying any descriptions after it.edit-p 1 1 pd/founder pd/founder
will have the same result as edit-p 1 1 pd/founder
.Format: edit-p INDEX PERSON_INDEX [pn/NAME] [pe/EMAIL] [pd/DESCRIPTION]…
Examples:
edit-p 1 1 pn/John pe/johndoe@example.com
Edits the name and email address of the 1st person in the 1st startup to be John
and johndoe@example.com
respectively.edit-p 2 1 pn/Amy pd/
Edits the name of the 1st person of the 2nd startup to be Amy
and clears all existing descriptions.Why am I not seeing the changes in the key employee box immediately?
If you do not see the changes immediately after editing a key employee in your startup, it means that the startup card containing your edited key employee is currently not selected.
The currently selected startup card will automatically get deselected after you are doing find
operations, however the information of the last selected startup will
still be displayed in the key employee box, which is why if you are performing person related operations afterward,
it may appear like the information in the key employee box are not being updated.
Rest assured, the information is updated. To ensure you see the updated information, simply click on your startup card after any person-related operation, i.e., add-p
, edit-p
, and delete-p
.
delete-p
PERSON_INDEX
from the startup at the specified INDEX
. Both indexes refer to the index number shown in the key employees list and startup list respectively. Both indexes must be positive integers 1, 2, 3, …Format: delete-p INDEX PERSON_INDEX
Examples:
delete-p 1 1
Deletes the 1st person of the 1st startup.delete-p 2 3
Deletes the 3rd person of the 2nd startup.Tip: Always click on the startup card after performing person-related operations to ensure you see the updated information.
clear
Clears all entries from CapitalConnect.
Format: clear
Caution: Irreversible Data Loss
The clear
command will permanently removes all startup entries from CapitalConnect and this action is irreversible.
Before using the clear command, always double-check to make sure that you absolutely intend to erase all data.
Tip: Use clear
command to clear up the sample data.
exit
Exits the program.
Format: exit
CapitalConnect data are saved in the hard disk automatically after any command that changes the data. There is no need to save manually.
CapitalConnect data are saved automatically as a JSON file [JAR file location]/data/addressbook.json
. Advanced users are welcome to update data directly by editing that data file.
If your changes to the data file makes its format invalid, CapitalConnect will discard all data and start with an empty data file at the next run. Hence, it is recommended to take a backup of the file before editing it.
Furthermore, certain edits can cause CapitalConnect to behave in unexpected ways (e.g., if a value entered is outside the acceptable range). Therefore, edit the data file only if you are confident that you can update it correctly.
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 CapitalConnect home folder.
preferences.json
file created by the application before running the application again.Action | Format, Examples |
---|---|
Add | add n/NAME p/PHONE_NUMBER f/FUNDING_STAGE v/VALUATION i/INDUSTRY e/EMAIL a/ADDRESS [t/TAG]… e.g., add n/Google p/22224444 e/larrypage@example.com a/123, menlo park, 1234665 t/SVbased i/Tech f/A v/10000 |
Clear | clear |
Delete | delete INDEX e.g., delete 3 |
Edit | edit INDEX [n/NAME] [p/PHONE_NUMBER] [v/VALUATION] [i/INDUSTRY] [f/FUNDING_STAGE] [e/EMAIL] [a/ADDRESS] [t/TAG]… e.g., edit 1 n/James Lee e/jameslee@example.com |
Find by Name | find n/NAME [MORE_NAMES] e.g., find n/apple |
Find by Funding Stage | find f/FUNDING_STAGE [MORE_FUNDING_STAGES] e.g., find f/A , find f/A B |
Find by Industry | find i/INDUSTRY [MORE_INDUSTRIES] e.g., find i/AI , find i/AI Robotics |
List | list |
Help | help |
Add Note | addnote INDEX NOTE e.g., addnote 1 Secured Series A funding |
Edit Note | editnote INDEX NOTE_INDEX NOTE e.g., editnote 1 1 Revised Series A valuation |
Delete Note | deletenote INDEX NOTE_INDEX e.g., deletenote 1 1 |
Add Person | add-p INDEX pn/NAME pe/EMAIL [pd/DESCRIPTION]… e.g., add-p 1 pn/John pe/johndoe@example.com pd/founder |
Edit Person | edit-p INDEX PERSON_INDEX [pn/NAME] [pe/EMAIL] [pd/DESCRIPTION]… e.g., edit-p 1 1 pn/john pe/johndoe233@example.com pd/founder |
Delete Person | delete-p INDEX PERSON_INDEX e.g., delete-p 1 1 |