🧁 About CMP Docs

image

As computer engineering students at Cairo University we thought it would be valuable to create an online platform that takes the form of software documentation as a guide for those that are considering enrolling, have enrolled or even have graduated form the department!

Thereby, the following are the motivations of this website:

✦ Provide prospective students all the information they need to make an informed decision regarding whether or not to choose computer engineering

✦ Guide students that have just entered the department on how to cope and get ready for what's next. Some sections of the website will be even useful to graduate students!

✦ Realize the fact, that we are all one family; and that we are all ready to help one another no matter how far we are from each other.

🚆 Navigating the Website

It should be self-evident from the side bar; however, here is a small guide:

Student TypeConsideration
Prospective StudentsReview the "Before Joining" section in the sidebar. If you have any unanswered questions, please create a GitHub issue to ask it.
Recent StudentsConsider the "Recently Joined" section.
All Other StudentsConsider all mentioned sections and feel free to collaborate!

Important Note I: The website is built to be updated continually; thus, checking it frequently for updates or changes is key.

Important Note II: The website is built with Arabic in mind. However, with this being initially written in English it may take some time until the Arabic versions of all pages are available. Collaboration here would be really helpful.

🪂 We are all Contributors!

The website is built with collaboration in mind. In particular, as a student part of the department, you are welcome to change any part of the content found within the website with zero web development coding prerequisites.

✦ Modifying any existing page takes only modifying its corresponding markdown or yaml file. A page in the documentation is represented by yaml (which also supports markdown in strings) only if it contains a grid of icons; otherwise, it's pure markdown. This all gets transpiled to html and css under the hood.

✦ You can even modify the sidebar to include new sections and pages and guess what! The sidebar is a single yaml file.

Hint I: It should only take you 10 minutes to get the hang of markdown or yaml syntax, assuming the unlikely coincidence that you don't know about them.

Hint II: All files corresponding to the website can be found inside "public/department". They follow the same hierarchy as the sidebar.

To run for the first time, install Node.js then type at the terminal

npm install

Now you can test any changes you perform by running

npm start If npm start doesn't work, do this instead:

npm run start_win

Once you're done. Simply submit a PR; it would be nice if you start proposing the PR as an issue if it's a big change.

Collaboration Notes

I. Please only write facts that you are certainly sure of; if it's controversial please discuss it in an issue first. It's best to either naturally deduce your argument or use references rather than just stating facts as if they were universal truisms.

II. Using gifs or emojis is highly recommended to keep the site lively

🚀 Are you ready?

image