Ethiopian Names — Large Dataset (Visitors Can Add)
ኢትዮጵያዊ ስሞች — Ethiopian Names
Large list (auto-generated from curated seeds) with search & filters. Visitors can also submit names below — saved locally in your browser.
➕ ስም መጨመር — Add a Name
| ስም (Amharic) |
Name (English) |
Meaning |
Gender |
Origin |
Group |
`;
}
function render(){
const rows=filtered();
let html="";
for (let i=0;i
${r.am||""} | ${r.en||""} | ${r.meaning||""} |
${r.gender||""} | ${r.origin||""} | ${r.group||""} |
`;
// Insert ad after every ADS_EVERY names (e.g., after 100, 200, …)
if ((i+1) % ADS_EVERY === 0) {
html += adBlockHTML(i+1);
}
}
tbody.innerHTML = html;
count.textContent=`${rows.length} names shown${showGen.checked ? "" : " (generated variants hidden)"}`;
}
function trim(v){return (v||"").trim();}
function duplicateExists(am,en){
return combined().some(r=>r.am===am && r.en.toLowerCase()===en.toLowerCase());
}
addBtn.onclick=()=>{
const entry={
am: trim(am_in.value), en: trim(en_in.value), meaning: trim(meaning_in.value),
gender: gender_in.value, origin: origin_in.value, group: group_in.value
};
if(!entry.am || !entry.en || !entry.meaning){
msg.textContent="Please fill Amharic, English, and Meaning."; msg.className="warn"; return;
}
if(duplicateExists(entry.am, entry.en)){
msg.textContent="That name already exists (same Amharic + English)."; msg.className="err"; return;
}
const mine=loadUser(); mine.push(entry); saveUser(mine);
am_in.value=en_in.value=meaning_in.value=""; msg.textContent="Added!"; msg.className="ok"; render();
};
clearUserBtn.onclick=()=>{ localStorage.removeItem(LS_KEY); msg.textContent="Cleared your added names."; msg.className="ok"; render(); };
[q,gender,origin,groupSel,sortSel,showGen].forEach(el=>el.oninput=render);
render();
Comments