Python Software Foundation GSoC Ideas

Integrate and test Roundup's REST API on bugs.python.org

For this project the student will have to integrate the REST API that is being added to upstream Roundup to bugs.python.org (b.p.o). The student will also develop several tools and features that employ the REST API.

Project goals

The main goals of this project are:

  • Update our instance of Roundup on b.p.o
  • Test the new REST API on a real-world tracker
  • Write tools to improve developers workflow
  • Enhance/fix and port improvements upstream

Difficulty

  • Intermediate

Languages involved

  • Python
  • JavaScript
  • HTML
  • CSS

Technologies used

  • Roundup
  • REST
  • AJAX
  • A JS framework (TBD)

Timeline

  1. Integrate the REST API on bugs.python.org
  2. Make sure all the tests pass
  3. Develop tools and features that employ the REST API
  4. Improve and fix the REST API as needed
  5. Port improvements and fix upstream
  6. GOTO 3

The changes will be first developed and tested on a test tracker. Once deemed stable, the changes will be deployed on b.p.o.

After the initial setup, several different tools and features can be developed until the end of GSoC. These will also be developed and tested on the test tracker first.

Tools and features

Possible tools and features include:

  • Tools to easily generate random issues/messages, useful for testing
  • Command-line interface to access the tracker
  • Advanced statistics, graphs, leaderboards
  • Real time filtering/ordering of issues
  • Customizable dashboard
  • Related issues suggestions
  • Simpler integrations with other services (GitHub, IRC, etc.)

Mentors

  • Ezio Melotti

Contacting the PSF team

Most of our communication will take place in the issue tracker under the label 'GSoC Discussions' or on IRC, just say the mentors names in the channel and one of them should get back to you shortly. Not sure where to ask? Try here! IRC: Contact us using the main python-gsoc channel, #python-gsoc on freenode. (How to connect.). Note most of all our developers are located in US Pacific Standard time at this time.

Initial small pr Ideas:

A List of small bite-sized ideas are located at https://github.com/python-gsoc/python-blogs/issues dont forget to be accepted all students must make at least 1 pull request!

Questions?

If you have any questions please feel free to message any of the mentors posted above on irc, they should be able to help you.

GSoC Blog Platform

Students should start by reading the guidelines for participation. Google also provides guidelines to help with writing a proposal as part of their GSoC Student Guide. It is a good idea to start on your proposal early, post a draft to the python-gsoc chat room and let one of the mentors know so they can review it and iterate based on the feedback you receive. This will only improve the quality of your proposal.

Getting Started

1) Pull down the code and look at the README and make sure you can run the code.
2) Log in using the default credentials admin/admin
3) Check out the bite sized issues There's suggestions about good beginner tasks there, or talk to the mentors and come up with your own! This will be your first contribution!

Writing your GSoC application

Instructions on How to apply can be found on the Python GSoC website. Please don't forget to use our name (PSF) in your application title!

Project Ideas

Creation of multi-user blogging platform for GSoC, this will involve allowing admins to administer all blogs, however, allow students to only have access to there own blogs. Currently, WordPress multi-site is used for this.

difficulty - beginner

Programming languages involved

1) CSS
2) Javascript
3) Python
4) SQL

Technologies used

1) Django
1) Django CMS
2) Aldryn Newsblog
3) pure.css
4) jquery
5) mariadb

Skills required

1) Web development
2) basic knowledge of databases
3) multi-browser testing


The project will involve using djangocms-blog (unless there something better out there?) to create a website for the GSoC student blogs. This project will involve extending djangocms-blog to allow for the creation of a "student" user who is able to login and post/edit their own blog. The system will also need to be able to send email notifications on a set schedule when there is not a blog post as well as other notifications that will be defined. Additionally, the system will need to be able to tie students to suborgs so that future GSoC years can be looked back on for reference. Additionally, there will need to be RSS feeds for each student blog as well as an overall RSS feed for the entire system, on top of a sitemap for the entire site. Lastly, a single page showing current year student blogs as an infinite scrolling page. Lastly there will need to be a sub-orgs applications page that will auto update the bot, create them on the mainpage etc.

Mentors - Botanic, dotgourav, Meflin, Warthog9