#39 Outreachy : fedora-search a new package search engine for Fedora
Closed 4 years ago by cverna. Opened 5 years ago by cverna.

This is a proposed project for Outreachy. Note that once this ticket is
approved you will have to register as a mentor on the Outreachy page
and enter this information again. Many of these questions are based on
the application on the Outreachy website.

  • One-line name
    fedora packages search engine
    -- Short title for this internship project proposal.
    Create a website that allow people to search for packages available in Fedora.
  • Longer description of project
    The Fedora project currently has a website that allow someone to search for available packages in Fedora but the code base of this project is getting old and it has become very difficult to maintain. The goal of this project is to restart fresh and use more recent technology (Python 3, Flask or Django framework, Openshift). This project will also give exposure to DevOps practice like Continuous Integration and Continuous Deployment.
  • License of the project
    GNU General Public License v3.0
  • Longevity (How long has the team accepted contributions)
    This will be a new project.
  • Community size
    Fedora users
  • How will this project benefit Fedora
    Allow the Fedora users to accurately search for a package and get useful information about the packages.
  • Sample plan of work for the 12 week internship.
    Study the Python Whoosh library
    Add support for the indexing of Fedora's packages, ie which details should be stored and available for the full text search engine
    Add backend API to do a full text search query against the index
    Setup a Continuous Integration pipeline.
    Deploy the application in Fedora staging infrastructure
    Build a frontend page that call the API and display the results
  • Benefits to intern (What will the intern get out of this internship)
    Web application development (Python Flask backend, Javascript frontend)
    Learning about full search text technology
    DevOps Practice CI/CD and deployment in containers (Openshift)
    Exposure to Pair Programming and Test Driven Development
  • Project website
    Currently : https://apps.fedoraproject.org/packages/
    Will be : https://search.fedoraproject.org
  • Project repo
    https://github.com/fedora-infra/fedora-search
  • Where can an applicant find application tasks?
    https://github.com/fedora-infra/fedora-search/issues
  • IRC
    freenode #fedora-apps
  • Skills required including what level and if they are optional
    Python , Flask or Django framework (Intermediate)
    Javascript

  • Outreachy applicants are required to make a contribution as part of the
    application. What is the process for making a contribution?
    Check for good first issues in github

Questions from the top level Outreachy Program for the mentor application:
- How long have you been contributing to the community: almost 3 years
- What is your current role : Member of the Fedora Infrastructure Team, and maintainer of the current search application.
- Have you mentored for a three-month internship program before : No
- Have you read the mentor page and understand the process of being a mentor : Yes
- Are you available for 5 hours a week during the internship period : Yes
- Are you available for 5-10 hours a week during the application period : Yes
- Are you aware you need to sign a mentor contract : Yes


I submit this before it is too late, I have yet to create the github repo for the project, but I ll do that later today and update the description of the issue.

Metadata Update from @labbott:
- Issue tagged with: Outreachy

5 years ago

I really like this project idea but we'd need to define the application tasks better for first time contributors since there are none right now. I'm also worried that starting a project from scratch with no code checked in is difficult for many Outreachy applicants. The deadline for Outreachy is approaching fairly quickly. Would you be open to moving this for the May-Aug round?

@labbott, agreed that will leave me more time to work on the tasks and setup an initial project.

We're midway through the current session so it's time to think about the next session. Would you be willing to specify this out a bit more for next round?

Metadata Update from @cverna:
- Issue status updated to: Closed (was: Open)

4 years ago

Closing this but preparing a new proposal for a project that might be more suitable.

Login to comment on this ticket.

Metadata