Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
87 changes: 87 additions & 0 deletions docs/Challenges/create-a-data-viewer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
---
title: Create a Data Viewer
parent: Challenges
nav_order: 3
permalink: /Challenges/3
---

# 📊 twinBASIC Monthly Challenge #3 - March

**Create a Data Viewer**

Build an application that reads data from a file or the system and presents it in a useful or interesting visual way.

Your program should take raw or structured data and turn it into something that people can explore, analyse, or understand more easily.

This could be a viewer, explorer, dashboard, inspector, or visualisation tool.

Examples include (but are not limited to):

- Access MDB / ACCDB file viewer
- JSON or XML explorer
- CSV / spreadsheet viewer
- SQLite database browser
- Log file viewer
- Windows Event Log viewer
- Windows Registry explorer
- Image metadata (EXIF) viewer
- Folder size visualizer
- System metrics dashboard
- Network data viewer
- Binary / hex viewer

Creativity is encouraged - unusual data sources or interesting visualisations are welcome.

## 📦 Submission Rules

- Built using twinBASIC
- Full source code must be provided, but licence choice is unrestricted
- Submission must be a single .twinproj file (external resource files allowed if necessary)
- Produces a single Windows EXE
- Runs on Windows 10 and later
- Application must read and display data from a file, dataset, or system source

❌ Not a direct or near-direct port of an existing VB6 application

## 📈 Bonus Points

- Interesting or complex data visualisation
- Support for large datasets
- Search, filtering, or navigation features
- Use of tree views, charts, or custom visualisation
- Use of Windows APIs or system interfaces
- Use of newer twinBASIC features (e.g. delegates, generics)
- Clean architecture and well-documented code
- Polished UI and UX
- Creative or unusual data sources

## 🎁 Prize

£100 twinBASIC account credit

- Non-transferable
- No cash alternative
- Can only be used towards future twinBASIC licences

## 🏆 Judging

Entries will be judged across multiple categories, including:

- Originality and creativity
- Technical execution
- Performance
- Visual presentation
- Code quality and structure
- Overall polish and usefulness

Bonus points may be awarded at the discretion of the twinBASIC team.

Winner selected at the sole discretion of the twinBASIC team within 7 days after the entry deadline.

## ⏰ Deadline

Entries must be received by:

🗓️ 9th April — 12:00 PM (GMT)

Submissions will be locked after the deadline.