Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[AY1920S1-CS2113T-F11-1] SpongeBob #41

Open
wants to merge 149 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 94 commits
Commits
Show all changes
149 commits
Select commit Hold shift + click to select a range
65f72a8
Add support for Gradle workflow
j-lum Aug 6, 2019
0112efe
Add sample checkstyle configuration
j-lum Aug 12, 2019
cfd6da7
Change file mode on `gradle` to be executable
j-lum Aug 18, 2019
6e6ace1
Merge pull request #12 from j-lum/gradle+x
j-lum Aug 18, 2019
a3ca5a4
Add configuration for console applications
j-lum Aug 20, 2019
7b60e81
Merge pull request #13 from j-lum/javaexec
j-lum Aug 21, 2019
4d70122
Merge branch 'gradle'
Tejasvas123 Aug 27, 2019
cf93bdb
added level 1 with indentation
Tejasvas123 Aug 28, 2019
daf02ba
added level 2
Tejasvas123 Aug 28, 2019
3615bf9
added Task.java
Tejasvas123 Aug 28, 2019
de750d7
Level-3
Tejasvas123 Aug 28, 2019
bd9590e
Added level-4 using inheritance
Tejasvas123 Aug 28, 2019
2284eef
Handled some errors related to Duke
Tejasvas123 Aug 28, 2019
adb987d
Trimmed code and completed Level-7
Tejasvas123 Aug 29, 2019
7723a5a
added date time specifications to Duke
Tejasvas123 Aug 29, 2019
88fe148
Add Delete Task feature
Tejasvas123 Sep 2, 2019
012481b
Test some basic input output cases for Duke
Tejasvas123 Sep 3, 2019
4c5401c
Add delete feature
Tejasvas123 Sep 3, 2019
55a62d3
Find tasks that match a keyword
Tejasvas123 Sep 3, 2019
fc479be
Resolve conflicts between level-6 and level-9
Tejasvas123 Sep 4, 2019
7794534
Improve OOP design and refactor code
Tejasvas123 Sep 4, 2019
74f77ce
Fix typo
Tejasvas123 Sep 4, 2019
09abe86
Improve style
Tejasvas123 Sep 5, 2019
34609c0
Handle some exceptions
Tejasvas123 Sep 5, 2019
c4bb234
Add java doc and handle checkstyle errors
Tejasvas123 Sep 10, 2019
a5f89b3
Add some JUnit Testing
Tejasvas123 Sep 10, 2019
3e5dac4
Handle checkstyle errors
Tejasvas123 Sep 10, 2019
2c2d73d
Divide duke into various packages
Tejasvas123 Sep 11, 2019
b157d5b
Add some test cases to check for date specifications
Tejasvas123 Sep 11, 2019
2176327
Add packages to JUnit testing
Tejasvas123 Sep 11, 2019
99ad307
bugFix old version
Tejasvas123 Sep 11, 2019
fe542c3
Small bugFix
Tejasvas123 Sep 11, 2019
fdffe88
Fix checkstyle errors
Tejasvas123 Sep 11, 2019
ddcd9b8
Merge branch 'master' of https://github.com/Tejasvas123/main
Tejasvas123 Sep 11, 2019
8ad487d
configure testing
Tejasvas123 Sep 11, 2019
78299f2
add travis configuration
Tejasvas123 Sep 12, 2019
9a27997
configure gradle
Tejasvas123 Sep 12, 2019
6595850
Add steps for contributing to SpongeBob
Tejasvas123 Sep 12, 2019
44a32f5
Add a note to contributing.md (#1)
Tejasvas123 Sep 12, 2019
7779d1e
configure gradle (#3)
Tejasvas123 Sep 16, 2019
0104856
Improve coding style (#4)
Tejasvas123 Sep 17, 2019
7a2ea20
[CS2113T-F11-1]-Tejasvas123-A-Jar (#5)
Tejasvas123 Sep 17, 2019
c1a340d
Added some test cases for DoAfter Command (#6)
Tejasvas123 Sep 18, 2019
8cc7af3
[CS2113T-F11-1]-Tejasvas123-B-FixedDurationTasks (#7)
Tejasvas123 Sep 18, 2019
ccd1574
[CS2113T-F11-1]-Tejasvas123-B-DoAfterTasks (#8)
Tejasvas123 Sep 18, 2019
e928360
[CS2113T-F11-1]-Tejasvas123-B-RecurringTasks (#10)
Tejasvas123 Sep 18, 2019
e88ab26
[CS2113T-F11-1]-Tejasvas123-A-Travis (#11)
Tejasvas123 Sep 18, 2019
79f9341
Enable Duke to snooze/postpone/reschedule task
Zhubo225 Sep 19, 2019
a4d3c36
Merge pull request #13 from Zhubo225/SnoozeCommand
swang1997 Sep 19, 2019
20ced27
[CS2113T-F11-1]-swang1997-B-DoWithinPeriodTasks (#15)
swang1997 Sep 19, 2019
378ed30
[CS2113T-F11-1]-KevinAlvarez7-B-Reminders (#16)
KevinAlvarez7 Sep 19, 2019
3bab3ab
Delete viewSchedule (#17)
Tejasvas123 Sep 24, 2019
bbac425
Added Admin Docs
swang1997 Sep 25, 2019
b2e26b6
Merge pull request #20 from swang1997/master
swang1997 Sep 25, 2019
d08a2b0
Added Test Image
swang1997 Sep 25, 2019
afe3f6e
Update README.adoc
swang1997 Sep 25, 2019
01d05ce
Update README.adoc
swang1997 Sep 25, 2019
7b64af0
Added test image and image folder
swang1997 Sep 25, 2019
d9c3e14
Edited Frame of User_Guide
swang1997 Sep 25, 2019
8321076
Merge pull request #22 from swang1997/master
swang1997 Sep 27, 2019
5224037
Update RemindCommandTest and SnoozeCommandTest (#19)
Zhubo225 Sep 27, 2019
82d7a21
Modify gitignore (#23)
Tejasvas123 Oct 1, 2019
e277a16
Updated commands in User Guide
swang1997 Oct 2, 2019
2d8a76f
Merge branch 'master' into master
swang1997 Oct 2, 2019
d4c0a35
Merge pull request #24 from swang1997/master
swang1997 Oct 2, 2019
7bf9ad1
Developer Guide v1.0
Zhubo225 Oct 2, 2019
5951f48
Merge branch 'master' into DG
Tejasvas123 Oct 2, 2019
25d91e3
Merge pull request #27 from Zhubo225/DG
Zhubo225 Oct 3, 2019
91a9b6a
Update README.adoc
Tejasvas123 Oct 3, 2019
ab7c500
Update README.adoc
Tejasvas123 Oct 3, 2019
22fd558
Update ABOUT_US.adoc (#28)
Zhubo225 Oct 3, 2019
59c28ee
added ui image (#29)
swang1997 Oct 3, 2019
95d88ce
Update README.adoc
Tejasvas123 Oct 3, 2019
48a3dc5
Update README.adoc
Tejasvas123 Oct 3, 2019
9c8b468
Update USER_GUIDE.adoc
Tejasvas123 Oct 3, 2019
e86da5a
added developer images (#30)
swang1997 Oct 3, 2019
529c8ac
changed image format (#31)
swang1997 Oct 3, 2019
d4602a3
Update USER_GUIDE.adoc
Tejasvas123 Oct 3, 2019
e160b8c
Update AboutUs (#32)
Zhubo225 Oct 3, 2019
2e7372c
Update USER_GUIDE.adoc
Tejasvas123 Oct 3, 2019
ca66f2d
Update USER_GUIDE.adoc
Tejasvas123 Oct 3, 2019
6720e23
Update USER_GUIDE.adoc
Tejasvas123 Oct 3, 2019
7cf0e13
Updated Developer Guide (#69)
Zhubo225 Oct 4, 2019
74eec2f
Rename ABOUT_US.adoc to AboutUs.adoc
Tejasvas123 Oct 4, 2019
b7a0cea
Moved README into main folder (#71)
swang1997 Oct 9, 2019
55652fc
Changed format of datetime (#76)
swang1997 Oct 9, 2019
c482798
Configure json for storing data on hard disk (#77)
Tejasvas123 Oct 10, 2019
6fa5213
Update README.adoc (#79)
Tejasvas123 Oct 10, 2019
a2aa13f
Changed UI (#80)
swang1997 Oct 10, 2019
2487a90
Update README.adoc (#81)
Tejasvas123 Oct 10, 2019
c7c9181
Update USER_GUIDE.adoc (#82)
Tejasvas123 Oct 10, 2019
999e492
Morphing to sponge bob (#84)
Tejasvas123 Oct 17, 2019
2dd74b7
DG2.0 (#85)
Zhubo225 Oct 18, 2019
70cf5d6
Refactor parser #1 (#87)
Tejasvas123 Oct 19, 2019
c5631fc
Refactor parser #2 (#88)
Tejasvas123 Oct 20, 2019
c829ca5
Refactor parser #3 (#89)
Tejasvas123 Oct 21, 2019
89b892b
minor bugfix related to renaming and refactoring (#90)
Tejasvas123 Oct 21, 2019
51e4d7f
Update DG (#126)
swang1997 Oct 24, 2019
39c6816
add jar file (#127)
Tejasvas123 Oct 24, 2019
dab22b7
DG2.0 (#128)
Zhubo225 Oct 24, 2019
728bd1e
Dev Guide Changes (#129)
KevinAlvarez7 Oct 24, 2019
0952da4
Dg.251019.2 (#132)
Zhubo225 Oct 25, 2019
b11f670
Add Ability for auto allocation of lockers (#135)
Tejasvas123 Oct 30, 2019
f1dd864
Edited CSV Writer (#134)
swang1997 Oct 30, 2019
53ca800
Add ability to edit fields for locker (#136)
Tejasvas123 Oct 31, 2019
e57aee0
minor changes for CLI UI (#138)
Tejasvas123 Oct 31, 2019
4e8b833
Help Command Updated (#137)
Zhubo225 Oct 31, 2019
526484a
Configure Json (#140)
Tejasvas123 Oct 31, 2019
a730c82
version 1.3
Tejasvas123 Oct 31, 2019
253eac8
resolve merge conflicts
Tejasvas123 Oct 31, 2019
dc8f937
version 1.3 (#143)
Tejasvas123 Oct 31, 2019
4be8d30
Week 11 (#144)
KevinAlvarez7 Oct 31, 2019
cb9e266
modify user guide
Tejasvas123 Oct 31, 2019
398a471
resolve merge conflicts
Tejasvas123 Oct 31, 2019
e329d6c
update ListCommand (#148)
Zhubo225 Oct 31, 2019
599d599
Update ug (#146)
Tejasvas123 Oct 31, 2019
b5516ba
Update USER_GUIDE.adoc
Tejasvas123 Oct 31, 2019
561e8a6
update Ui.png (#149)
Zhubo225 Oct 31, 2019
907ee13
add ability to delete usage and delete lockers
Tejasvas123 Oct 31, 2019
404ffee
resolve merge conflicts
Tejasvas123 Oct 31, 2019
56ccb3e
change ui
Tejasvas123 Oct 31, 2019
cafd576
refactor usage to improve code quality and fix exception bugs
Tejasvas123 Nov 6, 2019
9ce743b
resolve date time errors
Tejasvas123 Nov 6, 2019
1329542
improve code quality by following OOP principles
Tejasvas123 Nov 6, 2019
0a35077
restructure usage command
Tejasvas123 Nov 6, 2019
f0dd76b
add support for storing and retrieving data from JSON file
Tejasvas123 Nov 7, 2019
ab00635
fix checkstyle errors
Tejasvas123 Nov 7, 2019
667c5e2
Merge pull request #176 from Tejasvas123/update-locker
KevinAlvarez7 Nov 7, 2019
a69be31
Made file parsing more comprehensive (#178)
Tejasvas123 Nov 7, 2019
c043287
J unit testing and Refactoring Storage (#182)
Tejasvas123 Nov 9, 2019
7704d0d
Stats function included (#184)
swang1997 Nov 9, 2019
73477ad
Changed StatsCommand (#185)
swang1997 Nov 9, 2019
de97fc6
Cleaning code (#186)
Tejasvas123 Nov 9, 2019
1f0047b
Java doc (#189)
Tejasvas123 Nov 10, 2019
9df750b
Included Export CSV for selection of Tags (#187)
swang1997 Nov 11, 2019
baa100f
FindSortRemind (#188)
KevinAlvarez7 Nov 11, 2019
d1b6fc1
Clear command (#190)
Tejasvas123 Nov 11, 2019
9885cfe
Updates to Sort and UG (#191)
KevinAlvarez7 Nov 11, 2019
c38c128
Final update for SELECT/UNDO/REDO/HISTORY/HELP commands and Ui (#193)
Zhubo225 Nov 11, 2019
6bc641c
Updates UG (#195)
Zhubo225 Nov 11, 2019
4b67278
Logging (#196)
Tejasvas123 Nov 11, 2019
afbb5cc
Manual Testing in UG (#194)
swang1997 Nov 11, 2019
71829b4
Update User Guide (#197)
Tejasvas123 Nov 11, 2019
797fa1a
Update USER_GUIDE.adoc
Tejasvas123 Nov 11, 2019
ae112a2
Update USER_GUIDE.adoc
Tejasvas123 Nov 11, 2019
da0993a
Update USER_GUIDE.adoc
Tejasvas123 Nov 11, 2019
d7cb3bb
Update USER_GUIDE.adoc
Tejasvas123 Nov 11, 2019
ba97293
Update USER_GUIDE.adoc
Tejasvas123 Nov 11, 2019
7ec2d52
minor-changes (#199)
Tejasvas123 Nov 11, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,15 @@ src/main/resources/docs/
.DS_Store
*.iml
bin/

#data and test files
/storeData.txt
/text-ui-test/ACTUAL.TXT
/text-ui-test/EXPECTED.txt
/text-ui-test/input.txt
/text-ui-test/storeData.txt
/storeData.json




3 changes: 3 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
language: java
jdk:
- oraclejdk11
58 changes: 58 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# Contributing to SpongeBob
Note: Pull requests are welcome. For making major changes, please create an issue to first discuss the changes and then add them. Please make sure you add appropriate test cases for your major commits to the repo.

## Prerequisites
* Familiarize yourself with git commands
* Fork the group repository into your personal GitHub account
* Set up this project in IntellijIDEA
* Familiarize yourself with [gradle](https://github.com/AY1920S1-CS2113T-F11-1/main#tutorials) and [Travis CI](https://docs.travis-ci.com/user/tutorial/)
* Be well aware of the project [scope](https://nuscs2113-ay1920s1.github.io/website/admin/project-scope.html) and [constraints](https://nuscs2113-ay1920s1.github.io/website/admin/project-constraints.html)

## Definitions
Main repository: Our group's repository (AY1920S1-CS2113T-F11-1/main)

Your fork: Your fork of the group's repository

## Setup
Note: The steps provided here follow git CLI commands. If you are using Git GUIs like Source Tree, please make sure you follow steps that are equivalent to these commands.

1. Clone your fork into your computer.
```git
git clone 'your fork address'
```
2. Add the main repository as upstream
```git
git remote add upstream 'your main repo address'
```
## Workflow
Note: Dont push any commits directly to the the master of the main repository.

1. Your work must address an open issue.
2. Pull from upstream into your local repository's master.
```git
git checkout master
git pull upstream master
```
3. Create a branch from master and checkout to that branch
```git
git checkout -b your-branch-name
```
4. Add/delete/append the files that you want to. Remember to commit at regular intervals with proper [commit](https://chris.beams.io/posts/git-commit/) messages.
5. After finishing your work, merge your branch with upstream master.
```git
git checkout your-branch-name
git fetch upstream master
git merge upstream/master
```
6. Push your local branch to your fork
```git
git push origin your-branch-name
```
7. Go to GitHub. Locate your branch in your fork and create a pull request from it to the main repository master.
8. [Label](https://help.github.com/en/articles/applying-labels-to-issues-and-pull-requests) your pull request appropriately.
9. Your code would be automatically tested by Travis CI for errors.
10. Add reviewers and wait for their reviews.
11. If your pull request fails, dont close it. Just repeat steps 4 to 6.
12. Else if you are pull request is approved, squash and merge. Again, write proper messages for the same.

Adapted from Mohideen Imran Khan's [CONTRIBUTING.md](https://github.com/mohideenik/main/blob/master/CONTRIBUTING.md#contributing-to-duchess)
32 changes: 32 additions & 0 deletions README.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
= SpongeBob - SOC Club Manager

//* Add the GUI picture over here.
image::https://github.com/AY1920S1-CS2113T-F11-1/main/blob/master/docs/images/Ui.png[width="700"]
* SpongeBob is a command lined based desktop application aimed at helping the NUS SOC Club with managing +
manpower, logistics, finance, events and lockers. It is a Java application written in OOP fashion.
* It has a GUI but most of the user interactions happen using a CLI (Command Line Interface).
* What makes SpongeBob special:
- Integrates management, operations and logistics to one place
- Allows members to add various tags for club events,members and lockers
- Reminders that are auto-updated so that the members can keep track of all the club meetings
- Undo/Redo commands to enhance user-experience
- Auto-saving the SpongeBob data as easily-editable CSV files


== Site Map

* https://github.com/AY1920S1-CS2113T-F11-1/main/blob/master/docs/USER_GUIDE.adoc[User Guide]
* https://github.com/AY1920S1-CS2113T-F11-1/main/blob/master/docs/DEVELOPER_GUIDE.adoc[Developer Guide]
* https://github.com/AY1920S1-CS2113T-F11-1/main/blob/master/docs/ABOUT_US.adoc[About Us]
* https://github.com/AY1920S1-CS2113T-F11-1/main/blob/master/docs/CONTACT_US.adoc[Contact Us]

== Acknowledgements

* This application is built for NUS CS2113T AY 2019/2020 Semester 1 and is morphed from https://github.com/nusCS2113-AY1920S1/duke[Duke]
//* Some parts of this sample application were inspired by the excellent http://code.makery.ch/library/javafx-8-tutorial/[Java FX tutorial] by
//_Marco Jakob_.

* Libraries used: https://github.com/FasterXML/jackson[Jackson]

//== Licence
//* https://github.com/AY1920S1-CS2113T-F11-1/main/blob/master/docs/CONTACT_US.adoc[MIT]
66 changes: 66 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
plugins {
id 'java'
id 'application'
id 'org.openjfx.javafxplugin' version '0.0.7'
id 'com.github.johnrengelman.shadow' version '5.1.0'
id 'checkstyle'
}

group 'seedu.duke'
version '0.1.0'

checkstyle {
toolVersion = '8.23'
}

shadowJar {
archiveBaseName = "duke"
archiveVersion = "1.1.5"
archiveClassifier = null
archiveAppendix = null
}

dependencies {
testImplementation 'org.junit.jupiter:junit-jupiter:5.5.0'
implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.9.9.3'
implementation group: 'com.fasterxml.jackson.datatype', name: 'jackson-datatype-jsr310', version: '2.9.9'
compile group: 'com.fasterxml.jackson.core', name: 'jackson-core', version: '2.9.10'
String javaFxVersion = '11'
implementation group: 'org.openjfx', name: 'javafx-base', version: javaFxVersion, classifier: 'win'
implementation group: 'org.openjfx', name: 'javafx-base', version: javaFxVersion, classifier: 'mac'
implementation group: 'org.openjfx', name: 'javafx-base', version: javaFxVersion, classifier: 'linux'
implementation group: 'org.openjfx', name: 'javafx-controls', version: javaFxVersion, classifier: 'win'
implementation group: 'org.openjfx', name: 'javafx-controls', version: javaFxVersion, classifier: 'mac'
implementation group: 'org.openjfx', name: 'javafx-controls', version: javaFxVersion, classifier: 'linux'
implementation group: 'org.openjfx', name: 'javafx-fxml', version: javaFxVersion, classifier: 'win'
implementation group: 'org.openjfx', name: 'javafx-fxml', version: javaFxVersion, classifier: 'mac'
implementation group: 'org.openjfx', name: 'javafx-fxml', version: javaFxVersion, classifier: 'linux'
implementation group: 'org.openjfx', name: 'javafx-graphics', version: javaFxVersion, classifier: 'win'
implementation group: 'org.openjfx', name: 'javafx-graphics', version: javaFxVersion, classifier: 'mac'
implementation group: 'org.openjfx', name: 'javafx-graphics', version: javaFxVersion, classifier: 'linux'
}




test {
useJUnitPlatform()
}

repositories {
mavenCentral()
}

javafx {
version = "11.0.2"
modules = [ 'javafx.controls', 'javafx.fxml', 'javafx.graphics' ]
}

application {
// Change this to your main class.
mainClassName = "duke.Duke"
}

run {
standardInput = System.in
}
Loading