Giter Club home page Giter Club logo

geektoberfest-main's Introduction

Geektoberfest-Main

Geektoberfest

About us

GeektoberFest’20 is a 20 day long open source event running in parallel with the Hacktober fest organised by GeekHaven IIIT Allahabad. We have set up some beginner friendly repositories to help you begin your journey in the daunting world of open source and help you take your first step in your development career.

RULES

  • To be eligible for the prizes all participants must submit a minimum of 4 PR’s in the GeektoberFest'20 repositories.

  • Since we have limited repos and we want everyone to get the chance to contribute, participants cannot submit more than 6 PRs to the GeektoberFest'20 repositories.

  • After submission of the PR’s on the GeektoberFest'20 repositories (Min 4 and Max 6) participants can keep contributing to other open source projects to become the best contributors and win additional prizes.

  • After every Pull Request of yours that gets merged, you have to add its details to your contribution JSON file so that we can keep track of your contributions. Instructions on how to add PR details are given below

  • By the end of the fest best contributors would be decided on the basis of the quality and quantity of their contributions.

Adding your Pull Requests

To add your pull requests, open contributions folder and in their add your own json file with file name as your Github Username. Please maintain the following format EXACTLY (replacing values where indicated):

     {
        "name" : "Participant Name",
        "imageurl" : "https://sample-website/image.jpg",
        "about" : "Hello I'm a web developer",
        "facebook": "facebook-url",
        "github" : "github-url",
        "prs": [
            "https://github.com/link/to/pr/1",
            "https://github.com/link/to/pr/2",
            ...
        ]
     }

As you get more PRs merged, you can keep updating the same file. A sample file has been placed in the folder for your convenience. Make sure to update your file as soon as you get a PR merged.

IMPORTANT:

  • imageurl is the URL to the your profile image. You can use the URL of any one of your social profile picture or host a picture yourself through imgur or similar service.
  • The image should be of square resolution.
  • If you do not want to include social media accounts, leave the field empty like "facebook":"".
  • While working with JSON, check the file using JSON Lint before opening pull request

Contributing

Getting started

We will follow the official GitHub documentation for setting up the repo.

  • Forking and cloning the repository

    Link to GitHub Docs

    By forking a repository you create your own copy of the project and make your changes there. Cloning a project means that you are setting up the project on your local system.

  • Syncing a fork

    Link to GitHub docs

    We keep our fork in sync to the original repository so that our copy of the project has the latest changes from the original project.

  • Making changes to project and committing a change

    Link to docs

    Committing means making changes to the project and adding your changes to the GitHub.

  • Making a pull request

    Link to docs

    • Pull request means submitting your changes to the original project for the review. Once the maintainers of the project feel that your changes are appropriate then your pull request will be merged.
  • Add relevant commit message in the pr, mention issue number and live link to comment while making pr.
  • Note: In case you feel any issue during setting up the project or using git, don't hesitate to ask us on our slack channel. We will help you out.

Guidelines and Best practices

Please help us follow the best practice to make it easy for the reviewer as well as the contributor. We want to focus on the code quality more than on managing pull request ethics.

  • People before code: If any of the following rules are violated, the pull-requests must not be rejected. This is to create an easy and joyful onboarding process for new programmers and first-time contributors.

  • Single commit per pull request and name the commit as something meaningful, example: Updating <-username->'s PR file with a new PR in <-repo-name->.

  • Reference the issue numbers in the commit message if it resolves an open issue. Follow the pattern Fixes #<-issue number-> <-commit message->

  • Provide the link to live gh-pages from your forked repository or relevant screenshot for easier review.

  • Pull Request older than 3 days with no response from the contributor shall be marked closed.

  • Do not make PR which is not related to any issues. You can create an issue and solve it once we approve them.

  • Avoid duplicate PRs, if need be comment on the older PR with the PR number of the follow-up (new PR) and close the obsolete PR yourself.

  • Be polite: Be polite to other community members.

  • Communicate: Whether you are working on a new feature or facing a doubt please feel free to ask us on our slack channel. We will be happy to help you out.

Happy Coding ✌️

geektoberfest-main's People

Contributors

2802harsh avatar aarpit1010 avatar aditya-2001 avatar alacritouscreature avatar alkatrivedi avatar black-pearll avatar cadenceprestissimo avatar codedude1 avatar cosmoimai avatar cypherdious89 avatar deepak-gup7a avatar devilaj avatar devildarkfire avatar elemento24 avatar geeks5551 avatar ic1101virgo avatar kumaraditya2002 avatar kumarmanish03 avatar mandar16 avatar mehul-12 avatar parasagrawal avatar prince-7 avatar ranveer251 avatar sggts04 avatar shahidsiddiqui786 avatar shyamtayal avatar siddhantdrk avatar thelavenderhue avatar tsukii21 avatar tushargupta9800 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

geektoberfest-main's Issues

The Project Cards are not the same size when hovered on.

