Just Code Challenge Week 5 Projects

Post your projects in this conversation!

It’s the 5th week of the Just Code Challenge! This time I made a web app to give math quizzes.

Read more about it: https://blog.xojo.com/2018/07/20/justcode-challenge-week-5-math-quiz/
Download the project source or check it out on GitLab.

Please share your projects for week 5 of the Just Code challenge in this thread. Download other projects and discuss!

A classic for this week: a web browser in kiosk mode. This one has all the necessary features for a professional use:

  • Starts on a website defined in the code
  • Limited to 4 specific domains / subdomains
  • Home, Previous, Next, Zoom and Reset buttons
  • No context menu in the HTMLViewer gadget
  • A counter that resets everything (including zoom levels) after a certain amount of time
  • A magic code to quit the application (type it in the address bar, then Alt+F4)

The application intercepts the Alt+F4 and Quit actions. The Ctrl+Alt+Del and Windows keys can be disabled in the system. See “ReadMe First” in “App > Notes”.

The precompiled exe is restricted to www.xojo.com and blog.xojo.com pages, with a reset time of 120 seconds and a magic code set to exit1234.

Source and win32 exe are here:

My Week 5 project, that I just came up with, is a local version of https://clapit.zone
Sometimes you just really need to get a point across, and the only way to do that is by being sassy and clapping between every word.

This app is simple, has no interface, and is easy to use. Copy something important to your clipboard, and run the app.

Download the project here: https://www.dropbox.com/s/oq2ip2em7sgbh9q/week5.zip?dl=0

Simple Pong
This is a simple example of a „Pong“-like game. Score 15 points to win the game!
The computer-player is not very intelligent, but it does the job :wink:

Download source

My project for week 5 is a simple slide-show desktop app. You select a folder containing jpg images and the tool is showing the images in full-screen, one after the other.

Download project here: http://www.watermann-it.de/public/xojo/PictureSlideShow.zip

This week’s submission is an update of my Week 2 submission. The CSV file viewer is now a CSV file editor. I’ve moved all of the text grid functions into a container control, added the ability edit a cell, insert cells, rows and columns, and the ability to save the edited file.

The project is here:
CSV File Editor
For further details, refer to app.revision_notes in the project file.

My week 5 project gets the award for simplest app…6 lines of code! I wanted to start playing with drag and drop, so I decided to do a photo viewer. I wanted to include save/delete and slideshow functionality along with the drag and drop but life intervened. I needed to get this done and posted before what remained of my Friday evaporated. Simple is best, right?


photo_viewer by Bill Kapeles, on Flickr

Sadly, I’m unable to submit code this week because my project is taking much longer than expected, but I can show the start of the project and share a little about it. It’s a sql database editor(no name yet! any ideas?.. “Another Database Editor”?) .

What can it do? Not too much yet, but it can do the following:
Edit/create columns sqlite and postgres. Other databases can be connected if the interface I created is implemented).
Import table data from a CSV file(neat little class that uses a Regex to parse each data line from the file. It’s pretty fast too)

The code:
Uses a MVP(model-view-presenter) pattern to help organize the code and flow. Also an Observer pattern to “listen” the database messages and display them on the UI. Any database errors and successes are reported/logged to the bottom listbox with a timestamp.
It also uses the Canvas Listbox in two places that I’ve been working on and showing in previous Just Code challenges.

What I could not complete on time is the local sqlite file to store the databases that you want to manage… It would contain address/filepath, type, username, & password(if you want). The app will create the file if it doesn’t exist. It’s a whole app within itself.

Here’s a little preview:

This week I’ve written a sender sorting app for my TV by Technisat. On the TV you can export the TV list as an XML file and import it into my program. With drag and drop you can sort the channels as you like and save the XML file and import it back into the TV.
At the moment it is enough for me, but I will work on the GUI a bit and then make it available for download.

(It’s still -barely- Friday in Alaska…)

This week I wrote a Master Mind game. It still needs polished and has no instructions.

See a 1-minute video here:

And get the project here:

I may go ahead and polish this up and see if it turns into a real app.

PS - Oh yeah, because I had to rework some things at the last minute (too many years without Xojo) the code is embarrassing in spots. I want to clean it up and do things right. But a deadline is a deadline, you know… :wink:

I spent a few hours this morning and reskinned the project while I recoded some of the internals. (I’m not uploading the updated project because I’m using artwork I don’t have permission to distribute outside of an actual build.)

(I fixed the corners of the bevel button after taking this screen shot. :slight_smile: )
Now, I should probably try and come up with something to work on for next Friday’s deadline…

Solution is Green Black Red White :wink:

Wow, I am really impressed by how good looking the interfaces/games of some of the entries are. Definitely something I want to brush up in my own work. For this week I have two quite small projects (I am working on a much larger one, but that is not to be shared yet and involves some of the techniques from these examples).

The first project is one where a direction is monitored for new files. Once a new file is noticed, the user is asked to input some metadata information (in this app it is all very simple, but you might make it so that people can choose a certain metadata standard) so they will know in the future what the file is about. This is something that is quite useful for research projects where one of the goals is to hand over data to a data repository that wants you to provide metadata information in a specific format. Documenting your files is also good research practice.
To create the project I made use of several plugins from MBS. I have chosen to only make it as a proof of concept for the mac, but all info and plugins are available to extend to Windows.

The other project is just a few lines of code in order to use the Apache PDFBox to split a pdf file. This is needed in a larger project where we want to upload publications to a research information system. I only shared it because I think others might be interested. I was tempted to use DynaPDF, but unfortunately splitting pdf is only available in the Professional version (not starter or lite), which is too expensive for me. Keep the jar file in the same directory as the application and it should work fine.


Scalable leds in canvas



Some maths and canvasses.