Built around the full competition workflow

Neptune FRC Scouting Platform

Scout the match. Understand the robot. Build the strategy.

Neptune is a complete FIRST Robotics Competition scouting platform for pre-scouting, pit scouting, synchronized live match scouting, team and robot intelligence, analytics, strategy, event control, TBA data, and multi-organization operation. Run it as a hosted account, on your own cloud server, or on a portable local server at an event.

Multi-team Event-ready Phone & tablet friendly Self-hostable Your scouting data
Collect Pre-scouting, pits, match actions, successes, failures, notes and robot data.
Coordinate Run match assignments, synchronized scouting and live command-center monitoring.
Understand Turn observations into team comparisons, robot intelligence and event analytics.
Strategize Prepare matches, analyze opponents and evaluate potential alliance partners.
The Platform

More than a scouting form.

Neptune connects the work your team does before an event, in the pits, in the stands, at the strategy table, and during live match operations. Every module is designed to contribute to the same event data set.

Live Match Scouting

Scouts receive an assigned robot and record configured game actions during the match. Neptune tracks success and failure, scoring value, match time, alliance and robot context while the match-control workflow keeps scouting devices synchronized.

Assigned robots Auton + Teleop Swipe outcomes Real-time writes

Command Center

Control event scouting from one place. Prepare the next match, monitor scout readiness, start and pause the match state, watch incoming data, and identify missing coverage before it becomes a problem.

Pit Scouting

Build robot profiles with capabilities, mechanical information, drive notes, strategy observations and photos. Use phone cameras in the pit or upload images from another device.

Pre-Scouting

Research teams before the event and store performance history, robot architecture, scoring capability, drive characteristics, endgame notes and other season context by game and year.

Team history Robot archetype Drive notes Event preparation

Analytics & Robot Intelligence

Use collected scouting data to compare teams, review scoring and action trends, inspect robot records and move from individual observations to a larger picture of event performance.

Team comparison Raw actions Scoring trends Robot profiles

Strategy

Bring scouting and robot intelligence into match planning. Review your alliance, opponents, likely roles, weaknesses, strengths and the data your strategy group needs before talking to the drive team.

Game Builder

Define the game Neptune scouts. Configure actions, points, field locations, periods and interface behavior, then store that configuration as game data used by events and scouting pages.

Event Management

Create events early, attach the correct game, choose the current event, manage teams and later link a manual event to official event data without throwing away pre-scouting or pit work.

The Blue Alliance Sync

Find season events, import team rosters and schedules, or link official TBA data to an event that your team created before the official schedule was available.

Organizations & Sharing

Neptune supports separate organizations with organization-scoped data. Controlled sharing can make selected scouting information available to partner organizations without changing who owns the original records.

Database Lab

Strategy, Admin, and Owner users can explore their organization's scoped scouting data with read-only SQL, aggregates, joins, grouping and analysis while platform-level administration remains isolated.

Installable Web App

Neptune includes web-app assets for a phone- and tablet-friendly experience. It can be placed on home screens and used as the team's event-day scouting interface without requiring a native app store build.

Competition Workflow

One system from preparation to match strategy.

Neptune is organized around the way an FRC scouting group actually works: prepare the game and event, understand the robots, collect match actions, then turn those observations into decisions.

1

Build the game

Define actions, point values, periods and the scouting interface.

2

Create the event

Import from TBA or create it manually before official data appears.

3

Research robots

Complete pre-scouting and pit profiles before qualification scouting fills in the rest.

4

Scout matches

Assign robots, synchronize scouts and capture actions as the match happens.

5

Use the data

Analyze teams, prepare match strategy and evaluate alliance possibilities.

During a Match

Synchronized scouting without six isolated forms.

The match-control side of Neptune manages the live match state while scouts focus on the robot in front of them.

Assign the robot Each scout knows exactly which machine and alliance position they are covering.
Control match state Admins can make ready, start, pause and end the scouting session around the real match.
Record outcomes quickly Game-defined actions are recorded with success/failure behavior designed for rapid event use.
Watch coverage live Command Center can see whether scouts are connected and whether data is arriving.
Data Flow

Everything contributes to one event picture.

