Repository for the Open Source Project undertaken by the Computer Science and Engineering Society @ UC San Diego.
Welcome to the CSES Open Source Class Notes Repository Project! This repository is a collaborative effort undertaken by the Computer Science and Engineering Society (CSES) at the University of California, San Diego (UCSD). In this README, we'll provide an overview of the project, how it works, and how you can contribute.
Join our discord here!
You can find all the open issues under the "Issues" tab. Choose one of the issues and implement that feature following the steps described here. Whenever you open a pull request (step 4 in the steps described), make sure you add the corresponding issue to the PR.
Here are the top contributors to our project:
- Yashil Vora - 10 commits
- Hogun Kim - 8 commits
- Georgio Feghani - 7 commits
- Mishka Jethwani - 6 commits
- Nabil Khoury - 5 commits
Thank you to all our contributors for their hard work and dedication!
Our goal is to create a platform where every CSES member can actively contribute to building a valuable resource for UCSD students. We aim to develop a community-driven forum for sharing class notes and educational resources. This project encompasses the following key features:
- Repository of Class Notes: A central repository where students can share their class notes and resources.
- UCSD Credentials Login: Securely log in using your UCSD credentials to ensure the authenticity of contributors.
- Course Contributions: Any student can add a class they've taken and contribute by uploading their class/personal notes.
- Collaborative ed-platform: A centralized hub with notes for various classes that anyone can contribute to.
- NLP Integration: Potential integration of Natural Language Processing (NLP) to convert handwritten text to PDFs, verify uploaded documents, and more.
Here's how you can get involved:
-
Fork this Repository: Start by forking this repository to your GitHub account.
-
Create a New Branch: Develop your feature or work on a task in a new branch. Be sure to name it appropriately, reflecting the task you're working on.
-
Commit & Push: Make your changes, commit them, and push your branch to your forked repository.
-
Open a Pull Request: Once you're ready to contribute, open a pull request from your branch to this main repository. Describe your changes, and our team will review it. Dont forget to include your PID and email in the PR.
-
Collaboration: Engage in discussions within the pull request and make any necessary revisions based on feedback from the community.
-
Milestone Completion: Upon successfully merging your pull request, you'll earn points in your CSES membership, and you might qualify for additional rewards such as access to free merchandise, early access to career fairs, gift cards, and more.
We believe in recognizing and rewarding our contributors. By actively participating in this project, you can earn:
-
CSES Membership Points: Accumulate points in your CSES membership, boosting your involvement and recognition within the society. You get 50 points for completing a milestone!
-
Priority For Applying to Board: Your contributions give you priority while applying for board positions at CSES.
-
Access to Free Merchandise: Gain access to exclusive CSES merchandise as a token of appreciation for your contributions.You get free merchandise after completing every 5 milestones (stickets, caps, sweatshirts, hoodies, etc).
-
Early Access to Career Fairs: Get a head start on your career journey with early access to CSES career fairs. The CSES Career Fair will be held in Week 6 this fall quarter.
-
MERN Stack Experience and Networking: Gain invaluable experience in developing a webapp from scratch using the MERN Stack (MongoDB, Node.js, Express.js, and React.js). Also get a chance to network with other members from the CSES community and expand your network!
-
Gift Cards and More: Additional rewards include gift cards and other exciting incentives. The first, second, and third places with maximum milestones completed (as shown on our leaderboard) will get $50, $25, and $15 giftcards respectively.
Contributors to this project (whether you're an expert or a beginner) are also announced on the CSES LinkedIn and other social media platforms and will be recognized in the CSE community at UCSD.
We invite you to be a part of this exciting initiative, shaping the future of student resources at UCSD while building your own skills and achieving recognition within CSES.
We're excited to have you on board! Fork the repository, find a task or feature that interests you, and let's collaborate to create a valuable resource for the UCSD community.
If you have any questions or need assistance, feel free to reach out to our project maintainers.
Happy coding!
This project uses pnpm. To install pnpm, run the following command.
npm install -g pnpm
-
Clone the repo
git clone https://github.com/CSES-UCSD/open-source-project.git
-
Go to the
open-source-project/frontend
directory -
Install NPM packages
pnpm install
-
Run the dev command
pnpm run dev
-
Go to the
open-source-project/backend
directory -
Install NPM packages
pnpm install
-
Run the dev command
pnpm run dev
Complete any of the milestones to redeem points and rewards. We will contact you when your PR is approved! Put in your name, email, PID, year, and major in the pull request description in order for us to contact you with the rewards once you complete a milestone.
Here are the current milestones:
US #1.1: Create a Login Page that redirects to the UCSD user authentication page. (Frontend)
US #1.2: Create a Login Page that redirects to the UCSD user authentication page. (Backend)
US #2: Develop the user dashboard with an overview of recent notes, notifications, and upcoming events. (Frontend)
US #3: Implement quick access links to different sections or pages of the website in the dashboard header. (Frontend)
US #4.1: Create the Notes Upload Page with fields for adding a title, course info, description, tags, and attachment options (PDF, images, etc.). (Frontend)
US #4.2: Create the Notes Upload Page with fields for adding a title, course info, description, tags, and attachment options (PDF, images, etc.). (Backend)
US #5.1: Develop the Notes Listing Page with filters for sorting notes by course, date, popularity, or tags Frontend
Feel free to work on any one of these milestones and submit a PR including your information.
Join our discord here! Announce which User Story you're working on (US #1, US #2, etc) in the general
channel and have discussions in the cses-tritonscript
forum channel!
Open Source Team:
- Yashil Vora: President (yvora@ucsd.edu)
- Hogun Kim: Developer (hok008@ucsd.edu)
- Georgio Feghali: Developer (gfeghali@ucsd.edu)
- Mishka Jethwani: Developer (mjethwani@ucsd.edu)
- Haley Fernandez: Developer (hjfernandez@ucsd.edu)
- Shravi Jain: Developer (shj009@ucsd.edu)
Feel free to get in touch with any of us if you have questions or need help with getting started!