For example, when hovering on some of the project cards, this is what happens:

image

image

As you can see, when hovered, according to the text there, some cards become shorter in height, while some cards become larger in height. This shouldn't be the case, the cards shouldn't change their height when hovered, make sure the cards remain the same height as before when hovered.

participant section redesign

the current design is good, but the participant divs could be smaller and the aspect ratio of the original image should remain intact

Add all the projects

In the projects section, add all the projects involved in Geektoberfest as cards. Add Relevant image for each repo, Project Title, Description, Maintainer Names and then a repo link button.

All the projects marked with 'hacktoberfest' tag in the GeekHaven org are part of Geektoberfest.

You can make use of Bootstrap cards, just make sure the Cards look good, the current card template present there is not to be used, it doesn't look that good.

Redesign footer

Following the colour scheme and design of the new navbar, redesign the footer using a similar design style, fonts etc. Try to keep it minimal.

Fix Social Icons in contact section not visible

Most Social Icons in the contact section are not visible, there is some class issue there. Make them visible again!

Make sure to update your repo to the latest version of this repo first, so you can see the issue and also to avoid conflicts.

Fix Geekhaven logo getting stretched

In the navbar, the Geekhaven logo is looking stretched.. It maybe because of the use of both width and height properties instead of one. Also fix the margin around the logo, currently it has some uneven margin, make it look better.

Create a new page /profile.html which takes username as parameter and shows the details of the participant.

Create a new page profile.html which takes the username as a parameter. For example the URL would be:
https://geekhaven.github.io/Geektoberfest-Main/profile.html?username=2802harsh

And then according to the username provided in the URL, first you can extract the username from URL, and fetch the details from the correct json file in the contributions folder and display a page showing the details of the mentioned participant.

You can get the json file using fetch(), the files should be hosted at https://geekhaven.github.io/Geektoberfest-Main/contributions/ so for example 2802harsh.json will be at https://geekhaven.github.io/Geektoberfest-Main/contributions/2802harsh.json

Add a mentors section

Similar to the participants section, add a mentors section below.

You can check the projects section for getting the names of mentors.

Each mentor should be in a card, with details such as Photo, Name, Github Link, Facebook Link. The card styling can be similar to the participants section.

Also add the Mentors menu item to the nav bar.

Fix countdown being separated from the 'Days' 'Hours' etc Labels.

image

The actual timer is separated from the Days Hours Minutes labels while actually the labels should be right below the numbers.

Fix this, however don't add extra space between the 'Event Ends In' label and the countdown, your task is to shift the 'Day Hours..' labels upwards, not the countdown downwards.

Custom cursor redesign

The current cursor is cool, but the color can be improved. Ideally, a blending mode which inverses the colors is desired, so the cursor is always visible. Also the cursor can change when hovering over a link or an icon.

Remember Dark/Light mode preference

Make the website locally remember the Dark Mode/Light Mode preference of the user. If I toggled Dark Mode on, then next time I open the site, it should default to Dark Mode toggled on. Similar with Light Mode.

You'll have to save user's preference in localStorage of the user's browser.

UI Redesign

Currently the site looks quite dull and bland. Add a good font and try to redesign the site as you see fit without changing the html structure

Change the Geekhaven logo in navbar to a white logo when dark mode is toggled on

image
When dark mode is toggled, we can barely see the black geekhaven logo. What you should do is change the geekhaven logo to a white version, when dark mode gets toggled, and then revert back to the old logo, when light mode gets toggled again.

You can find the white logo here: https://raw.githubusercontent.com/GeekHaven/GeekHaven-2020/master/images/gh.png
Or, you can possibly use css to invert the colours of the same logo, that maybe a better option.

Add smooth scroll on nav-link click

Currently, clicking the links on navbar scrolls the page abruptly, the scroll should be smooth. This may need a bit of JS. Add your JS in main.js in public/js and add a link to this file too in the html file

The title of the Profile Page should show participant's name

Right now the title is just a standard 'Profile'. This should be dynamic. According to the participant's name, the title should become 'Profile - Participant Name'

Example profile url is: https://geekhaven.github.io/Geektoberfest-Main/profile.html?username=2802harsh. You can change 2802harsh to your own username to get your own profile. So for example, this particular url's title should be 'Profile - Harshdeep Singh Pruthi'

Participants default picture

some participants have provided invalid image urls. See to it that a default picture is shown instead of whats currently showing.

Make the navbar sticky

The navbar should be visible from anywhere on the page. make it sticky without breaking the existing site. A live preview is expected with a PR

Add all the Participants

By dynamically using the JSON files in the contributions/ folder, add the details of all participants in the form of Cards.

A participant card should have their image, name, about, buttons to their fb/github, and number of PRs they have made so far.

DON'T USE THE CARD TEMPLATE ALREADY PRESENT, it doesn't look that good. You can use Bootstrap Cards.

