coala / projects

A website that showcases interesting projects, using Angular JS.
https://projects.coala.io/
GNU Affero General Public License v3.0
116 stars 223 forks source link

Project Proposal: Enhance & Improve coala community & projects website with new features in webservices #691

Closed KVGarg closed 5 years ago

KVGarg commented 5 years ago

Project Proposal

Improvements and Enhancements in community website

Enhancements

  1. Gamification Leaderboard

    • Addition of a new column named issues that will show all the labels of issues that user has solved.
    • Addition of a Search bar where a user can search any username in case there is a long record displayed on the page and a filter option can also be provided where the user wants to view a set of records according to needs.
    • If possible, we can add a new column in leaderboard which will display the total time taken by the user to solve all the issues that were assigned.
    • Instead of displaying activities on the leaderboard page we can show these activities on the profile page (to be created) as it will save space on the leaderboard page and we can accumulate more data and columns.
    • Filtering of records between GCI participants and NON-GCI participants.
    • (Thinking on) Changing static website to dynamic website because the records of users are not static they change with time as they gain new skills, solve new issues, no more a GCI participant as they are have grown up (in terms of age) etc.
  2. Homepage

    • We can show up a leaderboard that shows up top 10(or more) contributors of the current month(a drop-down having options with the weekly, monthly or yearly view) and NON-GCI & GCI participants will have a separate leaderboard, will have a drop-down option.
  3. Add Login/Sign-up using GitHub

  4. Create Profile Page

    • Requirements: User should be logged in using GitHub
    • Display all user related information and stats like it's rank, issues solved by that user, graph, contribution details and many more.
  5. User

    • If possible, we can store the contribution details of users i.e. how much a user has contributed to which repository/community more and we can display that data on the graph or in some other format.
    • In Leader-board, we can set username a hyperlink which will link to a profile page of the user(to be created).
    • Provide gitter link to do private-chat with the contributor
  6. Community Members

    • Currently, static data of members of community is displayed without any update in contributor-data. Making use of pagination and live query, the data of contributors can be updated.
    • Also, members in the community is not a constant quantity. It keeps on changing with time. Using live queries will maintain the records. Data is currently being fetched from @sks444 contrib.json
  7. Community Logo + Header Image of README.md

    • Issue reference - #55

      Should be replaced with a project specific logo which symbolises creating/supporting/growing communities.

  8. Contributors Geolocation

    • Issue reference - #18

      A way to get participants’ geolocation is important for any org to show its global influence, this can be used for map display and statistics.

  9. Organisation Teams

    • Issue reference - #12 Teams Endpoint in GitHub API v3
  10. Mentors

    • Issue reference - #11 Ways we can achieve this - a. Projects repository or b. The admin can enter the usernames of mentors through django admin dashboard or c. Create a Dashboard for Maintainers or Admins from where they can manage the website database.
  11. Newcomer Invitation form

  12. Promotion to developer form

    • Issue Reference #89
  1. Feedback form

    • It is always useful to know what developers or community has a point of view for our community.
    • Later we can use nltk to do NLP and get some great results about our community.
    • Primary, focus will be on to create a feedback form and a database model for it.
    1. Assigning Issue
      • Get yourself assigned to issue
      • Based on checks, the issue will be assigned -
        • Not assigned to any other issue
        • If assigned, the issue has a PR to close it

Improvements

  1. Gamification Leaderboard

    • Display all rendered results in a table format because currently the results are shown in a paragraph format
    • To make it more creative, we can show some medals/badge emojis based on data in badges columns and show these emoji beside the username.
  2. UI

    • Re-designing of the website and making it responsive so that it looks good on different devices.
    • In Inactive Issue and unassigned issues activity web pages, instead of showing just JSON they should be displayed in proper format with some extra important information.
    • Contributors and Meta-Review data web pages should be redesigned to make it look good.
  3. Various bug fixes -

    • Build failure for more than one remote #235
    • Netlify build failure for fork #232
    • Restructure and redesign existing website #44
      • This proposal closes this issues.

Improvements and Enhancements in projects website

Enhancements

  1. In reference to project proposal #394

    • Currently, the website shows all projects together (Completed, Disabled and Open projects). Instead of showing them together we can group this projects so that user can easily navigate to any section.
    • A new section can be added that can show the count of grouped projects(e.g. their x open projects, y disabled projects and z completed projects).
    • Also, IMO we can show stats of projects like how many new projects proposals were accepted out which how many were completed and compare it with previous years data. (Thinking more on it if it can be more enhanced).
    • Since coala provides a linter for the code so we can provide information on how a particular completed project will benefit other orgs. And how they can use them in there code maintenance.
  2. Add Filters for searching projects #559

  3. Create tab for all the google forms #284

  4. Add posts / calendar app to projects website #560

  5. GSoC Students

    • Show all students that have been selected for GSoC in past years.
    • Design - A Collage or like admins/mentors are shown under mentors tab
    • Note: Whether it should be displayed on projects website or on community website or on both?.

Improvements

  1. UI

    • Re-designing of Index Page
    • Add UI to reports page that lists all previous year GSOC project.
    • Improve UI of user reports page.
      • The responsive view looks to ugly need to be improved.
  2. Various bug fixes -

    • Mark issues - Open, Merged or Closed #298
      • Use of github & gitlab api - functionality can be added to webservices
    • Remove completed projects or "Completed" tags for projects #342
      • Proposal splits the projects into different sections

Extension to GSoC 2018 project with new additions and in reference to project proposal.

Some enhancements and improvements needs new methods in webservices

rishikesh1410 commented 5 years ago

Improvements in HomePage

We can make a sidebar for the links and when user click on any particular link, open the corresponding page in the right side of the sidebar. This will save the time of user to switch to different page.

KVGarg commented 5 years ago

@sims1253 @damngamerz Would you guys like to be a mentor for this project ?

sims1253 commented 5 years ago

@KVGarg no time any more sadly.

damngamerz commented 5 years ago

Sure sounds interesting to me. @hemangsk would you like to get onboard this year? This sounds like your thing. @KVGarg You can start creating a proposal. Follow the template from faq section of projects page. Although your points are concrete but I think you need to create a proper schedule for this. This looks like a lot of work imo, if you're designing it from scratch.

KVGarg commented 5 years ago

Thank you, for being the mentor for this project. I will start creating an application proposal with addition, a PR to projects repository to list the project idea in the current ideas list. 👍

KVGarg commented 5 years ago

Yeah, I also realized that it requires lot of work but I will manage time since we'll be having a summer-break of around 1.5 months in that I'll try to cover some of coding phase 2 in phase 1 only, so that no hurdles come in-between the participation

KVGarg commented 5 years ago

@damngamerz I've contacted @hemangsk 4 days back via email, he said that he isn't sure whether he will be available or not this year to mentor any project due to some other commitments. It would have been great if he was available to mentor this year.

KVGarg commented 5 years ago

@damngamerz @sks444 Need some ideas on how can other orgs can use our projects website ? Can you guys give me some ideas ?