Email Validation in ActionScript 3 — and the Evolution of Web Validation

This email validation snippet for ActionScript 3 addresses a challenge that was still a novelty in the Flash era: validating a form field on the client side. Most Flash applications sent raw data to the server and hoped for the best. The idea of catching malformed input before it ever leaves the user's machine was considered an advanced technique, not a baseline expectation.

The code uses regular expressions to verify the email format before submission. Simple, but effective. And the same pattern -- client-side validation before any processing -- became the foundation of every modern web application. Today, no serious form ships without it. The principle demonstrated in a Flash form is now an industry standard enforced by every framework from React Hook Form to Zod.

From Email to Brazilian Documents

Email validation is universal. But in Brazil, there are country-specific validations that most global libraries do not cover. Brazilian documents have their own algorithmic validation rules that are unique in the world:

  • CPF -- 11 digits with 2 check digits calculated using a modulo-11 algorithm
  • CNPJ -- 14 digits with similar validation but different weights
  • PIS/PASEP -- used in labor and social security calculations
  • State Registration (Inscricao Estadual) -- different format per state (27 variations across Brazil)

All of these validations follow the same principle: verify on the client side, before any submission. In the Flash era, this ran on the Flash Player. Today, it runs directly in the browser via JavaScript -- no plugin, no installation, no dependencies. The validation logic is the same; the delivery mechanism is infinitely more accessible.

The Deeper Principle: Trust Through Validation

What makes this email validation approach noteworthy is not the regex itself -- it is the philosophy behind it. By validating on the client, you give the user immediate feedback. You tell them "this is wrong" before they wait for a server round-trip. You respect their time. This philosophy of immediate, honest feedback is what separates good tools from bad ones.

The same principle applies to every tool Stimuli builds. When someone enters their salary into a severance calculator, the input is validated immediately. When someone checks a CPF, the check digits are verified instantly. There is no "submit and wait." The tool tells you right away whether your input is valid and what the result is. That instant feedback loop is now the expected standard.

Validation as a Tool

What began as a snippet for developers now exists as a tool for anyone. A valid CPF generator for testing, a CNPJ validator, a document verifier -- all use the same validation techniques, packaged in accessible interfaces. The technical knowledge that used to require reading documentation and writing code is now available to anyone with a browser.

Stimuli takes validation logic that developers have used for years and makes it accessible to any Brazilian. From a regex in ActionScript 3 to a full-featured validation suite in the browser -- the destination is the same: helping people get things right the first time.


🇧🇷 Em Portugues

Este snippet de validacao de email em ActionScript 3 aborda um desafio que ainda era novidade na era Flash: validar um campo de formulario no lado do cliente. A maioria das aplicacoes Flash enviava dados brutos para o servidor e torcia para dar certo. A ideia de capturar entrada malformada antes que ela saisse da maquina do usuario era considerada uma tecnica avancada, nao uma expectativa basica.

O codigo usa expressoes regulares para verificar o formato do email antes de submeter. Simples, mas eficaz. E o mesmo padrao -- validacao no cliente antes de qualquer processamento -- se tornou a base de toda aplicacao web moderna. Hoje, nenhum formulario serio e lancado sem isso. O principio demonstrado em um formulario Flash e agora um padrao da industria aplicado por todo framework, de React Hook Form a Zod.

De email para documentos brasileiros

Validar email e universal. Mas no Brasil, existem validacoes especificas que a maioria das bibliotecas globais nao cobre. Documentos brasileiros tem suas proprias regras de validacao algoritmica que sao unicas no mundo:

  • CPF -- 11 digitos com 2 digitos verificadores calculados por algoritmo de modulo 11
  • CNPJ -- 14 digitos com validacao similar mas pesos diferentes
  • PIS/PASEP -- usado em calculos trabalhistas e previdenciarios
  • Inscricao Estadual -- formato diferente por estado (27 variacoes no Brasil)

Todas essas validacoes seguem o mesmo principio: verificar no lado do cliente, antes de qualquer envio. Na era Flash, isso rodava no Flash Player. Hoje, roda direto no navegador via JavaScript -- sem plugin, sem instalacao, sem dependencias. A logica de validacao e a mesma; o mecanismo de entrega e infinitamente mais acessivel.

O principio mais profundo: confianca atraves da validacao

O que torna esta abordagem de validacao de email notavel nao e a regex em si -- e a filosofia por tras dela. Ao validar no cliente, voce da ao usuario feedback imediato. Voce diz "isso esta errado" antes que ele espere um round-trip ao servidor. Voce respeita o tempo dele. Essa filosofia de feedback imediato e honesto e o que separa boas ferramentas de ferramentas ruins.

O mesmo principio se aplica a toda ferramenta que o Stimuli constroi. Quando alguem digita seu salario em uma calculadora de rescisao, a entrada e validada imediatamente. Quando alguem verifica um CPF, os digitos verificadores sao conferidos instantaneamente. Nao existe "envie e espere." A ferramenta diz na hora se sua entrada e valida e qual e o resultado. Esse loop de feedback instantaneo e agora o padrao esperado.

Validacao como ferramenta

O que comecou como um snippet para desenvolvedores agora existe como ferramenta para qualquer pessoa. Um gerador de CPF valido para testes, um validador de CNPJ, um verificador de documentos -- todos usam as mesmas tecnicas de validacao, empacotadas em interfaces acessiveis. O conhecimento tecnico que antes exigia ler documentacao e escrever codigo agora esta disponivel para qualquer pessoa com um navegador.

O Stimuli pega logicas de validacao que desenvolvedores usam ha anos e as torna acessiveis para qualquer brasileiro. De uma regex em ActionScript 3 a uma suite completa de validacao no navegador -- o destino e o mesmo: ajudar pessoas a acertar de primeira.