Pre-scouting, pit information and match actions are different kinds of observations, but Neptune brings them together around the same teams, robots, games and events.

Game + Event Rules, actions, teams and match schedule
Scout Interfaces Pre, pit and live match observations
Scouting Database Organization-owned operational records
Analytics Comparisons, trends and robot intelligence
Strategy Opponent and alliance preparation
Drive Team Useful information before the match
Deploy Neptune Your Way

Hosted, cloud, portable or local.

Teams do not all have the same IT resources or event connectivity. Neptune can be used as a hosted account or installed on infrastructure your team controls.

AWS / VPS / Cloud Server

Run a private Neptune instance on an always-online Linux server with your own hostname, HTTPS certificate and database.

Full server control Accessible from anywhere Custom domain and TLS Best for team-owned production
Cloud Install Guide

Portable Event Server

Put Neptune on a laptop, mini PC or Raspberry Pi-class Linux machine, connect it to a local router or access point, and bring the server to the competition.

Local event LAN Scout phones use local Wi-Fi Core local use can avoid venue internet TBA/internet features when a connection exists
Portable Setup

Local Development

Run Neptune on a developer workstation for testing, Game Builder work, themes, PHP changes and database development before pushing changes to the team server.

Git-based workflow Local Apache/PHP/MySQL Safe place to test changes No production data required
Developer Setup
Portable Event Layout

A private scouting network you can carry into the venue.

A portable installation uses the same web application and database, but the server sits on your local event network instead of depending on a remote web host for every request.

Portable Server Laptop, mini PC or Linux SBC running Neptune
Router / Access Point Dedicated scouting Wi-Fi / local LAN
Scout Devices Phones, tablets and laptops in the stands
Local Neptune Scouting, command, data and strategy on-site
Portable Checklist

Prepare the server before competition day.

Use a predictable local address Give the server a stable LAN address or local hostname so scout devices always know where Neptune is.
Load the event before leaving Import the game, team list and available schedule information while internet access is reliable.
Plan power and networking Bring the server power supply, router/access point, chargers and any battery backup your setup requires.
Test the entire LAN beforehand Connect multiple scout devices, run a practice match and verify that Command Center sees every device.
Use Hosted Neptune

From a new account to your first scouting event.

If you want to use the hosted platform, you do not need to install a server. Start with an organization, then configure the team and event.

Register your organization

Create the Neptune organization that will own your team's users, events and scouting records.

Create the owner account

The organization owner manages setup, administrative tools, users and organization-level configuration.

Add your FRC team and users

Set up the team identity, then create the accounts and roles needed by scouts, strategists and administrators.

Select or build the season game

Use the appropriate game configuration so Neptune knows which actions and scoring behaviors scouts should record.

Create or import the event

Use TBA when official data is available, or create the event early and link it later without losing your pre-scouting and pit work.

Prepare before qualification matches

Complete pre-scouting, collect pit data, confirm the team roster and make sure your scout devices can sign in.

Run scouting from Command Center

Coordinate the crew, start match sessions and monitor whether scouting data is being collected across the event.

Analyze and build strategy

Use the accumulated event data for team analysis, robot intelligence, match preparation and alliance evaluation.

Create an Organization
GitHub & Self-Hosting

Run your own Neptune instance.

Neptune is a PHP/MySQL web application. A self-hosted deployment keeps the public application under the web root and places sensitive configuration outside the public directory.

Neptune directory layout

Keep public_html/Neptune/ under the web root. Keep neptune_secure/ beside the public web directory, not inside it.

The repository may also contain supporting directories such as sql/ and scripts/ for database initialization and server-side operations.

Database initialization

Create a MySQL database for Neptune and import the supplied schema from sql/neptune_schema.sql.

Then configure Neptune's private database connection settings outside the public application directory.

Private configuration

Copy the provided configuration example to the active private configuration file, then add database credentials and your TBA API configuration.

Do not commit live passwords, keys, AWS credentials or private environment files to Git.

First organization

After the files and database are ready, open Neptune's first-time installer and create the initial organization and owner account.

Disable, remove or rename the installer after initialization so it cannot be reused on a production deployment.

Production deployment

