-
Notifications
You must be signed in to change notification settings - Fork 1
File Structure
Shiva Shankar edited this page Jul 8, 2023
·
2 revisions
-
api
directory: How the front-end fetches the data it needs from the back-end, by sending network requests to our server.-
getAutoTimetable.ts
: Fetches a timetable generated by the autotimetabler. -
getCoursesList.ts
: Fetches the list of courses. This list only contains a summary of each course, to save network bandwidth. -
getCourseInfo.ts
: Fetches detailed data for a single course, once you have selected it. This data includes all the classes for the course which will show up in the timetable. -
config.ts
: The URLs for where we should send network requests.
-
- auto.py: Where the constraint programming algorithm lives
- autotimetabler_pb2_grpc.py and autotimetabler_pb2.py: All the generated classes from the .proto file
- autotimetabler.proto: Where we specify the types of RPC messages being passed between the main server and the autotimetabling server.
- requirements.txt: The required packages for the server to run. Used when installing with pip
- server.py: Where the gRPC server lives
These files probably won’t be worked on by you but it’s good to know what they do. They may appear in multiple directories (e.g. package.json) but each one is different!
- package.json: The necessary packages required for the project and the aliases for the npm start, npm build commands etc. This is where npm run start:mock comes from.
- package-lock.json: The exact steps taken by npm to install all the packages and their dependencies. Important in the deployment process.
- .gitignore: The files and folders not to be committed to Git, such as node_modules
- .prettierrc: The configuration for the Prettier extension
- tsconfig.json: The rules defining how to transpile the Typescript code into Javascript during the build process.
- Dockerfile: The instructions on how to create a Docker image from the code in the folder.
- dockerignore: The files not to include in the Docker image.
- renovate.json: The rules for our automatic package updater