Hello! I need help with a simple school assignment on JavaFX (10th grade, German gymnasium). It is important to keep it as basic as possible, without complex solutions, so it looks like a beginner's work (our teacher explained the topic poorly). A simple program similar to Photoshop is needed, where you can upload an image and apply basic operations: mirroring, rotation, inversion, and black-and-white filter... (see below).
The code should be understandable, with simple comments and without a complex structure. An explanation is also needed (for example, a screen recording), where the code and program elements are explained, so I can present it and answer the teacher's questions.
******
Here are the conditions:
1) Short documentation in PDF format:
- Brief information about the operating system and programs used (especially if they differ from those used in class) (the code was made in Processing, GUI - SceneBuilder)
- Screenshots of the code and the created graphical interface (to show if it looks different for the teacher)
- Brief description of the implemented functions
- Documentation of the work stages (Where did you start? What functions did you implement? What supporting materials and examples helped?)
- Reflection on your own program (for example: what works well? Where are edge cases that no longer work? What else would you like to do?)
- Maximum 1–2 pages excluding images
2) Project folder (if necessary - in compressed form):
- Folder structure, for example, as in the example (choose meaningful names for executable files and better specify them in the documentation)
- Code: meaningful comments, for example, also in the form of a reference to the source:
// This part was created using [AI name]
Evaluation Criteria
| Part | Weight |
|---|
| Implementation and algorithm | ~35% |
| Quality and structure | ~15% |
| Interface design (GUI) | ~25% |
| Documentation and reflection | ~25% |
Task
Mandatory level:
Adapt the basic example so that individual pixel operations can be applied to the image: mirroring, rotation, inversion, and black-and-white filter.
Second level:
- Add at least 2 additional filters, for example, for reducing the blue channel or brightening
- Expand the editor with three "artistic" algorithms, for example:
- Blurring
- Relief
- Pointillism
- Contrast enhancement
- Add a custom filter — for example, a combination of several operations
- Overlay a word (or random numbers/strings) on the image and use filters to make it hard to read
Third level - CAPTCHA:
- From the list of words, display a random word that is then distorted
- The button "Captcha erstellen" should perform this action
- Add a dialog box or status bar for entering the word
- Provide a response: ✅ Access granted! or ❌ Access denied!