Skip to content

senior-knights/course-schedulizer

Repository files navigation

Course Schedulizer

calvin knights calvin computer science schedulizer production server schedulizer github repo deployment status schedulizer development server github creation time github contributors github license

Create academic course schedules without stress.

This is the repository for the Course Schedulizer project created by students at Calvin University for the Computer Science senior project. For more information, see the:

  • About page for a discussion of the purpose of the application.
  • Help page for instructions on how to use the application.
  • Client README file for a specification of the system development workflows.

Development Philosophy

We generally follow the Gitflow collaboration model, using these branches.

  • The production branch is a persistent branch that contains the most stable version of the Course Schedulizer. It requires two reviews to merge PRs to this branch.
  • The develop branch is a persistent branch that contains the cutting edge version of the Course Schedulizer. It requires one review to merge PRs to this branch. Each PR is ideally around 100-200 LOC.
  • Feature branches are cloned from develop and are used for developing new features. They are merged back into develop when the feature is complete.

Code reviews are done on every PR merged into the two persistent branches. A PR is made with a branch following the naming convention of <broad>/<specific>. <broad> are things like feature, docs, chore, fix, etc.

Repository Configuration

The repo is a mono-repository with one application, stored in ./client-course-schedulizer, and the possibility of adding applications in the future.

Because the application is open source, we use free minutes of GitHub actions to perform CI/CD. ci.yml tests on any push or PR against develop or production.

Development

To work with this GitHub codebase, git clone this repo and cd into the new repo sub-directory.

Development is best done using VS Code and the pre-defined project workspace. To begin editing, open the workspace file with VS Code. This will configure VS Code settings and prompt you to install the recommended VS Code extensions, which helps maintain the consistency and quality of the project codebase. The extensions include:

You can add your own user-specific VS Code extensions, but be sure to use these recommended, shared settings and extensions.

About

πŸ“ Create semester schedules without stress

Topics

Resources

License

Stars

Watchers

Forks

Contributors 19