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

Merge develop into feature with updated package.json settings #340

Open
wants to merge 67 commits into
base: feature/update-meeting-patterns-2023
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
4e91e7b
Merge pull request #272 from senior-knights/production
charkour Nov 18, 2022
d888d1a
get app running locally
charkour Jun 4, 2023
6d1ceff
bump full calendar v6
charkour Jun 4, 2023
171c65b
remove export
charkour Jun 4, 2023
b2526fc
add engines
charkour Jun 5, 2023
e23fa6e
update to run with pnpm
SophiaSun18 Oct 19, 2023
9511a28
update node version to fit the testing workflow
SophiaSun18 Oct 19, 2023
c05e45c
Update ci.yml to use pnpm commands
SophiaSun18 Oct 19, 2023
18df081
update ci.yml for pnpm
SophiaSun18 Oct 19, 2023
97940d4
update cache dependency path
SophiaSun18 Oct 19, 2023
f85bc59
comment out cache for test purpose
SophiaSun18 Oct 19, 2023
d30361d
update with new install command
SophiaSun18 Oct 19, 2023
3265e55
Update ci.yml
SophiaSun18 Oct 26, 2023
8735bac
Adding content to the help page
NycoCC1993 Nov 1, 2023
6e5da3f
update team2023 info
SophiaSun18 Nov 1, 2023
ff23118
Merge branch 'fix-local' of https://github.com/senior-knights/course-…
SophiaSun18 Nov 1, 2023
349fee4
Improving help page
NycoCC1993 Nov 1, 2023
d7cf6a8
Merge pull request #336 from senior-knights/fix-local
SophiaSun18 Nov 2, 2023
caaf577
testing node 18
kvlinden Nov 2, 2023
c21fe49
Merge pull request #341 from senior-knights/develop
SophiaSun18 Nov 16, 2023
e939042
Merge pull request #342 from senior-knights/test/merge-feature-into-d…
SophiaSun18 Nov 16, 2023
c8e4871
Update README.md to include documentation
NycoCC1993 Nov 20, 2023
1a3f183
Merge pull request #343 from senior-knights/fhm2-patch-DocumentationI…
SophiaSun18 Nov 20, 2023
b21e378
Add files via upload
NycoCC1993 Feb 11, 2024
5057b81
Removing lint errors
NycoCC1993 Feb 7, 2024
0ea888b
Avoid caching remote schedule data.
kcarnold Feb 19, 2024
fd05036
Removing extraneous alteration messages
NycoCC1993 Feb 27, 2024
e4e6228
Unused capacity-related sections removed
SophiaSun18 Feb 27, 2024
ab2efa5
Term -> Academic Period
SophiaSun18 Feb 27, 2024
b329e50
Department -> Parse the first piece of CourseSection
SophiaSun18 Mar 10, 2024
514183e
Prefix, Number, Section, Course Title -> Parse everything from Course…
SophiaSun18 Mar 10, 2024
8272656
Faculty Hours, Student Hours -> Semester Hours
SophiaSun18 Mar 10, 2024
7f51ba2
BuildingAndRoom -> Location 1 & 2, Using the same cf function but onl…
SophiaSun18 Mar 11, 2024
7d7cd72
Meeting Day, Meeting Time -> Meeting Patterns
SophiaSun18 Mar 11, 2024
bc2efe3
Split part of original courseSectionCallback() into courseCallback()
SophiaSun18 Mar 11, 2024
ade7977
SemesterStartDate, SemesterEndDate -> StartDate, EndDate
SophiaSun18 Mar 11, 2024
a11b581
Merge pull request #348 from kcarnold/bug/bust-cache
NycoCC1993 Mar 11, 2024
0652709
Fixed `readFullCSV.spec.ts` to pass `pnpm test` using updated example…
SophiaSun18 Mar 26, 2024
a81da0f
Fixed minor meetingTime issue to accomodate the most recent schedule
SophiaSun18 Mar 26, 2024
1ecd2c2
Update meetingPatternCallback() and timeCallback() to process section…
SophiaSun18 Mar 30, 2024
452f775
Update output format
SophiaSun18 Mar 31, 2024
3ba0a47
Update testing script
SophiaSun18 Mar 31, 2024
9d31bdc
Update deploy.yml for `production` deployment
SophiaSun18 Apr 8, 2024
0297921
Adding changes
NycoCC1993 Apr 9, 2024
506783f
Fix jest-dom version needs extend-expect
NycoCC1993 Apr 9, 2024
6f61efc
Merge pull request #349 from senior-knights/feature/update-scheduling…
NycoCC1993 Apr 9, 2024
b5b2654
Merge pull request #350 from senior-knights/update/develop
NycoCC1993 Apr 27, 2024
9f470d7
update package.json
SophiaSun18 Apr 30, 2024
e01a950
Update package.json
NycoCC1993 Apr 30, 2024
ce9bd04
Merge pull request #351 from senior-knights/develop_repair_small_01
SophiaSun18 Apr 30, 2024
d31eca6
Update about page to include 2024 final report and presentation slides
SophiaSun18 Apr 30, 2024
85d328d
update deploy.yml with pnpm install and update
SophiaSun18 Apr 30, 2024
2152655
Merge pull request #353 from senior-knights/develop-update-about-2024
SophiaSun18 Apr 30, 2024
0b29250
Cleaning up internal and external documentation.
kvlinden Jul 23, 2024
4457b84
Sorted out Node/pnpm versioning
kvlinden Jul 23, 2024
a4f17a1
Reverting to develop configuration to test deployment
kvlinden Jul 24, 2024
e8fef18
Merge pull request #356 from senior-knights/fix/documentation
kvlinden Jul 24, 2024
cd42e15
finished documentation update
kvlinden Jul 25, 2024
a5ba39e
Merge pull request #357 from senior-knights/fix/documentation
kvlinden Jul 25, 2024
2ebbb15
More configuration cleanup
kvlinden Jul 25, 2024
6883aad
Merge pull request #358 from senior-knights/fix/tool-versions
kvlinden Jul 26, 2024
fb402ca
Added 2024 team members and updated AboutPage
wahrheit319 Dec 10, 2024
e42c115
Merge pull request #359 from senior-knights/feature/add-2024-team-mem…
edomamaru Dec 17, 2024
59b9ef5
added 2024 proposal and proposal and status report
wahrheit319 Dec 17, 2024
1a25f85
Merge pull request #360 from senior-knights/feature/add-2024-team-mem…
edomamaru Dec 17, 2024
3b06c03
fixed the AboutPage link
wahrheit319 Dec 17, 2024
d7a70da
Merge pull request #361 from senior-knights/feature/add-2024-team-mem…
neh8 Dec 17, 2024
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
19 changes: 11 additions & 8 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,18 +13,21 @@ jobs:
env:
working-directory: ./client-course-schedulizer
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
- uses: actions/checkout@v3
- uses: pnpm/action-setup@v2
with:
node-version: '14'
- name: update-npm-version
version: 8
- uses: actions/setup-node@v3
with:
node-version: '20'
- name: update-pnpm-version
run: |
npm install -g npm@latest
- name: Install npm dependencies
pnpm install -g pnpm@latest
- name: Install pnpm dependencies
run: |
npm ci
pnpm install
working-directory: ${{env.working-directory}}
- name: Run tests
run: |
npm test
pnpm test
working-directory: ${{env.working-directory}}
16 changes: 11 additions & 5 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,24 @@ jobs:
working-directory: ./client-course-schedulizer
strategy:
matrix:
node-version: [14.x]
node-version: [20.x]
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3
- uses: pnpm/action-setup@v2
with:
version: 8
- name: update-pnpm-version
run: |
pnpm install -g pnpm@latest
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Install Packages
run: npm install
run: pnpm install
working-directory: ${{env.working-directory}}
- name: Build Page
run: npm run build
run: pnpm build
working-directory: ${{env.working-directory}}
- name: Remove gh-pages Cache
run: rm -rf node_modules/gh-pages/.cache
Expand Down
30 changes: 26 additions & 4 deletions .vscode/course-schedulizer.code-workspace
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,37 @@
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true,
"source.organizeImports": true,
"source.fixAll": true
"source.fixAll.eslint": "explicit",
"source.organizeImports": "explicit",
"source.fixAll": "explicit"
},
"eslint.workingDirectories": [
{
"mode": "auto"
}
]
],
"cSpell.dictionaries": ["en_US", "typescript", "node", "html", "css", "npm"],
"cSpell.enableFiletypes": ["html", "js", "json", "jsx", "markdown", "md", "scss", "ts", "tsx"],
"cSpell.words": [
"Corepack",
"CSPS",
"Faeren",
"Fitsum",
"Haileselassie",
"Kornoelje",
"Madza",
"Maru",
"Norvig",
"packagemanager",
"predeploy",
"Pruim",
"reuseables",
"Schedulizer",
"VanderLinden",
"Velpula",
"Vreeke"
],
"cSpell.blockCheckingWhenTextChunkSizeGreaterThan": 1500 // Allow checking of files with long base64 strings.
},
"extensions": {
"recommendations": [
Expand Down
60 changes: 60 additions & 0 deletions DOCUMENTATION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
Course Schedulizer: DOCUMENTATION





- How to run the `develop` branch locally for developers:
- `git clone`: clone the repo to local computer and `cd` into the folder
- `git checkout develop`: switch to `develop` branch
- `cd client-course-schedulizer`: `cd` into the client folder
- `pnpm install`: install all packages in package.json
- Current requirement: pnpm 8.6.0 or above, node 18 or above
- `pnpm start`: run the website on localhost:3000
- Develop Branch - For development, deployed on [Course Schedulizer (sharp-babbage-a45ee2.netlify.app)](https://sharp-babbage-a45ee2.netlify.app/#/)
- .github/workflows: the github auto-test and auto-deploy scripts
- ci.yml: automatically test the latest update
- Trigger: push to all branches, PR to `develop` and `production`
- Work environment: ./client-course-schedulizer
- Steps:
- Set up actions for pnpm and node
- Update pnpm version
- Install pnpm dependencies
- Run pnpm test on the latest push or PR
- deploy.yml: auto-deploy
- This script is not updated to use pnpm yet, must be updated before pushing to `production` or error will occur
- Important files: client-course-schedulizer/csv
- This folder contains sample course schedules in .csv and .xlsx formats
- Not compatible with latest Workday format, might be replaced in later versions
- Important files: client-course-schedulizer/src - 
- Folder `assets` - Contains images utilized by the application
- Folder `components` - Contains important elements of the program interface (to be discussed in further detail later)
- Folder `data` - Features constraints on times within which classes may start
- May need to run some outside R command to get the correct data
- Ask Prof. Pruim for more information about how this folder works
- Folder `styles` - Establishes colors and fonts used in the application
- Folder `types` - Establishes objects used in the application (best not to alter this)
- Folder `utilities` - Various functions and objects to help the application function (to be discussed in further detail later)
- Other files - Handle server operations
- Important Files - src/components
- App Folder - Features navigational components, and tests to run
- App/App.tsx - Provides navigational info
- Footer Folder - Handles display of the bottom of the page
- Header Folder - Handles display of the top of the page, including navigational buttons
- Tabs Folder - Handles tabs that appear in the Schedulizer window
- Toolbar Folder - Handles functions in toolbars that appear in the Schedulizer window
- Pages Folder - Handles the pages that are accessible by way of the header
- SchedulizerPage - Implements the Tabs found in the components/Tabs folder
- AboutPage - Contains some information regarding the Schedulizer, and the developers working on it
- AboutPage/TeamMemberProfile - Handles team members as objects to display uniformly
- HelpPage - Displays information that will help new users learn to use the application
- HarmonyPage - Highly Experimental - A system meant to create an ideal schedule based on constraints, currently nonfunctional and not under active development NOT IN USE NOW
- Reusables Folder - Handles object-classes that are used in various parts of the app
- Important Files - src/utilities
- Contexts - Establish the global state of the app
- Helpers - Provide various helpful functions for development use
- Hooks - Provide hooks for interacting with the schedule
- Interfaces - Define the app interfaces and data interfaces
- Reducers - Provide a function to perform multiple setState updates at once that depend on each other.
- Services - Provide services for eg: detecting conflict, calculate faculty load, etc.

Loading
Loading