diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b04aa8a487ea0b54d040c00b5451de72538f0859..6ac69b740a54a17fc241fee31374f761bc7f2f52 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,7 +4,7 @@ pages: tags: - docker-amd64 script: - - sphinx-build -b html . public + - "./gitlab-build.sh" artifacts: paths: - public \ No newline at end of file diff --git a/README.md b/README.md index a1693e7dd05142259e7ba8a2cee12237249d5ec1..259dd8e844807f76b3a04361b0ef722ce5e0cae4 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ Status updates for BeagleBoard.org's Google Summer of Code program. Primary resources: -* [Forum](https://forum.beagleboard.org/c/gsoc) +* [Forum](https://bbb.io/gsocml) * [Live chat](https://bbb.io/gsocchat) * [Project documentation template](https://gsoc.beagleboard.io/project-docs-template) diff --git a/_static/images/explore-ideas.webp b/_static/images/explore-ideas.webp new file mode 100644 index 0000000000000000000000000000000000000000..f44bbb7adeb6834eec698d9d451fcd121e8376cc Binary files /dev/null and b/_static/images/explore-ideas.webp differ diff --git a/_static/images/favicon.ico b/_static/images/favicon.ico deleted file mode 100644 index e96154d507400f4d1ad0c844a47f9d3455af3917..0000000000000000000000000000000000000000 Binary files a/_static/images/favicon.ico and /dev/null differ diff --git a/_static/images/ideas-below.webp b/_static/images/ideas-below.webp new file mode 100644 index 0000000000000000000000000000000000000000..26916bc16d8aca8fa5802a96f2ca97c8a24500bf Binary files /dev/null and b/_static/images/ideas-below.webp differ diff --git a/_static/images/project-with-beagleboard.webp b/_static/images/project-with-beagleboard.webp new file mode 100644 index 0000000000000000000000000000000000000000..b73255cfa73afb918507ecc01cd35e17e5514f29 Binary files /dev/null and b/_static/images/project-with-beagleboard.webp differ diff --git a/_templates/pdf.html b/_templates/pdf.html new file mode 100644 index 0000000000000000000000000000000000000000..6f6e190e89063bde94b715278b4d2e25194dc8f1 --- /dev/null +++ b/_templates/pdf.html @@ -0,0 +1,9 @@ +{% if pages_slug != "index" %} + {% for proposal_name in proposals %} + {% if pagename == "proposals/"+proposal_name %} + <a class="btn btn-danger btn-sm btn-block text-light" role="button" href="{{proposal_name}}.pdf"> + <i class="fa-solid fa-download"></i> {{proposal_name}}.pdf + </a> + {% endif %} + {% endfor %} +{% endif %} \ No newline at end of file diff --git a/conf.py b/conf.py index 97c04781da4ec56b23d4a7df26d45c326fb32e8f..e88b28ed36ae592e6002adb62e4cb057ea9ad43c 100644 --- a/conf.py +++ b/conf.py @@ -10,7 +10,7 @@ import os import sys from pathlib import Path from typing import Any, Dict - +from os import walk import pydata_sphinx_theme from sphinx.application import Sphinx @@ -26,6 +26,7 @@ author = 'BeagleBoard.org' extensions = [ "sphinx_design", "sphinxcontrib.youtube", + "sphinx_copybutton" ] templates_path = ['_templates'] @@ -53,9 +54,16 @@ html_css_files = [ 'css/custom.css', ] +# Pages entry without primary (left) sidebar + +html_sidebars = { + "ideas/index": [], +} + html_theme_options = { "header_links_before_dropdown": 4, - "icon_links": [ + "show_prev_next": True, + "icon_links": [ { "name": "OpenBeagle", "url": "https://openbeagle.org/", @@ -70,13 +78,13 @@ html_theme_options = { }, { "name": "Discord", - "url": "https://discord.com/invite/e58xECGWfR", + "url": "https://bbb.io/gsocchat", "icon": "fa-brands fa-discord", "attributes": {"target": "_blank"}, }, { "name": "Forum", - "url": "https://forum.beagleboard.org/c/gsoc", + "url": "https://bbb.io/gsocml", "icon": "fa-brands fa-discourse", "attributes": {"target": "_blank"}, }, @@ -99,7 +107,7 @@ html_theme_options = { "show_toc_level": 1, "navbar_align": "right", "show_nav_level": 2, - "announcement": "Welcome to new site for BeagleBoard.org GSoC 2024 projects!", + "announcement": "Welcome to the new site for BeagleBoard.org GSoC 2024 projects!", # "show_version_warning_banner": True, "navbar_center": ["navbar-nav"], "navbar_start": ["navbar-logo"], @@ -108,8 +116,20 @@ html_theme_options = { "footer_start": ["copyright"], "footer_end": ["last-updated"], # "content_footer_items": ["last-updated"], + "secondary_sidebar_items": { + "**": ["page-toc", "edit-this-page", "sourcelink","pdf"] + } } +proposals = [] +proposal_filenames = next(walk("proposals"), (None, None, []))[2] +for proposal_filename in proposal_filenames: + proposal_filename = os.path.splitext(proposal_filename)[0] + if proposal_filename != "index": + proposals.append(proposal_filename) + +print(proposals) + html_context = { "display_gitlab": True, "gitlab_url": "https://openbeagle.org", @@ -125,6 +145,7 @@ html_context = { "edit_page_url_template": "{{ my_vcs_site }}{{ file_name }}", "edit_page_provider_name": "OpenBeagle", "my_vcs_site": "https://openbeagle.org/gsoc/gsoc.beagleboard.io/-/edit/main/", + "proposals":proposals } # -- Options for proposal PDF generation -- @@ -143,8 +164,9 @@ latex_elements = { ) ), } + latex_engine = "xelatex" latex_logo = str("_static/images/logo-latex.pdf") -latex_documents = [ - ("proposals/template", "template.tex", "Project proposal template 2024", "John Doe", "manual"), -] \ No newline at end of file +latex_documents = [] +for proposal in proposals: + latex_documents.append(("proposals/"+proposal, proposal+".tex", "",author, "manual")) diff --git a/gitlab-build.sh b/gitlab-build.sh new file mode 100755 index 0000000000000000000000000000000000000000..c410163b0512774496fd3f767e63add153a83a9f --- /dev/null +++ b/gitlab-build.sh @@ -0,0 +1,25 @@ +#!/bin/bash -xe +mkdir -p public + +echo "**** Updating $PAGES_URL/$VER_DIR ****" +echo "**** env ****" +env + +# Clean build directory +make clean BUILDDIR=public + +# Render HTML +make html BUILDDIR=public +mv public/html/* public/ + +# Render PDF +make latexpdf BUILDDIR=public/ +mv public/latex/*.pdf public/proposals + +# Cleanup +echo "**** cleanup ****" +rm -rf public/doctrees +rm -rf public/latex + +echo "**** env ****" +env \ No newline at end of file diff --git a/guides/contributor.rst b/guides/contributor.rst new file mode 100644 index 0000000000000000000000000000000000000000..95adb458ace21e8f69f95b314fba12f735667f99 --- /dev/null +++ b/guides/contributor.rst @@ -0,0 +1,51 @@ +.. _gsoc-contributor-guide: + +Contributor Guide +################# + +.. youtube:: YN7uGCg5vLg + :width: 100% + :align: center + +General requirements +******************** + +All projects have the following basic requirements: + +1. Contributors must create accounts on our `OpenBeagle <https://openbeagle.org/>`_, `Discord <https://bbb.io/gsocchat>`_ and `Beagle Forum <http://bbb.io/gsocml>`_ prior to creating their application. +2. All newly generated materials must be released under an `open source license <http://www.opensource.org/licenses>`_. Individual contributors shall retain copyright on their works. +3. Contributors will demonstrate their ability to cross-compile and utilize version control software by creating a “Hello World†application and generating a pull request to `jadonk/gsoc-application <https://github.com/jadonk/gsoc-application/tree/master/ExampleEntryJasonKridner>`_. For assistance, please visit our `Discord <https://bbb.io/gsocchat>`_ or utilize the `Beagle Forum <http://bbb.io/gsocml>`_. The “Hello World†application must print your name and the date out in an ARM Linux environment. Freely available emulators may be used to test your application or you can ask anyone on the chat or mailing list to help you test. +4. All projects will produce reusable software components and will not be “what–I-built-over-my-summer-vacation†projects. Including a hardware component is welcome, but the project deliverable will be software that may be utilized by a wide audience of the `BeagleBoard.org <https://www.beagleboard.org/>`_ community. +5. Contributors will demonstrate their ability to collaborate by creating a project proposal on this site using our :ref:`proposal template <gsoc-proposal-template>` and utilizing our `Discord <https://bbb.io/gsocchat>`_ to collect quotes regarding the usefulness of their proposal to the `BeagleBoard.org <https://www.beagleboard.org/>`_ community. **Use of Google Docs for proposal development is discouraged due to insufficient revision control and extensive use of computing resources having numerous documents open simultaneously**. +6. Source code generated during the project must be released on OpenBeagle (and we’ll setup a mirror on `Github.com <http://github.com/>`_). +7. Contributors will provide two recorded audio/video presentations uploaded to Youtube or Vimeo (screencasts are appropriate), one near the beginning of the project summarizing their project goals and another in the wrap-up phase to summarize their accomplishments. Examples can be found on `http://beagleboard.org/gsoc <http://beagleboard.org/gsoc>`_. There is no requirement to show your faces or use English. + +.. important:: + + To help you to break your project down into manageable chunks and also to help the project’s mentors to better support + your efforts, weekly project status reports should be e-mailed to the the `Beagle Forum <http://bbb.io/gsocml>`_. + Each status report should be posted by every Monday and must include these outlines: + + 1. Accomplishments + 2. Resolutions to blockers + 3. On-going blockers + 4. Plans for this week + + For example, `Weekly Progress Report Thread: + Cape Compatibility <https://forum.beagleboard.org/t/weekly-progress-report-thread-cape-compatibility/28709/9>`_ + +Student proposals can encompass projects based on the :ref:`ideas page <gsoc-project-ideas>` or can include personal project ideas, +but should be focused on generating a sustainable and reusable open source software component. Previous Google Summer of Code projects show +that the key to success is being passionate about your project, so propose something that is extremely interesting to you, even +if it is not on this list. We will be glad to help contributors develop ideas into projects via our `Discord <https://bbb.io/gsocchat>`_ +and `Forum <https://bbb.io/gsocml>`_. There are many potential project ideas and we will match contributors to projects +based on their interests and help scope the proposals to something that can be completed in the Summer of Code timeframe. + +.. tip:: + There are more than a thousand existing projects listed at `Projects Archive <http://www.beagleboard.org/projects>`_. + If you are interested in any of the projects listed on the `BeagleBoard.org <https://www.beagleboard.org/>`_ projects page, + contact the project members to see if there are any aspects of their projects that can be enhanced to create a GSoC project. + There are also several ideas on the `ECE497 class project idea list <https://elinux.org/ECE497_Project_Ideas>`_. + Note, however, we are looking for projects that provide a service to the developer community and aren’t simply “look what cool + thing I made or you can makeâ€. The projects should provide a useful software component for other people to utilize. + diff --git a/guides/index.rst b/guides/index.rst new file mode 100644 index 0000000000000000000000000000000000000000..52c3867eeacf40f2d07cfecc02f83a45b7cf73dc --- /dev/null +++ b/guides/index.rst @@ -0,0 +1,61 @@ +.. _gsoc-guides: + +Guides +###### + +This section includes guides for :ref:`contributors <gsoc-contributor-guide>` & :ref:`mentors <gsoc-mentor-guide>` who want to participate +in GSoC 2024 with `BeagleBoard.org <www.beagleboard.org>`_. It's highly recommended to check `GSoC Frequently Asked Questions +<https://developers.google.com/open-source/gsoc/faq>`_. For anyone who just want to contribute to this site we also have +a step by step :ref:`contribution guide <gsoc-contribution-guide>`. + +.. card:: + :link: gsoc-contributor-guide + :link-type: ref + + :fas:`graduation-cap` **Contributor Guide** + ^^^^ + + If you want to increase your chances of being accepted into (and succeed during) Google Summer of Code, we strongly + encourage you to read this guide! It is particularly helpful for tips on writing a good project proposal and how + potential contributors should interact with the communities they are interested in working with during the program. + +.. card:: + :link: gsoc-mentor-guide + :link-type: ref + + :fas:`person-chalkboard` **Mentor Guide** + ^^^^ + + If you want to mentor for GSoC this year, read this short guide made for mentors wondering where to help. + +.. card:: + :link: gsoc-proposal-guide + :link-type: ref + + :fas:`file` **Proposal Guide** + ^^^^ + + To create an proposal on ``gsoc.beagleboard.io``, we have provided a reStructuredText template. The tamplate can be used + to create a live HTML version of the proposal as well as generate a PDF version for GSoC submission. + +.. card:: + :link: gsoc-site-editing-guide + :link-type: ref + + :fas:`file-signature` **Site Editing Guide** + ^^^^ + + For anyone who is looking to make changes to the ``gsoc.beagleboard.io`` site, you can checkout our site editing guide. We have + provided information on how to use OpenBeagle's integrated ``Web IDE`` for editing, ``CI`` for building and ``pages`` for + serving the rendered content. + + + +.. toctree:: + :hidden: + :maxdepth: 2 + + contributor + mentor + proposal + site-editing diff --git a/contrib/media/commit-branch.png b/guides/media/commit-branch.png similarity index 100% rename from contrib/media/commit-branch.png rename to guides/media/commit-branch.png diff --git a/contrib/media/commit-changes.png b/guides/media/commit-changes.png similarity index 100% rename from contrib/media/commit-changes.png rename to guides/media/commit-changes.png diff --git a/contrib/media/commit-success.png b/guides/media/commit-success.png similarity index 100% rename from contrib/media/commit-success.png rename to guides/media/commit-success.png diff --git a/contrib/media/commit.png b/guides/media/commit.png similarity index 100% rename from contrib/media/commit.png rename to guides/media/commit.png diff --git a/contrib/media/create-merge-request.png b/guides/media/create-merge-request.png similarity index 100% rename from contrib/media/create-merge-request.png rename to guides/media/create-merge-request.png diff --git a/contrib/media/edit-button.png b/guides/media/edit-button.png similarity index 100% rename from contrib/media/edit-button.png rename to guides/media/edit-button.png diff --git a/contrib/media/fork-button.png b/guides/media/fork-button.png similarity index 100% rename from contrib/media/fork-button.png rename to guides/media/fork-button.png diff --git a/contrib/media/fork-project.png b/guides/media/fork-project.png similarity index 100% rename from contrib/media/fork-project.png rename to guides/media/fork-project.png diff --git a/contrib/media/ide.png b/guides/media/ide.png similarity index 100% rename from contrib/media/ide.png rename to guides/media/ide.png diff --git a/contrib/media/make-edits.png b/guides/media/make-edits.png similarity index 100% rename from contrib/media/make-edits.png rename to guides/media/make-edits.png diff --git a/contrib/media/merge-request.png b/guides/media/merge-request.png similarity index 100% rename from contrib/media/merge-request.png rename to guides/media/merge-request.png diff --git a/contrib/media/repo-file-folders.png b/guides/media/repo-file-folders.png similarity index 100% rename from contrib/media/repo-file-folders.png rename to guides/media/repo-file-folders.png diff --git a/guides/mentor.rst b/guides/mentor.rst new file mode 100644 index 0000000000000000000000000000000000000000..1813a6f3c0f676295e94652497d679a7ec398bc0 --- /dev/null +++ b/guides/mentor.rst @@ -0,0 +1,43 @@ +.. _gsoc-mentor-guide: + +Mentor Guide +############ + +.. youtube:: 3J_eBuYxcyg + :width: 100% + :align: center + +.. important:: + + As a mentor you have to guide contributors through the entire process of GSoC, from learning + about `BeagleBoard.org <https://www.beagleboard.org/>`_ community, to helping GSoC Contributors + become familiar with the code base and testing practices, to finally releasing their code on + `OpenBeagle <https://openbeagle.org/>`_ for the world to use! + + You will also need be invited by an administrator to register on the GSoC site and request + to be a mentor for `BeagleBoard.org <https://www.beagleboard.org/>`_. + +`Mentors <https://google.github.io/gsocguides/mentor/>`_ are people from the community who volunteer to work +with a GSoC contributor. Mentors provide guidance such as pointers to useful documentation, code reviews, etc. +In addition to providing GSoC contributors with feedback and pointers, a mentor acts as an ambassador to help +GSoC contributors integrate into their project’s community. `BeagleBoard.org <https://www.beagleboard.org/>`_ +assign more than one mentor to each of their GSoC contributors. Many members of `BeagleBoard.org <https://www. +beagleboard.org/>`_ community also provide guidance to GSoC contributors without mentoring in an “official†+capacity, as much as they would answer anyone’s questions on our `Discord <https://bbb.io/gsocchat>`_ and +`Forum <https://bbb.io/gsocml>`_. + +.. note:: + Official mentors can use :ref:`gsoc-project-ideas` page as template for providing their own project ideas. + Remember these are supposed to be for software projects that service the Beagle and general open source + embedded systems community, not theses, how-to guides or what I did over my summer vacation ideas. + +Prospective mentors, sudents will use our `Discord <https://bbb.io/gsocchat>`_ and `Forum <https://bbb.io/gsocml>`_ +to make contact with you, so be sure to provide up-to-date information. Please feel free to add yourself on mentors page and we will monitor +and police that list. Acceptance as an official mentor with the ability to rate proposals and grade contributors will come via the Google system. +We will only approve official mentors who have a proven track record with Beagle, but welcome all community members to provide guidance to both +mentors and contributors to best service the community as a whole. Don’t be shy and don’t be offended when we edit. We are thrilled to have you on-board! + + + +.. tip:: + Check out the `official GSoC mentor guide <https://google.github.io/gsocguides/mentor/>`_ from Google. diff --git a/guides/proposal.rst b/guides/proposal.rst new file mode 100644 index 0000000000000000000000000000000000000000..67636251abd936188da1f0c3be8e6ec1fe17658c --- /dev/null +++ b/guides/proposal.rst @@ -0,0 +1,73 @@ +.. _gsoc-proposal-guide: + +Proposal Guide +############### + +.. admonition:: Did you know? + + Each year Google turns down many more applicants than it funds. While pre-proposal activities are key to + improving your chances of success, a poorly-written proposal is an easy way to fail. There is much you can + do to ensure that your project proposal catches the attention of organization reviewers in a positive way. + +How to write a successful proposal +*********************************** + +`BeagleBoard.org <https://www.beagleboard.org/>`_ has received a large number of GSoC student proposals over the years +that we have participated. Some of these proposals are quite good, but many are poor proposals that would +not be accepted by any organization participating in GSoC. + +How to write an *unsuccessful* proposal +======================================== + +Unsuccessful proposals often: + +1. Try to pass off previous school projects as something to do for GSoC. The work has already done, and the project often has very little to do with `BeagleBoard.org hardware <https://www.beagleboard.org/boards>`_, +2. Show up shortly before the submission deadline with only a half page of “proposalâ€, being little more than a name, contact information, and a statement of “I will work hardâ€, +3. Are generic and sent to every other GSoC org with very few details on deliverables or schedule, or +4. Introduce an idea that was never talked about to the `BeagleBoard.org <https://www.beagleboard.org/>`_ mentors in our `Forum <https://bbb.io/gsocml>`_ and submitted without ever engaging the Beagle community. + +Please be considerate of the time it takes for us to weed out these bad proposals. + +Elements of a successful proposal +================================== + +In order to be successful, a proposal has to be: + +1. Relevant to `BeagleBoard.org <https://www.beagleboard.org/>`_, +2. Around a topic that the mentors recognize from being discussed on our `Forum <https://bbb.io/gsocml>`_, possibly on our :ref:`gsoc-project-ideas` page, and sufficiently detailed that the mentors know exactly what you’ll be creating and when it will be done, +3. Shown to mentors via our `Forum <https://bbb.io/gsocml>`_ well before the submission deadline, so that the mentors can comment on it and offer suggestions that improve the proposal. + +.. tip:: + Start your proposal early, speak with the mentors often, and dedicate an appropriate amount of time to both thinking + about the deliverables for your project and how you can describe those deliverables in writing. + +Using proposal template +************************ + +To make the project proposal writing process easier for all the GSoC contributors we have created a :ref:`gsoc-proposal-template`. + +.. tip:: + Start with :ref:`gsoc-contribution-guide` to simplify the proposal writing process using OpenBeagle CI. It's always recommended to create a fork + of `gsoc.beagleboard.io repo on OpenBeagle <https://openbeagle.org/gsoc/gsoc.beagleboard.io>`_ and clone on your local machine. Instructions for + setting up Sphinx on local machine are also provided on :ref:`gsoc-contribution-guide`. For any query you, can reach out on + our `Discord <https://bbb.io/gsocchat>`_ or `Forum <https://bbb.io/gsocml>`_. + +You can either open your cloned `gsoc.beagleboard.io repo <https://openbeagle.org/gsoc/gsoc.beagleboard.io>`_ using Visual Studio Code on your local machine or use OpenBeagle Web IDE. Now, follow steps below to write your proposal, + +1. Create a copy of ``gsoc.beagleboard.io/proposals/template.rst`` in ``gsoc.beagleboard.io/proposals`` folder. Rename the file to reflect your project (``project-name.rst``) or your initials (``<myname>.rst``). It's recommended to follow the structure and use a filename with all smallcase letters and without any space. +2. Start editing your proposal, it should be straightforward if you already know reStructuredText. Don't worry if you are new to reStructuredText, checkout our `ReStructuredText Cheat Sheet <https://docs.beagleboard.org/latest/intro/contribution/rst-cheat-sheet.html>`_ which should guide you through writing your proposal using reStructuredText. +3. Commit your changes and push to your fork often. Share the commit links with mentors so that they can review your proposal drafts and provide their valuable feedback. +4. Check rendered version of your proposal on OpenBeagle pages, to view a rendered version of your updates you can go to ``<username>.beagleboard.org/<repo name>`` where ``username`` is your OpenBeagle username and ``<repo name>`` is the repository name you have selected while forking the project. For example, if username is ``lorforlinux`` and project name is ``gsoc.beagleboard.io`` the rendered site can be accessed live via `lorforlinux.beagleboard.io/gsoc.beagleboard.io <http://lorforlinux.beagleboard.io/gsoc.beagleboard.io>`_. + +.. tip:: + 1. For quick review, you can share OpenBeagle pages link with mentors and community members on our `Discord <https://bbb.io/gsocchat>`_ or `Forum <https://bbb.io/gsocml>`_. + 2. On secondry (right) side bar you will see a **PDF download button** like shown below. Click that button on your proposal page to download PDF version of your proposal which you can submit directly on GSoC porposal submission portal. + + .. raw:: html + + <br> + <a class="btn btn-danger btn-sm btn-block text-light" role="button" href="/proposals/template.pdf"> + <i class="fa-solid fa-download"></i> template.pdf + </a> + + diff --git a/contrib/index.rst b/guides/site-editing.rst similarity index 90% rename from contrib/index.rst rename to guides/site-editing.rst index 81ede1c14cfed42ab80987364c1845aecf1edc48..8faaa10e9423995eda0074a8c9154d66bcce0471 100644 --- a/contrib/index.rst +++ b/guides/site-editing.rst @@ -1,7 +1,7 @@ -.. _gsoc_contribution_guide: +.. _gsoc-site-editing-guide: -Contribution -############# +Site Editing Guide +################## `GSoC <https://gsoc.beagleboard.io/>`_ site uses `OpenBeagle Continous Integration (CI) / Continous Development (CD) <https://docs.gitlab.com/ee/ci/>`_ which is a continuous method of software development, where @@ -11,6 +11,25 @@ simple steps provided below. .. note:: `OpenBeagle <https://openbeagle.org/>`_ is a self hosted instance of open source program called `GitLab <https://about.gitlab.com/>`_. +.. tip:: + If you want to build on your local machine we have added ``venv-build-env.sh`` and ``requirements.txt`` + to help you setup sphinx and all the other dependencies. Execute these commands in your terminal, + + Install python modules and setup virtual environment, + + .. code:: shell + + . ./venv-build-env.sh + + Build and serve it live using ``sphinx-autobuild``, + + .. code:: shell + + make livehtml + + Now, you can open `http://127.0.0.1:8000 <http://127.0.0.1:8000>`_ on any browser to see the rendered HTML with live updates. + Clear cookies and site data in your browser window to view up to date site. + Fork the project ***************** @@ -153,5 +172,5 @@ below shows all the feilds you have to update, .. image:: media/merge-request.png :align: center -Now wait for the review and if comments/requests are raised then you can continue working on the project +Now wait for a review and, if comments are raised, then you can continue working on the project until everything looks perfect and your changes are merged in upstream. diff --git a/ideas/index.rst b/ideas/index.rst index 7d33982bf205e5198787e9e1b22abe51c65e1484..d00e6ee25ad3b9c9c0e665c39b2c324c27777724 100644 --- a/ideas/index.rst +++ b/ideas/index.rst @@ -1,58 +1,132 @@ +:html_theme.sidebar_primary.remove: true + .. _gsoc-project-ideas: Ideas ###### -Below are the project ideas for the GSoC 2024 sorted for better navigation. The BeagleBoard.org community is loaded -with experts on building open source embedded systems. An embedded system is build of computers -dedicated a specific collections of functions and connected to automate things in the physical world. +Welcome to the project ideas page for `GSoC 2024 <https://developers.google.com/open-source/gsoc/timeline>`_. An embedded +system is built using a computer dedicated to a specific purpose, like a toaster, coffee machine, dish washer, thermostat +or anti-lock brakes. You can think of an embedded system as a computer designed to not look like a computer +and to automate things in the physical world. + +.. image:: ../_static/images/ideas-below.webp + :align: center + +.. admonition:: Did you know? + + BeagleBoard.org has been accepted to be a mentoring organization in the Google Summer of Code (GSoC) for twelve previous years! + +.. admonition:: How to participate? + + Contributors are expected to go through the list of ideas below and join the discussion by clicking on the + ``Discuss on forum`` button. All ideas have colorful badges for ``Complexity`` and + ``Size`` for making the selection process easier for contributors. Anyone is welcome to + introduce new ideas via the `forum gsoc-ideas tag <https://forum.beagleboard.org/t/gsoc-ideas>`_. + Only ideas with sufficiently experienced mentor backing as deemed by the administrators will + be added here. -.. important:: - BeagleaBoard.org is a community centric organization and we keep all of our discussion open for our - community on `forum <https://forum.beagleboard.org/>`_. Discussion for all the ideas/projects will - be done via `forum <https://forum.beagleboard.org/>`_ as well and must be open for everyone to access. **No + .. table:: + + +------------------------------------+------------------------------------+ + | Complexity | Size | + +====================================+====================================+ + | :bdg-danger:`High complexity` | :bdg-danger-line:`Large size` | + +------------------------------------+------------------------------------+ + | :bdg-success:`Medium complexity` | :bdg-success-line:`Medium size` | + +------------------------------------+------------------------------------+ + | :bdg-info:`Low complexity` | :bdg-info-line:`Small size` | + +------------------------------------+------------------------------------+ + +.. important:: + + BeagleBoard.org is a community centric organization and we keep all of our discussion open for our + community on our `forum <https://bbb.io/gsocml>`_. Discussion for all the project ideas, proposals or development will + be done via our `forum <https://bbb.io/gsocml>`_ as well and must be open for everyone to access. **No direct messages should be sent to mentors or community members until unless there is a private matter.** -All the projects have colorful badges for making your choice easier, +.. grid:: 1 1 1 2 + :margin: 4 4 0 0 + :gutter: 4 -.. table:: + .. grid-item-card:: Low-latency I/O RISC-V CPU core in FPGA fabric + :link: https://forum.beagleboard.org/t/low-latency-risc-v-i-o-cpu-core/37156 - +------------------------------------+------------------------------------+------------------------------------+ - | Priority | Complexity | Size | - +====================================+====================================+====================================+ - | :bdg-danger:`High priority` | :bdg-danger:`High complexity` | :bdg-danger-line:`Large size` | - +------------------------------------+------------------------------------+------------------------------------+ - | :bdg-success:`Medium priority` | :bdg-success:`Medium complexity` | :bdg-success-line:`Medium size` | - +------------------------------------+------------------------------------+------------------------------------+ - | :bdg-info:`Low priority` | :bdg-info:`Low complexity` | :bdg-info-line:`Small size` | - +------------------------------------+------------------------------------+------------------------------------+ + :fas:`microchip;pst-color-primary` FPGA gateware improvements -.. admonition:: Did you know? + :bdg-success:`Medium complexity` :bdg-success-line:`Medium size` + ^^^ - BeagleBoard.org has been accepted to be a mentoring organization in the Google Summer of Code (GSoC) for twelve previous years! + BeagleV-Fire features RISC-V 64-bit CPU cores and FPGA fabric. In that FPGA fabric, we'd like to + implement a RISC-V 32-bit CPU core with operations optimized for low-latency GPIO. This is similar + to the programmable real-time unit (PRU) RISC cores popularized on BeagleBone Black. + + +++ + .. button-link:: https://forum.beagleboard.org/t/low-latency-risc-v-i-o-cpu-core/37156 + :color: danger + :expand: + + :fab:`discourse;pst-color-light` Discuss on forum + + + .. grid-item-card:: Update beagle-tester for mainline testing + :link: https://forum.beagleboard.org/t/update-beagle-tester-for-cape-mikrobus-new-board-and-upstream-testing/37279 + + :fab:`linux;pst-color-primary` Linux kernel improvements + + :bdg-success:`Medium complexity` :bdg-danger-line:`Large size` + ^^^ + + Utilize the ``beagle-tester`` application and ``Buildroot`` along with device-tree and udev symlink concepts within + the OpenBeagle GitLab continuous integration server context to create a regression test suite for the Linux kernel + and device-tree overlays on various Beagle computers. + + +++ + .. button-link:: https://forum.beagleboard.org/t/update-beagle-tester-for-cape-mikrobus-new-board-and-upstream-testing/37279 + :color: danger + :expand: + + :fab:`discourse;pst-color-light` Discuss on forum + + .. grid-item-card:: Upstream wpanusb and bcfserial + :link: https://forum.beagleboard.org/t/upstream-wpanusb-and-bcfserial/37186 + + :fab:`linux;pst-color-primary` Linux kernel improvements + + :bdg-success:`Medium complexity` :bdg-success-line:`Medium size` + ^^^ + + These are the drivers that are used to enable Linux to use a BeagleConnect Freedom as a SubGHz IEEE802.15.4 radio (gateway). + They need to be part of upstream Linux to simplify on-going support. There are several gaps that are known before they are + acceptable upstream. + + +++ + .. button-link:: https://forum.beagleboard.org/t/upstream-wpanusb-and-bcfserial/37186 + :color: danger + :expand: + + :fab:`discourse;pst-color-light` Discuss on forum + + .. grid-item-card:: ``librobotcontrol`` support for newer boards + :link: https://forum.beagleboard.org/t/librobotcontrol-support-for-newer-boards/37187 + + :fas:`wand-sparkles;pst-color-danger` Automation and industrial I/O -.. note:: - - We don't want to just make more things, we want to enabled individuals to make the things that dominate their lives, - rather than leaving it up to someone else. Google Summer of a Code with BeagleBoard.org is a great way to learn - skills highly in demand while making a difference in the world. + :bdg-success:`Medium complexity` :bdg-success-line:`Medium size` + ^^^ -.. toctree:: - :maxdepth: 2 - :hidden: - :caption: Project Ideas + Preliminary librobotcontrol support for BeagleBone AI, BeagleBone AI-64 and BeagleV-Fire has been drafted, but it + needs to be cleaned up. We can also work on support for Raspberry Pi if UCSD releases their Hat for it. - linux-kernel-improvements - rtos-microkernel-improvements - deep-learning - beagleconnect-technology - automation-and-industrial-io - soft-peripherals-using-co-processors - security-and-privacy - beaglebone-audio-applications - bela-applications - fpga-projects - other-projects + +++ + .. button-link:: https://forum.beagleboard.org/t/librobotcontrol-support-for-newer-boards/37187 + :color: danger + :expand: + :fab:`discourse;pst-color-light` Discuss on forum +.. tip:: + We don't want to just make more things, we want to enable individuals to make the things that dominate their lives, + rather than leaving it up to someone else. Google Summer of a Code with BeagleBoard.org is a great way to learn + skills highly in demand while making a difference in the world. diff --git a/ideas/automation-and-industrial-io.rst b/ideas/old/automation-and-industrial-io.rst.old similarity index 100% rename from ideas/automation-and-industrial-io.rst rename to ideas/old/automation-and-industrial-io.rst.old diff --git a/ideas/beaglebone-audio-applications.rst b/ideas/old/beaglebone-audio-applications.rst.old similarity index 100% rename from ideas/beaglebone-audio-applications.rst rename to ideas/old/beaglebone-audio-applications.rst.old diff --git a/ideas/beagleconnect-technology.rst b/ideas/old/beagleconnect-technology.rst.old similarity index 100% rename from ideas/beagleconnect-technology.rst rename to ideas/old/beagleconnect-technology.rst.old diff --git a/ideas/bela-applications.rst b/ideas/old/bela-applications.rst.old similarity index 100% rename from ideas/bela-applications.rst rename to ideas/old/bela-applications.rst.old diff --git a/ideas/deep-learning.rst b/ideas/old/deep-learning.rst.old similarity index 100% rename from ideas/deep-learning.rst rename to ideas/old/deep-learning.rst.old diff --git a/ideas/fpga-projects.rst b/ideas/old/fpga-projects.rst.old similarity index 100% rename from ideas/fpga-projects.rst rename to ideas/old/fpga-projects.rst.old diff --git a/ideas/linux-kernel-improvements.rst b/ideas/old/linux-kernel-improvements.rst.old similarity index 100% rename from ideas/linux-kernel-improvements.rst rename to ideas/old/linux-kernel-improvements.rst.old diff --git a/ideas/other-projects.rst b/ideas/old/other-projects.rst.old similarity index 100% rename from ideas/other-projects.rst rename to ideas/old/other-projects.rst.old diff --git a/ideas/rtos-microkernel-improvements.rst b/ideas/old/rtos-microkernel-improvements.rst.old similarity index 100% rename from ideas/rtos-microkernel-improvements.rst rename to ideas/old/rtos-microkernel-improvements.rst.old diff --git a/ideas/security-and-privacy.rst b/ideas/old/security-and-privacy.rst.old similarity index 100% rename from ideas/security-and-privacy.rst rename to ideas/old/security-and-privacy.rst.old diff --git a/ideas/soft-peripherals-using-co-processors.rst b/ideas/old/soft-peripherals-using-co-processors.rst.old similarity index 100% rename from ideas/soft-peripherals-using-co-processors.rst rename to ideas/old/soft-peripherals-using-co-processors.rst.old diff --git a/index.rst b/index.rst index db0dedfe958e3f69322e038be80e8ab60a0fc468..2938d488873fd581a26ccbad05d6dc74f8822c5c 100644 --- a/index.rst +++ b/index.rst @@ -8,18 +8,22 @@ GSoC @ BeagleBoard.org ####################### -Work on awesome open source projects this summer with BeagleBoard.org! +.. image:: _static/images/project-with-beagleboard.webp .. admonition:: What is Google Summer of Code? :class: admonition-code Spend your summer break writing code and learning about open source development while earning money! - Accepted students work with a mentor and become a part of the open source community. Many become lifetime + Accepted contributors work with a mentor and become a part of the open source community. Many become lifetime open source developers! The 2024 student application window will be open from `March 18th 2024 <https://developers.google.com/open-source/gsoc/timeline#march_18_-_1800_utc>`_ to `April 2nd 2024 <https://developers.google.com/open-source/gsoc/timeline#april_2_-_1800_utc>`_! - But don't wait for then to engage! Come to our `Discord <https://discord.com/invite/e58xECGWfR>`_ and - `Forum <https://forum.beagleboard.org/c/gsoc>`_ to share ideas today. + But don't wait for then to engage! Come to our `Discord <https://bbb.io/gsocchat>`_ and + `Forum <https://bbb.io/gsocml>`_ to share ideas today. + +.. youtube:: 7jD2tChhrWM + :width: 100% + :align: center .. note:: @@ -28,7 +32,9 @@ Work on awesome open source projects this summer with BeagleBoard.org! `Rules page <https://summerofcode.withgoogle.com/rules>`_ and the `FAQ page <https://developers.google.com/open-source/gsoc/faq>`_. -.. grid:: 1 2 2 3 +.. grid:: 1 1 1 3 + :margin: 4 4 0 0 + :gutter: 4 .. grid-item-card:: :link: https://openbeagle.org/ @@ -78,7 +84,9 @@ Work on awesome open source projects this summer with BeagleBoard.org! Get inspiration from some :ref:`Past_Projects`. -.. grid:: 1 1 3 3 +.. grid:: 1 1 1 3 + :margin: 4 4 0 0 + :gutter: 4 .. grid-item-card:: @@ -97,7 +105,7 @@ Work on awesome open source projects this summer with BeagleBoard.org! .. important:: - Students will be expected to execute a series of prerequisites to demonstrate and + Contributors will be expected to execute a series of prerequisites to demonstrate and expand familiarity with embedded systems development. Don't worry, the `live chat <https://bbb.io/gsocchat>`_ channel has over 1,000 active members to travel with you on your journey. @@ -110,8 +118,10 @@ Work on awesome open source projects this summer with BeagleBoard.org! made cheeseburgers. Check the below projects made by incredible professional innovators for some inspiration. -.. grid:: 1 2 2 2 - +.. grid:: 1 1 2 2 + :margin: 4 4 0 0 + :gutter: 4 + .. grid-item-card:: :fas:`rocket;pst-color-primary` Europa Rover Prototype @@ -128,16 +138,15 @@ Work on awesome open source projects this summer with BeagleBoard.org! .. youtube:: CbL_3le40qc :width: 100% -.. admonition:: Explore some specific project ideas for this year! - :class: hint - - Now you are ready to explore this year's :ref:`gsoc-project-ideas`. +.. image:: _static/images/explore-ideas.webp + :align: center + :target: ideas/index.html .. toctree:: :maxdepth: 2 :hidden: ideas/index + guides/index proposals/index - contrib/index projects/index diff --git a/projects/2010.rst b/projects/2010.rst index 67292ffd9b35bb2e18a1e931ecdba3bd09384bb0..0a7aba676728a663f3853ed291b0468c546da528 100644 --- a/projects/2010.rst +++ b/projects/2010.rst @@ -1,174 +1,195 @@ -.. _2010: +.. _gsoc-2010-projects: -2010 -##### +:far:`calendar-days` 2010 +########################## -.. grid:: 1 1 2 2 +.. card:: - .. grid-item-card:: Pulse Width Modulation (PWM) + :fas:`shield-dog;pst-color-primary` **Pulse Width Modulation (PWM)** - .. youtube:: d_vYMTuSGrM - :width: 100% - ^^^ - - .. dropdown:: More + ^^^^ - **Contributor:** Varun Jewalikar + .. youtube:: d_vYMTuSGrM + :width: 100% - **Mentors:** Søren Steen Christensen, Cristina Murillo + ++++ + + .. dropdown:: More - .. button-link:: https://www.google-melange.com/archive/gsoc/2010/orgs/beagleboard/projects/varun_jewalikar.html - :color: info - :shadow: - :expand: + **Contributor:** Varun Jewalikar - GSoC Registry + **Mentors:** Søren Steen Christensen, Cristina Murillo - .. button-link:: https://elinux.org/BeagleBoard/GSoC/2010_Projects/Pulse_Width_Modulation - :color: info - :shadow: - :expand: + .. button-link:: https://www.google-melange.com/archive/gsoc/2010/orgs/beagleboard/projects/varun_jewalikar.html + :color: info + :shadow: + :expand: - proposal + GSoC Registry - .. grid-item-card:: OpenCV DSP Acceleration + .. button-link:: https://elinux.org/BeagleBoard/GSoC/2010_Projects/Pulse_Width_Modulation + :color: info + :shadow: + :expand: - .. youtube:: TSgAzdaJ1Xo - :width: 100% - ^^^ + proposal - .. dropdown:: More +.. card:: - **Contributor:** Pramod Poudel + :fas:`shield-dog;pst-color-primary` **OpenCV DSP Acceleration** + ^^^^ - **Mentors:** David Anders, Andrew Bradford, Matt Porter, Luis Gustavo Lira + .. youtube:: TSgAzdaJ1Xo + :width: 100% - .. button-link:: https://www.google-melange.com/archive/gsoc/2010/orgs/beagleboard/projects/ppoudel.html - :color: info - :shadow: - :expand: + ++++ - GSoC Registry + .. dropdown:: More - .. button-link:: https://elinux.org/BeagleBoard/GSoC/2010_Projects/OpenCV#Documentation - :color: info - :shadow: - :expand: + **Contributor:** Pramod Poudel - proposal + **Mentors:** David Anders, Andrew Bradford, Matt Porter, Luis Gustavo Lira -.. grid:: 1 1 2 2 + .. button-link:: https://www.google-melange.com/archive/gsoc/2010/orgs/beagleboard/projects/ppoudel.html + :color: info + :shadow: + :expand: - .. grid-item-card:: XBMC Rendering Optimizations + GSoC Registry - .. youtube:: gvJ32T-W3Gw - :width: 100% - ^^^ - - .. dropdown:: More + .. button-link:: https://elinux.org/BeagleBoard/GSoC/2010_Projects/OpenCV#Documentation + :color: info + :shadow: + :expand: + + proposal + +.. card:: + + :fas:`shield-dog;pst-color-primary` **XBMC Rendering Optimizations** + ^^^^ + + .. youtube:: gvJ32T-W3Gw + :width: 100% - **Contributor:** Tobias Arrskog + ++++ - **Mentors:** Mike Zucchi, Mans Rullgard, Søren Steen Christensen + .. dropdown:: More - .. button-link:: https://www.google-melange.com/archive/gsoc/2010/orgs/beagleboard/projects/topfs2_tobias_arrskog.html - :color: info - :shadow: - :expand: + **Contributor:** Tobias Arrskog - GSoC Registry + **Mentors:** Mike Zucchi, Mans Rullgard, Søren Steen Christensen - .. button-link:: https://elinux.org/BeagleBoard/GSoC/2010_Projects/XBMC#Documentation - :color: info - :shadow: - :expand: + .. button-link:: https://www.google-melange.com/archive/gsoc/2010/orgs/beagleboard/projects/topfs2_tobias_arrskog.html + :color: info + :shadow: + :expand: - proposal + GSoC Registry - .. grid-item-card:: RPC layer and POSIX wrappers for C6Run + .. button-link:: https://elinux.org/BeagleBoard/GSoC/2010_Projects/XBMC#Documentation + :color: info + :shadow: + :expand: - .. vimeo:: 12796429 - :width: 100% - ^^^ + proposal - .. dropdown:: More +.. card:: + + :fas:`shield-dog;pst-color-primary` **RPC layer and POSIX wrappers for C6Run** + ^^^^ - **Contributor:** Yaman Umuroglu + .. vimeo:: 12796429 + :width: 100% + + ++++ + + .. dropdown:: More + + **Contributor:** Yaman Umuroglu - **Mentors:** Katie Roberts-Hoffman, Laine Walker-Avina, Frank Walzer + **Mentors:** Katie Roberts-Hoffman, Laine Walker-Avina, Frank Walzer - .. button-link:: https://www.google-melange.com/archive/gsoc/2010/orgs/beagleboard/projects/maltanar.html - :color: info - :shadow: - :expand: + .. button-link:: https://www.google-melange.com/archive/gsoc/2010/orgs/beagleboard/projects/maltanar.html + :color: info + :shadow: + :expand: - GSoC Registry + GSoC Registry - .. button-link:: https://elinux.org/BeagleBoard/GSoC/2010_Projects/C6Run#Documentation - :color: info - :shadow: - :expand: - - proposal + .. button-link:: https://elinux.org/BeagleBoard/GSoC/2010_Projects/C6Run#Documentation + :color: info + :shadow: + :expand: + + proposal -.. grid:: 1 1 2 2 +.. card:: + + :fas:`shield-dog;pst-color-primary` **USB Sniffer** + ^^^^ - .. grid-item-card:: USB Sniffer + The goal of this project is to use the BeagleBoard as an USB sniffer. The host computer would be connected + to the slave USB port of the BeagleBoard, and the device to be sniffed on the host USB port. The BeagleBoard + would then forward USB data, while logging it. This presents the following advantages over a software-based solution: + + - No software modification is required; + - support of proprietary OSes; + - allows debugging of new USB stacks; + - possibly lower-level debugging of USB frames. + + ++++ - The goal of this project is to use the BeagleBoard as an USB sniffer. The host computer would be connected - to the slave USB port of the BeagleBoard, and the device to be sniffed on the host USB port. The BeagleBoard - would then forward USB data, while logging it. This presents the following advantages over a software-based solution: + .. dropdown:: More - - No software modification is required; - - support of proprietary OSes; - - allows debugging of new USB stacks; - - possibly lower-level debugging of USB frames. - ^^^ - .. dropdown:: More + **Contributor:** Nicolas Boichat - **Contributor:** Nicolas Boichat + **Mentors:** Hunyue Yau, Laine Walker-Avina, Frans Meulenbroeks - **Mentors:** Hunyue Yau, Laine Walker-Avina, Frans Meulenbroeks + .. button-link:: https://www.google-melange.com/archive/gsoc/2010/orgs/beagleboard/projects/drinkcat.html + :color: info + :shadow: + :expand: - .. button-link:: https://www.google-melange.com/archive/gsoc/2010/orgs/beagleboard/projects/drinkcat.html - :color: info - :shadow: - :expand: + GSoC Registry - GSoC Registry + .. button-link:: https://elinux.org/BeagleBoard/GSoC/2010_Projects/USBSniffer + :color: info + :shadow: + :expand: - .. button-link:: https://elinux.org/BeagleBoard/GSoC/2010_Projects/USBSniffer - :color: info - :shadow: - :expand: + proposal - proposal +.. card:: + + :fas:`shield-dog;pst-color-primary` **NEON Support for FFTW** + ^^^^ - .. grid-item-card:: NEON Support for FFTW + This work presents advancements in the FFTW library, incorporating NEON instruction set support for ARM architectures + within an extended SIMD interface. Further enhancements include the integration of a performance counter into the FFTW + planner, enabling precise measurement of execution times for algorithmic selection. Optimized code for accelerated Fourier + transforms contributes to demonstrable speedups, illustrated through visual presentations using GNU Octave. The amalgamation + of these improvements establishes a more efficient and performance-driven FFTW library, showcasing the tangible benefits of SIMD + extensions, performance counters, and code optimization. + + ++++ - This work presents advancements in the FFTW library, incorporating NEON instruction set support for ARM architectures - within an extended SIMD interface. Further enhancements include the integration of a performance counter into the FFTW - planner, enabling precise measurement of execution times for algorithmic selection. Optimized code for accelerated Fourier - transforms contributes to demonstrable speedups, illustrated through visual presentations using GNU Octave. The amalgamation - of these improvements establishes a more efficient and performance-driven FFTW library, showcasing the tangible benefits of SIMD - extensions, performance counters, and code optimization. - ^^^ - .. dropdown:: More + .. dropdown:: More - **Contributor:** Christopher Friedt + **Contributor:** Christopher Friedt - **Mentors:** Mans Rullgard, Philip Balister + **Mentors:** Mans Rullgard, Philip Balister - .. button-link:: https://www.google-melange.com/archive/gsoc/2010/orgs/beagleboard/projects/chrisfriedt.html - :color: info - :shadow: - :expand: + .. button-link:: https://www.google-melange.com/archive/gsoc/2010/orgs/beagleboard/projects/chrisfriedt.html + :color: info + :shadow: + :expand: - GSoC Registry + GSoC Registry - .. button-link:: https://elinux.org/BeagleBoard/GSoC/2010_Projects/FFTW#Documentation - :color: info - :shadow: - :expand: + .. button-link:: https://elinux.org/BeagleBoard/GSoC/2010_Projects/FFTW#Documentation + :color: info + :shadow: + :expand: - proposal + proposal diff --git a/projects/2013.rst b/projects/2013.rst index bd567eaf8348bf8f5d607c1978954005df04bc1d..79692fdb514601768e7962a83ddac6b197a7a2bf 100644 --- a/projects/2013.rst +++ b/projects/2013.rst @@ -1,7 +1,7 @@ -.. _gsoc-2013: +.. _gsoc-2013-projects: -2013 -##### +:far:`calendar-days` 2013 +########################### .. grid:: 1 1 2 2 diff --git a/projects/2014.rst b/projects/2014.rst index ff15d3943d1daf6199175674d4df258a87fd48e8..afdec36d1ed7faa064ffed93415e5bbc15a398e6 100644 --- a/projects/2014.rst +++ b/projects/2014.rst @@ -1,7 +1,7 @@ -.. _gsoc-2014: +.. _gsoc-2014-projects: -2014 -##### +:far:`calendar-days` 2014 +######################### .. grid:: 1 1 2 2 diff --git a/projects/2015.rst b/projects/2015.rst index 1b4bfbb12ce4f0d1773ba2f0aa3a4501d5b693e2..33809e3ccb84c833026a06c7ecaa50038071f2bc 100644 --- a/projects/2015.rst +++ b/projects/2015.rst @@ -1,7 +1,7 @@ -.. _gsoc-2015: +.. _gsoc-2015-projects: -2015 -##### +:far:`calendar-days` 2015 +######################### .. grid:: 1 1 2 2 diff --git a/projects/2016.rst b/projects/2016.rst index 0d57ba4ce6e9ebcfe2f75f65c4ed2ed14ebee6d2..887f73b7800a4533f8c9bb2e9daa5170d8caaa6e 100644 --- a/projects/2016.rst +++ b/projects/2016.rst @@ -1,7 +1,7 @@ -.. _gsoc-2016: +.. _gsoc-2016-projects: -2016 -##### +:far:`calendar-days` 2016 +######################### .. grid:: 1 1 2 2 diff --git a/projects/2017.rst b/projects/2017.rst index 63a3deaa1bcf4c5904591f6c1348996e6ca0cc8f..a11103286d463bfaa44760dc6487995476055f1a 100644 --- a/projects/2017.rst +++ b/projects/2017.rst @@ -1,7 +1,7 @@ -.. _gsoc-2017: +.. _gsoc-2017-projects: -2017 -##### +:far:`calendar-days` 2017 +######################### .. grid:: 1 1 2 2 diff --git a/projects/2018.rst b/projects/2018.rst index 791565c614e8117a0677dfd068285c6ad01bc8b9..fdd6c39fa9b044fa5aa7a1bc2d60ce84ac9ba9ca 100644 --- a/projects/2018.rst +++ b/projects/2018.rst @@ -1,7 +1,7 @@ -.. _gsoc-2018: +.. _gsoc-2018-projects: -2018 -##### +:far:`calendar-days` 2018 +######################### Beagleboard.org GSoC 2018 Playlist *********************************** diff --git a/projects/2019.rst b/projects/2019.rst index 1adca7b2eadd8a0f5891f119fc04b8e671daa83c..bd81b99402c901b9590a907d9bd52c170972addf 100644 --- a/projects/2019.rst +++ b/projects/2019.rst @@ -1,7 +1,8 @@ -.. _gsoc-2019: +.. _gsoc-2019-projects: + +:far:`calendar-days` 2019 +######################### -2019 -##### .. grid:: 1 1 2 2 .. grid-item-card:: Clickboard Support Under Greybus diff --git a/projects/2020.rst b/projects/2020.rst index eea7b0619bbcb3eea049c030c432d792a01002d0..75ec1dd82754339bcc6039ccef81ecc8f54c4e6c 100644 --- a/projects/2020.rst +++ b/projects/2020.rst @@ -1,7 +1,7 @@ -.. _gsoc-2020: +.. _gsoc-2020-projects: -2020 -##### +:far:`calendar-days` 2020 +########################## .. grid:: 1 1 2 2 diff --git a/projects/2021.rst b/projects/2021.rst index 245ade3df72926380ecb204bb76d946908b18e9c..d1b9251fb37be0e9e8f85669b1e683247e441174 100644 --- a/projects/2021.rst +++ b/projects/2021.rst @@ -1,7 +1,7 @@ -.. _gsoc-2021: +.. _gsoc-2021-projects: -2021 -##### +:far:`calendar-days` 2021 +######################### .. grid:: 1 1 2 2 diff --git a/projects/2022.rst b/projects/2022.rst index e7842895879261f7b914f3495e427e71b1df96bd..28b8662bc6a61e77ff32561eac8dd707c7c3d290 100644 --- a/projects/2022.rst +++ b/projects/2022.rst @@ -1,7 +1,8 @@ -.. _gsoc-2022: +.. _gsoc-2022-projects: + +:far:`calendar-days` 2022 +########################## -2022 -##### .. grid:: 1 1 2 2 .. grid-item-card:: Adding features to simpPRU diff --git a/projects/2023.rst b/projects/2023.rst index 5e885bd5f700c7d7dcf487f98b05ffe1243286f9..a5268c525c757b436498b147677fab47cb0a452e 100644 --- a/projects/2023.rst +++ b/projects/2023.rst @@ -1,10 +1,9 @@ -.. _gsoc-2023: +.. _gsoc-2023-projects: +:far:`calendar-days` 2023 +########################## -2023 -#### - -.. grid:: 1 1 2 2 +.. grid:: 1 1 1 2 .. grid-item-card:: Replace GBridge @@ -69,11 +68,8 @@ proposal -.. grid:: 1 1 2 2 - .. grid-item-card:: Zephyr on R5/M4F - .. youtube:: zGILLbQjVRI :width: 100% ^^^ @@ -122,4 +118,4 @@ :shadow: :expand: - GSoC Registry \ No newline at end of file + GSoC Registry diff --git a/projects/index.rst b/projects/index.rst index 31518f0ab7fb63a182319726f01f260419bb0201..6eb1907a129064935a891d1f72dbe79915226fb2 100644 --- a/projects/index.rst +++ b/projects/index.rst @@ -6,8 +6,73 @@ Past Projects An overview of the significant contributions made to BeagleBoard.org through GSoC over the previous years is given in the section that follows. +.. grid:: 2 4 4 4 + :margin: 4 4 0 0 + :gutter: 4 + + .. grid-item-card:: :far:`calendar-days` 2023 + :text-align: center + :link: gsoc-2023-projects + :link-type: ref + + .. grid-item-card:: :far:`calendar-days` 2022 + :text-align: center + :link: gsoc-2022-projects + :link-type: ref + + .. grid-item-card:: :far:`calendar-days` 2021 + :text-align: center + :link: gsoc-2021-projects + :link-type: ref + + .. grid-item-card:: :far:`calendar-days` 2020 + :text-align: center + :link: gsoc-2020-projects + :link-type: ref + + .. grid-item-card:: :far:`calendar-days` 2019 + :text-align: center + :link: gsoc-2019-projects + :link-type: ref + + .. grid-item-card:: :far:`calendar-days` 2018 + :text-align: center + :link: gsoc-2018-projects + :link-type: ref + + .. grid-item-card:: :far:`calendar-days` 2017 + :text-align: center + :link: gsoc-2017-projects + :link-type: ref + + .. grid-item-card:: :far:`calendar-days` 2016 + :text-align: center + :link: gsoc-2016-projects + :link-type: ref + + .. grid-item-card:: :far:`calendar-days` 2015 + :text-align: center + :link: gsoc-2015-projects + :link-type: ref + + .. grid-item-card:: :far:`calendar-days` 2014 + :text-align: center + :link: gsoc-2014-projects + :link-type: ref + + .. grid-item-card:: :far:`calendar-days` 2013 + :text-align: center + :link: gsoc-2013-projects + :link-type: ref + + .. grid-item-card:: :far:`calendar-days` 2010 + :text-align: center + :link: gsoc-2010-projects + :link-type: ref + .. toctree:: - :maxdepth: 2 + :maxdepth: 1 + :hidden: 2023 2022 diff --git a/proposals/index.rst b/proposals/index.rst index 3cb1745c20c985ab05113f2593b1c76fd1825e33..4ec8c0ac956c4e1a9f8dc5824af63f321f1b98a7 100644 --- a/proposals/index.rst +++ b/proposals/index.rst @@ -3,6 +3,9 @@ Proposals ######### +.. tip:: + + Checkout :ref:`gsoc-proposal-guide` to write your own proposal. .. toctree:: diff --git a/proposals/template.rst b/proposals/template.rst index 66184dbc884fef46916be160876c22c86548b98c..b6c016de0024ab1c3865119c98e79d200989b1f1 100644 --- a/proposals/template.rst +++ b/proposals/template.rst @@ -1,4 +1,4 @@ -.. _proposal_template: +.. _gsoc-proposal-template: Proposal template ################# @@ -202,8 +202,8 @@ What will you do if you get stuck on your project and your mentor isn’t around Benefit ======== -If successfully completed, what will its impact be on the `BeagleBoard.org <http://beagleboard.org/>`_ community? Include quotes from `BeagleBoard.org <http://beagleboard.org/>` -community members who can be found on `Discord <https://discord.com/invite/e58xECGWfR>`_ and `BeagleBoard.org forum <https://forum.beagleboard.org/c/gsoc/13>`_. +If successfully completed, what will its impact be on the `BeagleBoard.org <https://www.beagleboard.org/>`_ community? Include quotes from `BeagleBoard.org <http://beagleboard.org/>` +community members who can be found on our `Discord <https://bbb.io/gsocchat>`_ and `BeagleBoard.org forum <https://bbb.io/gsocml/13>`_. Misc ==== diff --git a/requirements.txt b/requirements.txt index 22d2b2e6190b1be8bb56716492ee00108d23590c..4e1bfed0d810e91c63794d362224d758c66486fc 100644 --- a/requirements.txt +++ b/requirements.txt @@ -31,3 +31,4 @@ sphinxcontrib-youtube==1.4.1 tornado==6.4 typing_extensions==4.9.0 urllib3==2.2.0 +sphinx-copybutton==0.5.2 diff --git a/venv-build-env.sh b/venv-build-env.sh old mode 100644 new mode 100755