-
-
Your Persona DNA is a visualization of your position in a 380+ dimensional vector space shown as a radar + sliders
-
Clubs are ranked by AI using personality embeddings, urgency, and social signals.
-
A live campus heatmap surfaces events and clubs in the next 48 hours using geospatial + temporal intelligence.
-
Events are ordered by a hybrid AI score combining persona fit, friends attending, and real-world urgency.
-
Your friends list is organized by shared DNA, clusters, and experiences.
-
Discover people through embedding-based compatibility, shared events, and persona DNA alignment.
Persona
When I first came to A&M, knowing it was one of the biggest Universities in the country, I thought finding friends, activities, and clubs to join were going to be easy with so many people and opportunities all around. However, I soon realized a few months into my freshmen year that school and having to manage my own life was feeling overwhelming and I had little energy left to go scourge for events to attend and socialize with strangers. Knowing how hard it is for students to balance their school work, job search, life issues and on top of that searching for their own community that they can feel wanted in, inspired us to explore the idea of personalized recommendations for activities and events to be a part of in your community. That idea, after many discussions and iterations, became what you now see as Persona.
Andy C, Persona Co-Founder
What is Persona?
There is a very famous quote by Albert Einstein. He wrote ”Everybody is a genius. But if you judge a fish by its ability to climb a tree, it will live its whole life believing that it is stupid.”
Our hobbies are the ultimate reflection of our psychology. There’s a mountain of research, but more than that, personal experience from all of us at Persona that shows this. It can’t be stated with words how important it is to involve yourself in activities that reflect who you are as a person.
So, what’s the psychological reason behind finding a club, activity, or group of people that just clicks?
- Novelty / Adventure / Creativity → Linked to Openness to Experience and Sensation Seeking, which predict preference for novel, exploratory, and creative activity environments
Barrick, Mount & Gupta, 2003,
Zuckerman, 1994. - Social Energy / Cozy / Intensity → Linked to Extraversion, which predicts preference for socially interactive, group-based, and people-oriented environments
Barrick, Mount & Gupta, 2003,
Lucas & Diener, 2001. - Structure vs. Spontaneity / Strategy → Linked to Conscientiousness (structured, rule-based preferences) versus Openness (flexibility, spontaneity, tolerance for ambiguity)
Barrick & Mount, 1991,
McCrae & Costa, 1997.
Persona maps the most important aspects of your personality and helps you find exactly the clubs, events, and friends that will click for you.

‘Persona DNA.’
The first thing every user does when they join Persona is take a short, psychologically optimized test for the 8 most important aspects of a person's passion personality. The context and foundation of Persona is built on this map of every single user’s preferences.
Persona leverages your DNA to match you with clubs, people, and events. Users get the chance to scroll through social networks that are perfectly personalized to their personality and connect with others who share the same psychologically.
Persona DNA is also evolving. Every like, skip, event joined, club meeting attended, and friend made changes your DNA.
The technicals
Persona is powered by a hybrid AI recommendation system that models students, clubs, and events in the same semantic space. Persona computes alignment using transformer embeddings, behavioral signals, and psychologically grounded traits.
Embeddings & Representation
We use a transformer-based model (MiniLM via @xenova/transformers) to encode user traits, club descriptions, and event details into dense vector representations.
const embedding = model.encode(
'International Cuisine Club: Discover spicy global food!'
);
// Result: Float32Array(384)
This allows Persona to compare users and opportunities based on semantic meaning rather than keywords.
Similarity & Matching
Persona uses cosine similarity to measure how well a user aligns with an event or club.
const similarity = cosineSimilarity(userVector, eventVector);
// 0.0 = no match, 1.0 = perfect match
Higher similarity scores indicate stronger predicted alignment between a student’s personality and an opportunity’s social and experiential energy.
Hybrid Scoring
Final recommendations are generated using a hybrid scoring system that blends multiple signals, ensuring matches feel both accurate and intuitive.
const finalScore =
(0.55 * vectorSimilarity) +
(0.25 * collaborativeFiltering) +
(0.20 * traitExplanation);
Urgency Modeling
Persona accounts for timing by prioritizing opportunities with upcoming meetings or deadlines.
const hoursUntil = (eventDate - now) / 3600000;
const urgencyScore =
hoursUntil < 24 ? 100 :
hoursUntil < 48 ? 85 :
hoursUntil < 72 ? 70 : // ...descending
What’s Next
We are very excited to begin building a community on Persona, and the best place to start will be more and better event creation tools. Another place we want to expand is by enlisting specific clubs into joining the platform.
Persona is so exciting for us as a team because it really has the ability to make a positive impact on many, many students' lives. Today more than ever, young people make do with hundreds of shallow connections and very few meaningful, close friendships. Social media is designed to make breadth of interaction rather than depth. (Scot et al). All of us at Persona are so excited to keep working on a product which finally devotes itself to making those kinds of deep connections that are missing in today’s online social spaces.
Signed the Persona team: Andy, Colin, Devon, and Garv.
Built With
- cartodb-tiles
- collaborative-filtering
- cosine-similarity
- drizzle-orm
- express.js
- github
- haversine
- javascript
- leaflet.js
- node.js
- openid-connect
- pgvector
- postgresql
- react
- replit-auth
- shadcn/ui
- svg
- tailwind-css
- typescript
- vite
- xenova/transformers-(all-minilm-l6-v2)
Log in or sign up for Devpost to join the conversation.