GithubHelp home page GithubHelp logo

gdsc-jssstu / campus-web Goto Github PK

View Code? Open in Web Editor NEW
5.0 5.0 8.0 298 KB

A univeristy based community building app/website that enables students on campus to help each other and gain points, resulting in them being more recognized

License: BSD 2-Clause "Simplified" License

JavaScript 96.51% HTML 0.94% CSS 2.55%
firebase firebase-firestore hacktoberfest hacktoberfest2023 opensource react reactjs tailwind tailwind-css tailwindcss vite

campus-web's People

Contributors

dependabot[bot] avatar griseduardo avatar kushvendar avatar muz4mmil avatar nupoor10 avatar samara6855 avatar sanjay14073 avatar sikehish avatar sumit-kumar-jha1709 avatar supunvindula avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

campus-web's Issues

Signup.jsx: Implement Signup functionality using Firebase Authentication

Design link
Hex Codes

Referring to the designs above,

  1. Create an aesthetic and responsive Signup Page, and stick to the hex codes using in the design.
  2. Refer to context/AuthContext.jsx, where functionality for signup is provided. You need to implement the signup method in the onSubmit handler.
  3. On signup, I want a user, having a document ID set to that of the corresponding User UID(Firebase Auth), to be created in the users collection, where you store additional data related to the user(essentially all the details related to the user except for the password).

Navbar.jsx: Fix Navbar.jsx

Design link
Hex Codes

Using the above design, based on the auth state,

  1. If the user is logged in, we need to have the following nav elements: Requests, My Requests, My Profile, About Us and Log Out.
  2. If the user isn't logged in, we need to have the following nav elements: Home and About Us

CreateRequest.jsx: Create a page to create a request

Design link
Hex Codes

Referring to the designs above,

  1. Create an aesthetic and responsive Create Request Page, and stick to the hex codes using in the design.

  2. The user has to be authenticated before creating a request

  3. We unfortunately dont have a design in place for it, but you can refer to the image below, which is the Requests page design, and you can take message as input and store it against the user in firebase.

  4. You might have to create a collection, or an array of requests in the existing users collection.

  5. You can find CreateRequest.jsx in src/pages directory.

image

AboutUs.jsx: Implement the component.

Design link
Hex Codes

Referring to the designs above,

  1. Create an aesthetic and responsive About us Page, and stick to the hex codes using in the design.
  2. AboutUs.jsx can be found in src/pages directory.
  3. You can use Lorem Ipsum (dummy text) for now.

Home.jsx: Come up with some good content to replace the placeholder/dummy text under Features section in Home page.

Design link
Hex Codes

Unlike other issues, there is no right or wrong solution to this issue. We expect you to be creative and come up with a description under Features, that is apt, succinct, yet creative and engaging. Issue would be assigned based on the approach that you suggest in the comments.

Also, coming up with a figma design would be a plus point. You can come up with some cool layouts to explain the features(list of features can be extracted from the issues/PRs made, README.md and the above figma design link).

Component path: /src/pages/Home.jsx

App.jsx: Enhance Routing

Design link

Using the above design, based on the auth state,

  1. Add relevant routes, and protect the routes wherever necessary. Few routes are already handled, you just need to extend on it.

Profile.jsx: Create user profile page

Design link
Hex Codes

Referring to the designs above,

  1. Create an aesthetic and responsive Profile Page(pertaining to the currently logged in user), and stick to the hex codes using in the design.
  2. The user has to be authenticated before creating a request
  3. You have to link the Edit Profile button(as can be seen in the Profile page design below) to the Edit Profile page(which may or may not have been implemented by the time you would have come across this issue). Likewise, you need link View Requests link to the Requests Page.
  4. You can find Profile.jsx in src/pages directory.

image

EditProfile.jsx: Implement Edit Profile page for the authenticated user.

Design link
Hex Codes

Referring to the designs above,

  1. Create an aesthetic and responsive EditProfile Page(pertaining to the currently logged in user), and stick to the hex codes using in the design.
  2. The user has to be authenticated before creating a request.
  3. You have to link the Edit Profile button(as can be seen in the Profile page design below) to the Edit Profile page.
  4. You can find EditProfile.jsx in src/pages directory.
  5. Add EditProfile route as "edit-profile"

image
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.