Use a real hostname, HTTPS, a supported PHP version, MySQL, appropriate file ownership/permissions and server backups. Test PHP syntax and the application before applying production updates.

Typical Ubuntu / Apache example
# 1) Install a typical web stack
sudo apt update
sudo apt install apache2 mysql-server php php-mysql \
php-curl php-mbstring php-xml php-zip php-gd unzip git

# 2) Clone Neptune
git clone https://github.com/blarkin13/neptune-frc-scouting neptune
cd neptune

# 3) Public/private layout
/var/www/.../public_html/Neptune/
../neptune_secure/
sql/
scripts/

# 4) Create the database and import Neptune's schema
mysql -u root -p
CREATE DATABASE Neptune;
EXIT;
mysql -u root -p Neptune < sql/neptune_schema.sql

# 5) Create the private config
cp neptune_secure/config.example.php \
neptune_secure/config.php

# Add DB credentials + TBA configuration to config.php

# 6) Point Apache at the public Neptune application
# Keep neptune_secure OUTSIDE the public web root.

# 7) Create the first organization + owner
/Neptune/register.php

# Neptune has no admin/install.php browser installer.
# After sign-in, run System Check and review Maintenance Console.
Git Workflow

Develop locally. Review changes. Deploy deliberately.

Keep the source in GitHub, make application changes in a development environment, and deploy tested updates to the production or portable server.

Clone or pull the repository Start from the current source instead of maintaining disconnected copies of the application.
Test before production Lint PHP, test the affected workflow and keep a rollback copy before a risky event-week update.
Keep secrets out of Git Database passwords, environment files and private keys belong in protected server configuration.
AWS / VPS Notes

Neptune does not require a special cloud provider.

The application needs a web server, PHP and MySQL. AWS is one way to provide that stack, but another Linux VPS or suitable team-owned server can run the same application.

Hostname + HTTPS Use a stable domain and TLS certificate for an internet-facing production instance.
Back up before major updates Protect both the application state and database, especially before competition-week changes.
Restart/reload services carefully Validate configuration and PHP syntax before reloading Apache or applying a production package.
Architecture & Security

Designed for team data, not a pile of public PHP files.

Neptune separates public application files from protected configuration, scopes operational data by organization, and uses common web security controls throughout the application.

Password hashing

User passwords are verified using PHP's password-hashing APIs rather than stored as readable passwords.

Private configuration

Database and API configuration can remain outside the public web root instead of being directly served by Apache.

Prepared database access

Operational application queries use prepared statements rather than building unsafe SQL from browser input.

Role-aware access

Administrative, scouting and organization functions are separated according to the user's authenticated role.

Organization scoping

Operational data is associated with organizations so one organization's application view does not become another team's database view.

Read-only analysis controls

Database exploration can remain read-only and organization-scoped rather than exposing unrestricted server administration.

Common Questions

Which Neptune setup fits your team?

Do we need to run our own server?
No. A team can register an organization on the hosted Neptune installation and use the platform without managing the underlying server. Self-hosting is available for teams that want their own infrastructure.
Can Neptune run without relying on venue internet?
A portable Neptune server can be placed on a local event LAN so scout devices communicate with a server physically at the venue. Internet-dependent services, such as pulling new TBA data, naturally require an internet connection when used.
Can we prepare an event before TBA publishes everything?
Yes. Neptune can work with manually created events so pre-scouting and pit work can begin early. When official TBA data becomes available, the event can be linked and synchronized rather than replaced with a duplicate.
Can multiple organizations use the same Neptune installation?
Yes. Neptune supports organization-owned operational data and user accounts. Sharing relationships can expose selected categories to another organization without transferring ownership of the original scouting records.
Does Neptune only work for one FRC game?
No. Neptune's Game Builder and game configuration model allow events to reference a specific game definition, including its scouting actions and scoring behavior.
Can developers customize Neptune?
Yes. Neptune is a PHP/MySQL application with its source managed through GitHub. A local development installation is the safest place to test interface, game, analytics and database changes before deploying them to a production server.
Start With Neptune

Use the hosted platform or make it your own.

Register your team and start configuring Neptune now, or use the GitHub project to deploy a private cloud, portable event or local development instance.