עברית
Motion
AccessibilityPrivacy
Case study13 / 15Feb – Mar 2025

T100

A web app built for an AKA-led event so teams could track their work toward the goals set by the head of AKA.

Role
Sole developer
Organisation
Tikshuv AKA – the C4I and digital branch of the IDF Personnel Directorate (AKA)
Period
Feb – Mar 2025
Context
Military service at Tikshuv AKA
Try the live demo (opens in a new tab)sample data · changes are undone about 3 hours later

01 / The challenge

For T100, an event led by AKA, teams had to work together toward goals set by the head of AKA. The work was organised into broad initiatives, concrete plans and day-to-day tasks, and one piece of work could belong to several teams at once.

Plans like this usually live in a spreadsheet, one row per task. A spreadsheet can list the work, but it struggles with the simple questions: how far along is each initiative, which team owns what, and what is already late? And the progress had to be presented clearly at the event itself.

  • Three levels: initiatives, plans and tasks
  • Work shared between several teams
  • Late work hard to spot
  • Progress to present at the event

02 / What I built

I built T100, a Hebrew web app that turns the plan into a living structure: initiatives contain plans, plans contain tasks, and every item can be assigned to one or more teams. Each task can record the measurable goal it serves, and completion is worked out automatically from task statuses, for every plan and every initiative.

A team-manager dashboard shows the whole picture or one team's view, with headline numbers, charts and colour-coded cards that count down the days to each deadline. A presentation mode turns the same data into slides for the event, one per initiative, and each initiative opens its own dashboard.

How it came together

  1. Feb 2025First versionProgress tracked by unit: each unit's checkpoints and tasks, a units dashboard and searchable tables.
  2. Mar 2025Data model rebuilt around teamsInitiatives contain plans, plans contain tasks, and every item can belong to several teams, each with its own progress.
  3. Mar 2025Dashboard and presentation modeVersion 0.2 added both, along with searchable tables for teams, initiatives, plans and tasks.
  4. Mar 2025Nested pop-ups and team linksVersion 0.3 added a menu on every card, team links that reach child items, and role changes.
  5. Mar 2025Reading plans from spreadsheetsA tool that turns a full plan in a spreadsheet (initiatives, plans, tasks and goals) into the app's structure.

03 / Highlights

01

Team-manager dashboard

Headline numbers, tasks by priority and by status, and a card for every initiative, plan and task, for all teams or just one.

02

Initiatives, plans, tasks, teams

A three-level plan where any item can belong to several teams. Adding a team to an item can apply to everything beneath it.

03

Tasks tied to goals

Each task records the measurable goal it serves, so day-to-day work stays connected to the goals of the head of AKA.

04

Deadlines stand out

Every card counts down the days left. Anything past its due date gets a red 'overdue by N days' badge.

05

Presentation mode for the event

Slides that open with the event's title, then one per initiative. 'Show more' opens that initiative's dashboard, plans and tasks.

06

Teams, roles and access

Administrators see every team and members see their own teams' work. A team's manager adds members and sets each one's role.

04 / Screens

12 screens · sample data
The team-manager dashboard: headline numbers, tasks by priority and by status, and a progress card for each initiative.
01 The team-manager dashboard: headline numbers, tasks by priority and by status, and a progress card for each initiative.
An initiative pop-up with its related plans
02 An initiative opened in a pop-up: the team responsible, status, priority, dates, an "add plan" button and the initiative's active plans as cards.
One team's initiatives and plans, with a card menu open
03 With one team selected, the page shows only that team's initiatives and plans, each as a colour-coded card with its start date, completion and days left, grouped by status. Every card has a menu to open and edit it, or delete it.
A team's task cards with overdue badges
04 The team's active tasks. Anything past its due date gets a red "overdue by N days" badge.
Task pop-up with its goal
05 A task pop-up: the responsible team, status, priority, dates and the measurable goal the task serves.
Team editor
06 The team editor: name and description, a search box to add members, a role for each member, and deleting the team with a clear warning.
The presentation's title slide
07 The presentation opens with the event's title slide: "T100 event – presenting initiatives and meeting goals".
Initiatives presentation, one initiative's slide
08 Then one slide per initiative with its main plans and a "show more" button, and the next initiatives waiting on the side.
Per-initiative dashboard under the slides
09 Under the slides, "show more" opens the initiative's dashboard: completion, active plans and tasks, responsible teams, the plan and task lists, and charts by status and by priority.
Tasks database table
10 The tasks table: plan, priority, status, owner and dates, with overdue dates in red, search and paging.
Dark theme
11 The same dashboard in the built-in dark theme.
The "new plan" pop-up in the original March 2025 demo
12 From the original demo, March 2025: a "new plan" pop-up opened inside an initiative, with an "add task" button.

05 / Impact

3versions in seven weeks
1developer, end to end
No internetneeded: it installs on computers with no internet access

T100 gives the work toward the goals of the head of AKA one shared home: every initiative, plan and task in one place, linked to the teams responsible, with completion worked out automatically and a presentation ready for the event.

It also shows how quickly I turn a need into working software, and how I rework the foundations when the need changes: between the first and second versions I rebuilt the whole data model around teams.

06 / Role and tech

I built T100 on my own, end to end. I designed the data model, wrote the server, built every screen by hand in JavaScript (cards, nested pop-ups, charts and the presentation slides) and prepared an installation package for computers without internet access.

I shipped three versions in seven weeks. After the first version I rebuilt the data model around teams, then added the presentation mode the event needed.

I worked with ChatGPT and Gemini as coding assistants. To make them useful on a real codebase, I wrote a small tool that packs the project's file tree and code into one briefing, so every new conversation started with the whole project in view. I designed the system, directed the work and decided what went into the code.

Tech

  • Python
  • Flask
  • SQLAlchemy
  • SQLite
  • Flask-Login
  • Authlib (OpenID Connect)
  • JavaScript
  • jQuery
  • Chart.js
  • DataTables
  • ChatGPT
  • Gemini
  • Cheroot
  • Flask-WTF
  • Flatpickr
  • Moment.js

How it's built

T100 is a Python Flask web app with a SQLite database, built on my own reusable Flask starter. The server sends JSON to the dashboards, and the screens are hand-written JavaScript with Chart.js charts and DataTables tables, all in Hebrew right-to-left with a light and a dark theme. Sign-in supports local accounts and single sign-on (OpenID Connect), and a packaging script prepares an offline install.

T100 shows how I turn an organisation's goals into a working tool, fast.

A clear data model, at-a-glance screens and a presentation ready for the event.

Chapters