-
-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #115 from JabRef/gsoc2022
First approach of describing the GSOC22 ideas
- Loading branch information
Showing
1 changed file
with
46 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
--- | ||
title: Google Summer of Code Project Ideas 2022 | ||
layout: survey | ||
--- | ||
|
||
# JabRef in Google Summer of Code 2022 | ||
|
||
This page lists a number of ideas for potential projects to be carried out by the students participating in Google Summer of Code 2022. | ||
This is by no means a closed list, so the students can feel free to propose alternative activities related to the project (the [list of feature requests](http://discourse.jabref.org/c/features) and the [GitHub issue tracker](https://github.com/JabRef/jabref/issues) might serve as an additional source of inspiration). | ||
Students are strongly encouraged to discuss their ideas with the developers and the community to improve their proposal until submission (e.g, using the [Gitter Channel](https://gitter.im/JabRef/jabref) or the [forum](http://discourse.jabref.org/)). | ||
It's also a good idea to start working on [one of the smaller issues](https://github.com/JabRef/jabref/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) to make yourself familiar with [the contribution process](https://github.com/JabRef/jabref/blob/master/CONTRIBUTING.md). | ||
|
||
## Collaboration using Online Services | ||
|
||
* *Description:* JabRef currently supports the collaboration using shared SQL databases, but lacks connection/integration with other online services, for example Overleaf or the new web based reference manager JabRef-Online (still under development). JabRef should offer an abstraction layer for the easy connection and synchronization to other online services. Concurrent modificaiton of entries should be taken into account as well (Optimistic Offline Lock, already implemented for the shared SQL databases). | ||
* *Skills required:* Java, GraphQL | ||
* *Expected outcome:* It is possible to synchronize citation entries from a local JabRef instalation with JabRef-Online and at least one other online collaoration service (preferable Overleaf). | ||
* *Possible mentors:*: [@Siedlerchr](https://github.com/Siedlerchr), [@koppor](https://github.com/koppor), [@tobiasdiez](https://github.com/tobiasdiez) | ||
|
||
## 3-way Merge | ||
|
||
*Description:* | ||
JabRef is able to detect duplicate entries and to show a simple two-way merge dialog. Either changes from the left side or the right side can be used. There is no way to edit the merge result directly. | ||
A big improvement would be to have a 3-way merge dialog as many modern IDEs like Intellij offer. Inspiration for the design and functionality of such a 3-way-merge can be seen in [Issue #6190](https://github.com/JabRef/jabref/issues/6190) | ||
*Skills required*: Java, JavaFX | ||
*Expected outcome*: A functioning 3-way merge dialog or a prototype | ||
*Possible mentors:*: [@Siedlerchr](https://github.com/Siedlerchr), [@calixtus](https://github.com/calixtus) | ||
|
||
## Apache Lucene Search | ||
|
||
*Description:* JabRef offers an extensive search function that is based on a custom search syntax. The goal is to replace the custom search syntax and grammar with Apache Lucene's search syntax. It should offer the same functionality as the existing search. | ||
*Skills required*: Java, JavaFX (experience with Lucene is a plus) | ||
*Expected outcome*: A functioning search which supports the same functionality as the old search. | ||
More information can be found in this [PR#8206](https://github.com/JabRef/jabref/pull/8206) | ||
|
||
* *Possible mentors:* [@koppor](https://github.com/koppor), [@Siedlerchr](https://github.com/Siedlerchr), [@calixtus](https://github.com/calixtus) | ||
|
||
## Apache Velocity as Template Engine | ||
|
||
* *Description:* JabRef has the option to export data in different formats. In addtion, it allows you to define and use your own export filters, in the same way as the standard export filters are defined. An export filter is defined by one or more layout files, which with the help of a collection of built-in formatter routines specify the format of the exported files. | ||
JabRef uses a compelx custom formatting logic. The idea is to replace this with the template engine from Apache Velocity. | ||
* *Skills required:* Java (experience with Velocity or other Template Engines is a plus) | ||
* *Expected outcome:* | ||
* Replacement of the custom export formatter with Apache Velocity | ||
* A Tool for converting old layout based tempaltes to the new syntax | ||
* *Possible mentors:* [@koppor](https://github.com/koppor), [@Siedlerchr](https://github.com/Siedlerchr), [@calixtus](https://github.com/calixtus) |