🏏 JPOS Scorer — Super Admin

Admin sign in

First time? Create an Email/Password user in Firebase Console → Authentication, then add a doc in the admins collection with that user's UID as the ID.

Import members from sheet

Add a member

Members (0)

Add a team

Team logos are automatically resized to 512px on upload — big high-res logos exhaust the phone's image memory and drop out of the banners. Re-upload any logo added before this change.

Teams

Draft colours

The pool of jersey colours drawn to teams on the /auction page (the “Draw colours” button, after team numbers). One colour per line — plain names like Red, Sky Blue, Navy, Maroon. Up to 10.

Schedule a match

Knockouts

After the group stage, generate the semis (top 2 of each group: A1 v B2, B1 v A2). Once both semis are completed, generate the final from the winners.

Matches

Village coordinates

These drive the map and directory in the app. Edits save straight to the phone app — no new build needed. Get a coordinate by right-clicking the spot in Google Maps and copying the lat, long pair; you can paste the whole pair into the latitude box.
Or load the 138 villages the app already ships with — then edit any of them below.

Villages 0

JPL registrations

The tournament entry list — who registered to play JPL. Re-uploading a sheet updates existing players by UID and adds new ones, so you can upload again as more people register. Names and areas for the app come from the Master sheet card below.

Add a JPL player

Register one player by hand — for someone who never filled the form. Writes the player into the tournament list and the members registry the app reads. If the UID is in the saved master sheet, their area and photo are filled in automatically.

Master sheet

Your full club members sheet (columns Member ID, Name, Surname, Area, Photo URL). Uploaded once and kept — every time you apply it, each JPL player whose Member ID matches gets their real first name + surname, Area (locality) and photo written onto the member the app reads. It also fills name, club and role for every JPL player from the tournament list, so no squad name is ever a bare UID. Each Drive photo must be shared “Anyone with the link”.

Registered players 0

Danger zone

Removes JPL registrations only. Members are not touched.

Player list — for team owners

A plain roster — full name, UID, date of birth and age, one row per registered player, sorted by name. Opens in a new tab ready to print on A4 portrait. Hand a copy to each owner before the draft.

Player ID tags — A3 print sheet

Raffle-ticket stubs, 70 × 30 mm true size, built to the chip design spec: navy 20 mm stub with the body's logo and the UID in gold, cream body with the name, date of birth, age, shirt size, role and phone. The sheet opens in a new tab with four layouts — the card is always 70 × 30 mm, only the arrangement changes:
Cut marks · 40 per A3 — corner marks and 5 mm gutters, cuts with a trimmer or scissors. Start here.
Margins · 45 per A3 — cards touching inside a safe border, one straight cut per line.
Press · 54 per A3 — edge to edge. Six cards are exactly 420 mm, the full width of A3, so there is no margin at all: borderless or a print shop only.
Proof · 8 per A3 — large and airy, for checking the artwork before committing to a run.
You can also add any number of blank write-on tags per body, for people who register at the ground.
Print with A3, landscape, margins none, scale 100%. Do not tick "fit to page" — it shrinks the cards off true size and every cut then misses.

Tag logos

One logo per body — it prints inside a 13 mm white circle with a gold ring on the navy stub. Upload a square PNG, at least 400 × 400, with the mark filling the frame; transparent or white background both work. A player's logo is chosen automatically: club Youth Wing → Yuva Parishad, JPOSMAIN → JPOS Main, and every woman → Mahila Parishad. Any slot left empty falls back to the club logo on the Branding tab.
— none uploaded —
— none uploaded —
— none uploaded —

Demo players

Creates 80 demo players only (UIDs 9001–9080, with names + areas) so you can build teams from them. No teams and no matches are created — you create the 10 teams yourself in the Teams tab.
“Fill all teams” gives every team a squad of demo players (8 each by default), so you can simulate matches without picking UIDs by hand. Teams that already have a squad are left alone.

Simulate group matches

Plays your existing teams against each other with real ball-by-ball data, so scorecards, standings, stats and banners all fill up. Round-robin inside each group — every team plays the others in its group (5 teams = 10 matches per group). Assign each team a Group A/B first, and give it a squad — teams with fewer than 2 players are skipped. Knockouts are not simulated — use the buttons above once the group stage is done.
Simulate semis picks A1 v B2 and B1 v A2 from the completed group matches, then plays them. Simulate final plays the two semi winners. Both create the match and play it — unlike “Generate” above, which only schedules it for a scorer.

Danger zone — delete data

Both actions are permanent and ask for a password. Teams themselves are never deleted — the names stay as they are.
Delete players from all teams empties every squad but keeps the teams (name, owner, group, logo, sponsor).
Delete all matches removes every match and its ball-by-ball data — group games and knockouts alike. Standings, stats and results reset to empty.
Delete ALL members wipes the whole member registry. Every name in the app resolves through this — existing scorecards, Toppers and career stats will show bare UIDs instead of names until members are re-imported. Squads are not cleared, so teams will hold UIDs with no member behind them.

Authorise a scorer

The PIN is hashed before storing — no one can read it back. Re-save to reset it.

Scorers

Event

Logos currently in use

Everything the app is using right now. Empty slots fall back as noted.

Title sponsor

— none uploaded —
Each hides independently. The event name (e.g. KHEL UTSAV) always shows.

Jersey sponsor

— none uploaded —

Share-banner footer logos

Independent of the home-page sponsors above — banner sponsorship can be sold to a different company, so these are the only logos used on the shareable banners (1080×1920). Nothing is inherited from the home sponsor, and a slot left empty simply hides that column on the banner.
No card behind either logo — both sit directly on the banner's dark gradient, so upload transparent PNGs with light artwork. A logo carrying its own white, cream or black panel will show as a rectangle.
Render box: 467 × 150 px each (3.11:1). Aspect is preserved — never cropped or stretched.
Upload exactly 1401 × 450 px — transparent PNG, 3× the box and matching what the banner captures at. The mark must reach all four edges of the canvas.
Blank edges are trimmed automatically on upload, so a logo exported with a wide transparent margin still fills the tile.
What then decides the size is the shape of the mark. Anything 3.1:1 or wider fills the full width. Squarer marks are limited by the 150px height — a 2:1 logo reaches 64% of the width, a square one 32% — because filling the rest would mean stretching or cropping the sponsor's logo. For the biggest logo, supply it wide (name beside the emblem, not stacked under it).
— none uploaded —
— none uploaded —

Club

— none uploaded —

Add a Special Thanks

Special Thanks

Toppers

Top run scorers and wicket takers across all completed matches.

Top batters

Top bowlers

Overview

App opens
0
Match views
0
Installs
0
Title sponsor views
0
Jersey sponsor views
0
Banners shared
0
Instagram clicks
0
Sponsor views count one per app session, plus one for every open/refresh of the public Players board. Instagram clicks count every tap, since a second tap is real interest.

Sponsor views by date

One row per day (IST) — how many title & jersey impressions, app opens and shares landed that day. A reset above does not touch this history.

Instagram clicks per team

Views per match

Send a notification to everyone

Scorecard

Ball by ball