FreeCAD started participating to the Google student coding program (GSoC) in 2016. We participated through a combined effort of many CAx projects, under the BRL-CAD umbrella. Since 2023, we are applying as our own organization.
If you want to get involved, study well the GSoC Checklist. Whether you're applying or accepted, we've itemized everything you need to do in this list. We're here to help you become new open source developers, so don't be shy if you have any questions.
We are proposing a number of project ideas here. But you are in no way forced to follow our ideas. You can propose anything you would like to work on, that you thing would be an interesting project. Good places to hunt for ideas are the list of feature requests, the FreeCAD forum or other FreeCAD communities, like Facebook, Discord or Reddit.
You will find many templates and models on the internet, and on the Google Summer of Code website, but it does not need to be very elaborate. Again, what is important is that you choose a subject you like. It's more important to get interested in your idea and do some research about how you would achieve it than writing very long proposals.
What we expect to see in your proposal is what is explained on the Google Summer of Code website. Additionally, we want to see that you did your research, and that you explored FreeCAD enough so we can trust you know what you are going into.
GSoC is about getting people involved and contributing to open source over the long-term. As such, we heavily weight our application selection process towards students that are interested in remaining involved in FreeCAD and open source software development after GSoC has ended. GSoC is not a summer job, although it happens during the Northern hemisphere summer months and requires some dedication and commitment, like a job.
Additionally, submissions are ranked based on perception of the submitter's abilities to complete the task within the program time frame, general consensus on the technical approach being proposed, and overall interest in having such modifications made to FreeCAD. Particular notice is made of students that are responsive to questions and readily interactive with the FreeCAD community, mainly through the FreeCAD forum. Communication is a great thing. Having a forum account already, and having already discussed your idea there, for example under the GSOC section, is a great way to have people interested in your project.
Just about every GSoC organization receives considerably more project proposals than can be accepted. Every application gets read multiple times and reviewed in detail. Of those applications, only a small subset are selected so keep in mind that the selection process is rather competitive.
Whether or not you are accepted, contributing to open source outside of GSoC is one of the main goals of the program and is the best way to be noticed and get your proposal accepted. Keep that in mind. Thanks for your interest and we look forward to working with new FreeCAD developers!
And in case your proposal is not accepted but you would still like to work on it, nothing prevents that! Several FreeCAD GSoC students in the past have worked on their project outside the GSoC program.
The pool of mentors will review all the proposals, each member will mark the proposals they want to mentor, and each winning proposal will get the mentors that marked their interest. There is no need for you to choose a mentor yourself before starting. If you would like to get reviewing and mentorship before starting, look for the mentors from previous years in the GSoC section of the FreeCAD forum, or simply post something in that section to ask for review.
There are several sources for project ideas. The table below lists existing project ideas already picked by the FreeCAD developers. FreeCAD also previously participated in an umbrella organization for GSoC, and there are FreeCAD project ideas available in their GSoC repo. Additionally, there is a forum thread calling for additional ideas which may be the basis of a project.
The ideas listed here or in the OpenCAx repo serve mostly as inspiration, and do not have a higher chance of being accepted as project proposal. You are totally free to build your own idea, specially for students with an established involvement in FreeCAD who have already contributed code. Feel free to contact us on the forum for further discussions about the listed projects.
The size column shows the estimated time frame to complete the project, but you are of course free to suggest otherwise if you see arguments for it. Clicking on each idea will get you to its corresponding GitHub issue, which will contain more details and where you can ask questions.
Note also that any issue open on the FreeCAD issues tracker could become a good GSoC proposal. Don't hesitate to browse the issues, the list above is formed from the ones marked as GSoC issues. The ones marked as "Feature" are feature requests and might be especially interesting to you.
The ones marked as good first issue are identified as interesting for new contributors. If any of them picks your brain, feel free to discuss it, either directly on the issue itself, or on the forum thread.
See https://developers.google.com/open-source/gsoc/timeline