Ace Citizenship
Um aplicativo iOS gratuito que criei para ajudar minha esposa a passar no teste de cidadania americana. Ela passou. Agora ele ajuda outras pessoas a realizarem o mesmo sonho.
Resumo
Quando minha esposa começou a se preparar para o teste de naturalização americana, não consegui encontrar um aplicativo de estudo que atendesse aos meus padrões. A maioria estava repleta de anúncios, usava conteúdo desatualizado ou ignorava técnicas de aprendizado comprovadas. Então eu criei um.
O Ace Citizenship cobre todas as 128 questões oficiais de educação cívica do USCIS usando repetição espaçada - a mesma técnica que torna o Duolingo eficaz. Minha esposa o usou para estudar, passou no teste e se tornou cidadã americana.
O aplicativo é e continuará sendo completamente gratuito. Sem anúncios, sem assinaturas, sem pegadinhas. Algumas coisas importam mais do que receita.
A História de Origem
Criei o Ace Citizenship para um público de uma pessoa: minha esposa. Ela precisava passar no teste de naturalização do USCIS, e eu queria dar a ela a melhor ferramenta possível para ter sucesso.
Os aplicativos existentes no mercado eram decepcionantes. Anúncios intrusivos interrompiam as sessões de estudo. Paywalls de assinatura bloqueavam o acesso a conteúdo essencial. O design parecia um improviso.
Eu sabia que poderia fazer melhor. Então projetei, criei a marca e desenvolvi todo o aplicativo do zero - um trabalho de amor que combinou minha experiência em design de produto com minha paixão por criar software útil.
O App
Ace Citizenship oferece uma experiência premium sem o preço premium. A interface é limpa, focada e respeita seu tempo.
Design Visual
Criei uma linguagem visual 3D coesa - sonhadora, otimista, distintamente americana - que faz estudar parecer menos uma tarefa.
Cada ilustração foi gerada no Midjourney usando prompts personalizados que refinei ao longo de mais de 100.000 gerações de imagens. A paleta suave de azul e rosa evoca calma enquanto mantém tons patrióticos. Esta não é a estética típica de aplicativo governamental.
Mais das minhas artes geradas por IA em dreamofelectric.com. dreamofelectric.com.
Repetição Espaçada
No coração do Ace Citizenship está um algoritmo de repetição espaçada que otimiza as sessões de estudo. Perguntas com as quais você tem dificuldade aparecem com mais frequência, enquanto o material dominado passa para intervalos de revisão mais longos.
Esta abordagem baseada em evidências reduz drasticamente o tempo de estudo enquanto melhora a retenção. Em vez de revisar todas as 128 perguntas sem pensar, os usuários focam sua energia onde mais importa.
O app acompanha o progresso e se adapta aos padrões de aprendizado individuais, proporcionando uma experiência personalizada que parece inteligente e responsiva.
Aprendizado Personalizado
Algumas perguntas do USCIS têm respostas que dependem da sua situação específica - seu estado de residência, seus representantes no Congresso. Ace Citizenship personaliza essas perguntas para corresponder às suas condições reais de teste.
Esta atenção aos detalhes significa que os usuários não estão apenas memorizando respostas genéricas; estão aprendendo as informações exatas que precisarão no dia do teste.
Implementação Técnica
Construído inteiramente em SwiftUI para iOS, Ace Citizenship aproveita ao máximo os frameworks modernos da Apple. O app usa SwiftData para persistência local, garantindo que o progresso sincronize entre dispositivos via iCloud sem exigir contas de usuário.
A arquitetura é sustentável e eficiente. O banco de perguntas é atualizado perfeitamente quando o USCIS revisa sua lista oficial, e o motor de repetição espaçada roda inteiramente no dispositivo para feedback instantâneo.
Seguir as Human Interface Guidelines da Apple garante que o app pareça nativo e familiar. Os usuários não precisam aprender novos padrões de interação - podem focar inteiramente nos estudos.
Por Baixo do Capô
Alguns padrões interessantes do código que tornam o app eficaz.
Algoritmo de Repetição Espaçada
O motor de aprendizado principal prioriza perguntas com as quais você tem dificuldade. Quando você responde incorretamente, esse cartão vai para uma fila separada que é misturada na sua próxima sessão de estudo - garantindo que você veja material difícil com mais frequência até dominá-lo.
func completeCard(correct: Bool) {
if !currentSet.isEmpty {
let card = currentSet.removeFirst()
remainingCards -= 1
if correct {
cards.append(card) // Back to main deck
} else {
incorrectCards.append(card) // Priority requeue
}
}
}
func prepareNextSet() {
// Prioritize missed questions in next round
let incorrectCount = min(incorrectCards.count, 10)
let newCardsCount = 10 - incorrectCount
currentSet = Array(incorrectCards.prefix(incorrectCount))
incorrectCards.removeFirst(incorrectCount)
currentSet += Array(cards.prefix(newCardsCount))
}
Personalização por Estado
O app mantém um banco de dados de todos os 50 estados mais territórios, atualizado para o atual 119º Congresso. Quando você seleciona seu estado, perguntas sobre senadores, governadores e capitais são personalizadas para corresponder às suas condições reais de teste.
struct StateInfo {
let name: String
let senators: [String]
let governor: String
let capital: String
}
// Updated for 119th Congress (January 2025)
let stateInformation: [String: StateInfo] = [
"California": StateInfo(
name: "California",
senators: ["Adam Schiff", "Alex Padilla"],
governor: "Gavin Newsom",
capital: "Sacramento"
),
// ... all 50 states + territories
]
Sistema de Temas Type-Safe
O sistema de temas usa o recurso KeyPath do Swift para segurança em tempo de compilação. Em vez de buscas de cores baseadas em strings que podem falhar silenciosamente, cada acesso a cores é verificado pelo compilador.
struct Theme {
struct ColorSet {
let background: Color
let surface: Color
let onBackground: Color
let blue: Color
let green: Color
let red: Color
}
static func color(
_ keyPath: KeyPath<ColorSet, Color>,
for colorScheme: ColorScheme
) -> Color {
let colorSet = colorScheme == .dark
? darkMode
: lightMode
return colorSet[keyPath: keyPath]
}
}
// Usage: Theme.color(\.blue, for: colorScheme)
Ela Passou
Minha esposa usou o Ace Citizenship para se preparar para o teste de naturalização. Ela passou. Hoje, ela é cidadã americana.
Aquele momento - juntos no escritório do USCIS enquanto ela segurava seu certificado de naturalização - fez cada hora de desenvolvimento valer a pena. O app funcionou exatamente como planejado.
Ajudando Outros
Após o sucesso da minha esposa, publiquei o Ace Citizenship na App Store. Ele conquistou avaliação de 5 estrelas, e os usuários consistentemente relatam que o app os ajudou a passar no teste de cidadania.
Um usuário escreveu: "Usei este app para praticar 30 minutos todo dia por um mês e passei!" Histórias como esta me lembram por que construo software - para resolver problemas reais para pessoas reais.
O app continua ajudando imigrantes a alcançar seu objetivo de se tornar cidadãos americanos, uma sessão de estudo por vez. É o projeto mais pessoalmente significativo que já lancei.
Agradecimentos
Ace Citizenship representa o que amo em construir software: resolver um problema real para alguém de quem me importo, e então compartilhar essa solução com o mundo.
Este projeto me permitiu trabalhar em todo o ciclo de vida do produto - desde identificar a necessidade, projetar a experiência, até escrever cada linha de código. É uma expressão pura do meu ofício.
O app é e continuará sendo gratuito. Porque algumas coisas - como ajudar pessoas a se tornarem cidadãos do país que escolheram chamar de lar - são mais importantes que receita.