Personality-Driven Username Generator via Genetic-Neuro Ensemble
Explore the poster »
View Demo
·
Report Bug
·
Request Feature
This project integrates a neural network and genetic algorithm to generate personalized usernames based on user personality traits. Users start with a personality quiz that quantifies traits into a numerical vector. A neural network then translates these traits into desired username characteristics (e.g., character types, length, tone). A genetic algorithm iteratively evolves username suggestions based on these characteristics, optimizing for highly personalized and creative usernames reflective of user preferences.
- Landing Page: A visually engaging welcome screen introducing users to Epithet AI, with a clear call-to-action to start the quiz.
- Personality Quiz Page: Gathers key personality traits for profiling
- Genetic Algorithm (GA): Optimizes user input to form a refined personality profile
- Neural Network (NN): Predicts the user’s epithet using trained personality data
- Results Page: Displays the user’s unique epithet (personality label), includes descriptive traits and is designed for easy sharing or screenshotting
- Python – Core language for backend logic, neural network, and genetic algorithm implementation.
- FastAPI – Web framework for building and handling REST API endpoints.
- Keras / TensorFlow – Deep learning libraries used to train and run the personality-to-username neural network model.
- PyTorch – Deep learning framework used to train and deploy the neural networks for personality and creativity modeling.
- HTML – Markup language for structuring the UI of the landing page, quiz, and results.
- CSS – Stylesheet language for visual presentation, including layout, fonts, and responsiveness.
- JavaScript – Scripting language used to handle quiz logic, interactivity, and dynamic UI behavior.
- Git & GitHub – Version control and collaborative development.
- pipenv or
requirements.txt– Dependency management for consistent environments.
Here's the folder structure. This is of course not definitive. Feel free to change the files/structures on your own respective folder (again I suggest that you avoid nesting for your own sake)
epithet/
│
├── app/ # Contains main assets and logic for the frontend
| ├── assets/ # Static files like icons, images, or fonts
| ├── data/ # Preprocessed data, constants, or external files used by the app
| ├── scripts/ # JavaScript files controlling UI behavior and interactivity
| ├── styles/ # CSS files for styling the interface
├── index.html # Entry landing page with the "Start" button
├── name.html # Name input for the user.
├── quiz.html # Renders the 15-question personality form
├── result.html # Shows generated username & explanation
│
├── core/ # Core logic: models + GA
│ ├── creativity_nn.py # Load/use trained NN2
│ ├── gen_algo.py # Genetic algo
│ ├── personality_nn.py # Load/use trained NN1
│ ├── preprocess.py # Vector/text preprocessing
│ ├── word_pools.py # Word pools ofc
│
├── models/ # Trained model weights
│ ├── personality_model.pt # Future contents (txt for now)
│ ├── creativity_model.pt # Future contents (txt for now)
│
├── training/ # Training code (not part of Streamlit app)
│ ├── gen_algo/ # Base training/logic for GA
│ │ ├── main.py
│ │ ├── sample_dataset.txt
│ │ ├── train.py
│ ├── nn_creativity/ # Base training for creativity NN
│ │ ├── main.py
│ │ ├── creativity_dataset.txt
│ │ ├── train.py
│ ├── nn_personality/ # Base training for personality NN
│ │ ├── main.py
│ │ ├── train.py
│
├── .gitignore
├── README.md # This README
├── requirements.txt # torch, streamlit, numpy, etc.
| Name | Avatar | GitHub | Contributions |
|---|---|---|---|
| Acelle Krislette Rosales | krislette | Fullstack Developer: Acelle oversaw the entire development process, created the neural network for personality profiling, and handled the website’s backend. | |
| Regina Bonifacio | feiryrej | Frontend Developer: Regina was responsible for designing the landing page and quiz page. She also chose the overall UI theme for both the website and poster. | |
| Henry James Carlos | hjcarlos | Frontend Developer: Henry was responsible for creating the results page, enhanced the website's overall smoothness, and creating the project poster. | |
| Syruz Ken Domingo | sykeruzn | Backend Developer: Syke implemented the genetic algorithm (GA) that iteratively evolves candidate usernames and lead the content making process. | |
| Fervicmar Lagman | perbik | Backend Developer: Fervicmar collaborated on the development of the genetic algorithm, contributing to the design of its core mechanisms, including selection, mutation, and crossover. | |
| Chrysler Dele Ordas | soalaluna | Technical Writer: Chrysler created the content for the project poster, assisted in its design, and provided the physical board for presentation. | |
| Hans Christian Queja | HansQueja | Backend Developer: Hans contributed to the design of the neural network, focused on its creative logic for mapping personality traits to username characteristics. | |
| Princess Jane Drama | pj-drama | UI/UX: Princess Jane assisted in designing the website’s user interface and helped with the poster layout. |
Distributed under the Creative Commons Attribution-NoDerivatives 4.0 International License. See LICENSE for more information.

