Make sure to separate the JS into a js file in the public folder instead of adding JS to your html file.

Link Participant cards to their corresponding Profile.

Along with the Github/Fb Buttons, add a profile button to the participant cards which links the participant's profile.

A participant's profile will be located at:

https://geekhaven.github.io/Geektoberfest-Main/profile.html?username=xyz123

where xyz123 is the username of the participant.

The username of the participant should be stored in the variable participant in the js code where the participant cards get generated.

[IMPORTANT] Add your PRS

After every Pull Request of yours that gets merged, you have to add its details to your contribution JSON file so that we can keep track of your contributions. Instructions on how to add PR details are given below:

To add your pull requests, open contributions folder and in their add your own json file with file name as your Github Username. Please maintain the following format EXACTLY (replacing values where indicated):

     {
        "name" : "Participant Name",
        "imageurl" : "https://sample-website/image.jpg",
        "about" : "Hello I'm a web developer",
        "facebook": "facebook-url",
        "github" : "github-url",
        "prs": [
            "https://github.com/link/to/pr/1",
            "https://github.com/link/to/pr/2",
            ...
        ]
     }

As you get more PRs merged, you can keep updating the same file. A sample file has been placed in the folder for your convenience. Make sure to update your file as soon as you get a PR merged.

You don't need to mention this issue, just make sure the commit message mentions that you are updating your PR file.

Smooth scrolling on clicking a navbar menu item only works on Chrome

If I click on lets say 'Projects' menu item in the nav bar, the website should smoothly scroll to the projects section, instead of just snapping into it. (Just like there is scroll animation in the Scroll To Top button)

Currently, smooth scrolling is implemented but only works on Chrome/Brave browsers, make it work on all browsers. (Edge etc)

Custom cursor and scrollbar

The default cursor and the scrollbar are getting in the way of the overall theme. They need to be customized.
(the cursor doesn't need to be flashy or animated, a simple dot which is visible anywhere in the page would do)

Make the site responsive

Currently the site breaks at mobile and tablet widths. Add responsiveness to the site, so that it looks good, especially for mobile devices.

Fix Navbar cropping stuff when menu elements are clicked.

Since the navbar is hovering above and the entire page is pushed upwards to take the space of the previously non-sticky navbar, smooth scroll navigation is ending up in cropped sections.

Example:
image
Clicking on Projects leads me to here, it assumes there is no navbar there and shows cropped up, thus, hiding the Projects heading. Ideally the section should appear below the navbar

Add a contact section

Currently there's no contact section in the page. Add a section at the end before the footer and add social media icons (these links' hrefs may be left empty, we will update it).

make this site responsive

All the major work is done, but the site is still unbearable in smartphones. Making this extended site responsive without breaking the existing functionality can prove to be a challenge, but we need help and any contribution is welcome.

Add a Night Mode Toggle Button

Add a button which lets you toggle between Night Mode and the current color scheme.

For implementing dark mode colors, you can google some good dark mode color palettes. Also, make sure the toggle button is not too big and distracting, it should be a small icon in the top right.

Redesign profile page.

Each person's profile page is now available.

Example URL: https://geekhaven.github.io/Geektoberfest-Main/profile.html?username=2802harsh. You can change 2802harsh to your own username to get your own profile.

You have to redesign this profile page to look better(Make sure to check pages of different profiles to verify your styling is consistent):

  1. Improve the header. Better font, also fix the grammer, coloring.
  2. Show the number of PRs made.
  3. Show the PRs in a styled table instead of a list, and make sure they are hyperlinked(they cannot be clicked as of now)
  4. Improve the overall font and sizes etc, make it look good.
  5. Make the social icons a little bigger and better placed.

navbar redesign 2

The night mode toggle button should not be in the middle, but in the extreme right. Also if the bottom shadow on link hover can be removed, and there's a transition duration to the hover effect, it will look better. (the navbar has a responsive feature, so also see that your redesign works well in mobile devices). Take inspiration from this-
image

Navbar redesign

The navbar is back to being non-sticky due to latest redesign commits. Also the brand is somewhat smaller than the links. They should be of equal size or the other way around. Also the current effect on hover is somewhat subtle. All these should be fixed without changing the current structure and functionality of the element

Style participants section

Participants are finally visible but their the styling is unfinished. Add bootstrap cards or sth to make the section look better.
(the participant divs are in main.js and are dynamically being rendered from there, so keep that in mind and don't break the code)

Add a 'Scroll to Top' Button

It should be floating in the bottom right side when scrolling down. Choose an appropriate icon for the button

Shorten too big Abouts of Participants with "..."

Some participants have too big Abouts. Example:
image

and it is messing with the styling of the card.

So if the About of someone is bigger than some word limit, then end it with "..." after the limit. For example, you can set the character limit as 70. If someone has About more than 70 then you can just end it after 70 with "...".
70 is just a random guess, find the number which is big enough and doesn't mess with the styling.

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.