{"id": "dom_tags_input", "prompt": "input onde digitar uma palavra e apertar enter vira uma tag com um x pra remover. enter com o campo vazio não pode criar nada", "kind": "dom"}
{"id": "css_navbar_espacada", "prompt": "ficou tudo amontoado na esquerda. queria a logo na ponta esquerda e os links na ponta direita", "kind": "css"}
{"id": "dom_paginacao", "prompt": "tenho uma lista de 12 itens e quero mostrar 5 por pagina com botao de anterior/proximo, e ela nao pode passar da ultima pagina", "kind": "dom"}
{"id": "dom_contador_caracteres", "prompt": "faz um textarea com contador mostrando quantos caracteres ainda cabem em 140. quando passar do limite mostra numero negativo e fica vermelho", "kind": "dom"}
{"id": "layout_proporcao_16_9", "prompt": "o embed do youtube da minha página tinha que manter o formato 16:9 em qualquer largura, agora ele fica com tarja", "kind": "layout"}
{"id": "js_truncar", "prompt": "duas coisas: o total ta saindo maior que o meu limite por causa dos pontinhos, e ele corta palavra no meio", "kind": "js"}
{"id": "html_imagem_picture", "prompt": "a imagem do hero mata minha nota no mobile — eu tenho hero-small.jpg pro celular e hero.jpg pro resto", "kind": "html"}
{"id": "dom_teclado_atalho", "prompt": "campo de busca onde apertar / em qualquer lugar da pagina foca nele, e esc limpa o que eu digitei", "kind": "dom"}
{"id": "dom_confirma_senha", "prompt": "dois campos de senha, senha e confirmar, avisando quando nao batem e so liberando o botao de criar conta quando conferem", "kind": "dom"}
{"id": "js_valida_email", "prompt": "me da uma funcao pra validar email em js, sem lib. so o formato mesmo", "kind": "js"}
{"id": "dom_detalhes_linha", "prompt": "tabela de pedidos onde cada linha tem um botão de + que abre uma linha de detalhes logo embaixo dela", "kind": "dom"}
{"id": "dom_tabela_ordenavel", "prompt": "o preço ordena errado, 100 aparece antes de 20. e clicar duas vezes no mesmo cabeçalho tinha que inverter a ordem", "kind": "dom"}
{"id": "html_tabela_caption_scope", "prompt": "preciso de uma tabela com o horario das aulas de segunda a sexta que funcione bem pra quem usa leitor de tela", "kind": "html"}
{"id": "layout_caixa_centralizada", "prompt": "põe uma caixa de 200 por 100 pixels bem no centro da tela, na horizontal e na vertical", "kind": "layout"}
{"id": "js_bytes_humano", "prompt": "formata um tamanho de arquivo em bytes pra algo legível, tipo 1.5 KB ou 1.2 MB", "kind": "js"}
{"id": "dom_stepper", "prompt": "preciso de um seletor de quantidade com - e +, de 1 ate 10, e o botao tem que desabilitar quando chega no limite", "kind": "dom"}
{"id": "css_fonte_sistema", "prompt": "meu site ta com aquela fonte serifada padrao do navegador e parece coisa de 2003. deixa com cara de app moderno", "kind": "css"}
{"id": "js_mediana", "prompt": "preciso da mediana de uma lista de numeros em js, a lista vem fora de ordem", "kind": "js"}
{"id": "html_labels_de_verdade", "prompt": "os campos so tem placeholder, o texto some quando eu comeco a digitar. poe label de verdade em cada um", "kind": "html"}
{"id": "dom_carrossel_dots", "prompt": "carrossel com 3 slides e bolinhas embaixo, clicar numa bolinha pula pro slide dela e a bolinha mostra qual ta ativo", "kind": "dom"}
{"id": "dom_cor_fundo", "prompt": "seletor de cor que pinta uma caixa com a cor escolhida e mostra o código hex embaixo", "kind": "dom"}
{"id": "layout_header_fixo", "prompt": "ela some assim que eu desço a página, eu quero ela grudada no topo", "kind": "layout"}
{"id": "dom_toast", "prompt": "botão que solta uma mensagenzinha de toast no canto dizendo que salvou, e o toast some sozinho depois de uns 2 segundos", "kind": "dom"}
{"id": "dom_rating_estrelas", "prompt": "faz uma avaliacao de 5 estrelas onde clicando na terceira acende as 3 primeiras e mostra a nota embaixo", "kind": "dom"}
{"id": "css_tabela_zebra", "prompt": "minha tabela de dados e um paredao de numeros, eu me perco na linha. deixa ela legivel", "kind": "css"}
{"id": "css_classe_utilitaria", "prompt": "queria uma classe só pra jogar em qualquer texto secundário e deixar ele menor e cinza — uso ela em uns lugares da página", "kind": "css"}
{"id": "dom_imc", "prompt": "calculadora de imc com campo de peso e altura em metros, mostrando o valor e a faixa (abaixo do peso, normal, sobrepeso, obesidade)", "kind": "dom"}
{"id": "layout_badge_canto", "prompt": "cada card de produto precisa de uma tagzinha de \"novo\" presa no canto superior direito dele", "kind": "layout"}
{"id": "dom_login_erro", "prompt": "tela de login de mentira, admin / 1234 mostra uma mensagem de boas-vindas e qualquer outra coisa mostra um erro embaixo do form", "kind": "dom"}
{"id": "html_artigo_headings", "prompt": "escreve o html de um post de blog sobre fazer café em casa, com um título e três seções, cada uma com o seu heading", "kind": "html"}
{"id": "layout_cards_quebram", "prompt": "no meu notebook eles ficam espremidos na metade disso em vez de pular pra linha de baixo", "kind": "layout"}
{"id": "js_flatten", "prompt": "preciso de um flatten pra array aninhado, qualquer profundidade, mas quero poder parar em um nível só também", "kind": "js"}
{"id": "js_throttle", "prompt": "meu handler de scroll dispara centenas de vezes, quero um throttle que roda ele na hora e depois no maximo uma vez a cada 200ms", "kind": "js"}
{"id": "dom_mascara_cartao", "prompt": "input de cartao de credito que vai formatando 0000 0000 0000 0000 enquanto eu digito, ignora letra e para em 16 digitos", "kind": "dom"}
{"id": "js_paginar", "prompt": "preciso paginar um array no cliente. o numero da pagina comeca em 1 e eu quero de volta os itens mais quantas paginas tem, tipo { items, totalPages }. lista vazia significa 0 paginas", "kind": "js"}
{"id": "css_coluna_leitura", "prompt": "o texto da pagina de artigo ocupa a largura inteira de um monitor de 27 polegadas e cansa demais de ler", "kind": "css"}
{"id": "css_header_sticky", "prompt": "o cabecalho do meu site some quando eu rolo a pagina, queria ele grudado no topo o tempo todo", "kind": "css"}
{"id": "css_input_foco", "prompt": "navegando de tab no meu form não dá pra saber em qual campo eu estou. o outline padrão foi apagado pelo meu reset", "kind": "css"}
{"id": "layout_container_largura", "prompt": "põe o conteúdo todo da página dentro de uma coluna de 600px centralizada na tela", "kind": "layout"}
{"id": "dom_favoritos", "prompt": "lista de 3 musicas com um coracao em cada uma pra favoritar, e um contador em cima mostrando quantas estao favoritadas", "kind": "dom"}
