Myreliq is a Solana-native platform that lets students and early-career builders capture every role, milestone, and endorsement in a single verifiable proof-of-work profile. The marketing site already mirrors the live experience; this document dives into the product vision so the full project reads like a hackathon-winning build.
Students entering the workforce fight four structural issues:
- Portfolio friction – Rebuilding Notion pages, PDFs, or Squarespace sites for each opportunity is slow and expensive.
- Fragmented proof – Work sits across GitHub, Drive, Figma, Medium, X, YouTube, etc., so recruiters cannot see the whole narrative.
- No objective verification – References hide in DMs or emails, while credentials are screenshots that anyone can fake.
- No longitudinal story – Traditional portfolios show glossy end results, not the messy, iterative journey that proves growth.
Result: students with multiple “hats” (designer + researcher + writer) juggle several portfolios that decay the moment they ship something new. There is no simple, structured, affordable way to build and continuously update a professional proof-of-work presence.
Build a Solana-powered proof-of-work graph.
Myreliq is the single, canonical profile where students:
- Document roles, projects, and milestones with guided prompts.
- Split their identity into multiple skill lanes (“Frontend Dev”, “Content Lead”, “Researcher”) under one account.
- Receive verifiable, cryptographic endorsements and credentials from institutions, DAOs, or mentors.
- Publish a public, mobile-friendly timeline that anyone can verify against on-chain fingerprints.
On the other side, recruiters and communities query Myreliq to filter talent based on real, auditable history instead of static resumes.
Myreliq combines a beautiful portfolio builder with Solana programs that anchor credibility:
- Guided capture – Prompted inputs for bio, education, skills, roles, projects, milestones, and proof artifacts.
- Skill identities – Each “hat” gets its own curated set of roles and milestones, but all live under one wallet/account.
- Solana anchoring – Publishing a portfolio produces a canonical JSON hash stored on-chain, proving timestamped authenticity.
- Soulbound credentials – Bootcamps, universities, and communities mint non-transferable tokens to recognize verified achievements.
- On-chain endorsements – Mentors/managers sign structured endorsements tied to specific roles.
- Single shareable link – Output is a responsive profile showing roles, timelines, badges, and “Verified on Solana” sections.
Myreliq treats persistence as three coordinated layers: relational data, object/file storage, and on-chain references.
Production uses Postgres as the system of record. Core tables:
users– auth + roles (student,recruiter,issuer_admin,super_admin), wallet address, timestamps.profiles– extended bio, education, headline, availability, completion score.skill_identities– “hats” a user can switch between (name, slug, description, primary flag).roles+role_tags– experiences per identity plus tagged skills/tools.milestones– timeline entries with metrics, media references, achieved_at timestamp.portfolio_versions– immutable publish history (version number, JSON hash, Solana signature, visibility).organizations+organization_members– issuers/communities and their admins/instructors/students.credentials– logical representation of issued SBTs (title, description, metadata URI, Solana mint/PDA, status).endorsements– mentor/manager reviews tied to specific roles (rating, relationship, optional Solana tx).connections– social graph (follow, collaborator).shortlists+shortlist_members– recruiter-managed candidate lists.audit_logs– every privileged action (actor, entity, metadata JSONB).
Note: The current prototype uses MongoDB (
models/Profile.ts) for rapid iteration, but all fields map 1:1 with the relational schema above. Migrating to Postgres is a planned milestone.
Supabase Storage or S3 handles binary assets:
profiles/{user_id}/avatar.jpg– headshots.milestones/{milestone_id}/media/*– screenshots, videos, docs.credentials/{credential_id}/certificate.png– issuer-branded certificates.
Issuers can optionally pin canonical credential media to IPFS/Arweave and keep the CID in credentials.metadata_uri.
Only proofs live on-chain:
- Portfolio hashes + metadata (PortfolioProgram).
- Credential/SBT mint references (CredentialProgram).
- Optional hashed endorsements.
This keeps chain costs minimal while letting anyone verify that the web experience matches the immutable record.
- Install dependencies:
npm install. - Configure
.env.localwith:MONGODB_URI=<connection_string>(defaults tomongodb://127.0.0.1:27017/myreliqfor local prototyping)ACCESS_TOKEN_SECRET=<random_64_char_string>for signing access tokens
- Start Mongo locally (
brew services start mongodb-communityor Docker). - Run the dev server:
npm run dev.
Once Supabase/Postgres is provisioned, swap the persistence layer to the schema described in §4.1.
Schemas for all profile data currently live in models/Profile.ts, and lib/store.ts exposes CRUD helpers consumed by API routes.
Myreliq distinguishes three categories of state:
- Data fetched from APIs/DB/Solana (profiles, roles, milestones, portfolio versions, organizations).
- Managed with TanStack Query (future milestone) via hooks like
useProfileQuery(userId),useRolesQuery(skillId), etc. - Cache keys follow
['profile', userId],['milestones', roleId], etc., enabling optimistic updates and revalidation.
- Form inputs, modal visibility, onboarding wizard steps, feature flags.
- Managed with Zustand (
store/useBuilderStore.ts) for lightweight, explicit control; can be extended with contexts for modals or wizards. - React Hook Form + Zod will handle validation-heavy flows (profile completion, role creation, credential issuance).
- Session info lives in HTTP-only cookies; frontend fetches
/api/meand stores the user in a global store. - Wallet connections handled via
@solana/wallet-adapter-reactfor publish/credential signature flows. - RBAC gating across UI (students vs issuers vs admins) happens via role checks on both server and client.
- Email/password registration + login with Argon2id hashing.
- Sessions persist via hashed refresh tokens stored in Mongo (
models/Session.ts) and httpOnly cookies (reliq_access,reliq_refresh). - Access tokens (15 min) power server-side guards and route protection; refresh tokens rotate every call.
/api/auth/me,/api/auth/refresh,/api/auth/logoutendpoints cover session lifecycle.- Role-aware redirects: admins land on
/admin, standard users on/dashboard. - Server components enforce RBAC via helpers in
lib/auth-guards.ts.
Future upgrades (MFA, device management, audit logging, etc.) follow the specification above.
- Students – create portfolios, log milestones, receive credentials.
- Recruiters/Hiring Managers – search/filter talent, manage shortlists, follow students.
- Issuers/Organization Admins – run bootcamps/cohorts, issue credentials/SBTs, manage members.
- Platform Admins – verify orgs, moderate content, manage abuse, oversee on-chain publication integrity.
Multi-role support comes from users.role plus organization_members.role to distinguish responsibilities per org.
- Student ↔ Organization – many-to-many via membership (students in multiple communities, orgs with multiple cohorts).
- Student ↔ Recruiter – connections (
follow,collaborator) and shortlist membership. - Student ↔ Student – follows/collaborations enabling social feeds or shared milestones.
- Student ↔ Mentor – mentors issue endorsements; higher weight in scoring.
- Issuer ↔ Student – credentials link issuers to alumni; org admins can monitor issuance history.
- Admin ↔ Everything – super admins approve orgs, ban users, audit credential issuance.
Optional social extensions include project collaborators, shared milestones, and an activity feed (“X shipped a new milestone”).
Myreliq ships two admin flavors: super admin (platform) and organization admin.
- Overview Dashboard – KPIs (users, published portfolios, verified orgs, credentials issued, on-chain publications), plus DAU and issuance charts.
- User Management – table with filters, role switches, suspend/unsuspend, view profile, reset 2FA.
- Organization & Issuer Management – approval queue, detailed org view, ability to approve/reject, inspect credential history.
- Content & Abuse Moderation – flagged milestones/media/endorsements, actions to hide/delete/warn; every action logged in
audit_logs. - Credential & On-Chain Audit – view credential ledger per org, compare portfolio JSON hash vs DB state, link to Solana tx.
- System Settings – feature flags, email templates, rate limits.
- Org Overview – summary cards (members, credentials issued, active programs).
- Member Management – add/remove/invite students and mentors, assign roles.
- Programs/Cohorts – define cohorts, attach completion criteria.
- Credential Issuance – templates, batch issuing, Solana status, revocations.
- Endorsement Oversight – monitor mentor endorsements, revoke/report misuse.
Both panels reuse the same state strategy (React Query for fetches, Zustand for UI) with middleware enforcing RBAC.
-
Onboarding & Base Profile
- Email/password or seedless auth.
- Automatic base profile plus optional Phantom/Solflare connection.
- Fields: name, bio, education, interests, skills, availability, headshot, optional certifications.
-
Role / Experience Entry
- Title, org/project, start/end dates, work mode, description prompts, tags, proof links.
-
Multi-Skill Portfolios
- Create “hats” (e.g., Web3 Dev, Product Writer).
- Each hat has its own subset of roles/milestones and its own shareable URL.
-
Milestone Logging
- Per role: milestone description, date, optional metrics, media upload, timeline view.
-
Shareable Portfolio Link
- Public URL rendering profile + skill lanes + milestones + badges.
- Mobile responsive and recruiter-friendly.
-
Initial Solana Hooks
- First publish writes portfolio hash + version to a Solana program.
- Demo issuer mints an SBT credential to show verification working end-to-end.
- Issuer dashboard – Cohorts/batches mint SBTs in bulk, track alumni, revoke or update credentials.
- Verified endorsements – Role-specific endorsements recorded on-chain with issuer reputation weighting.
- Downloadable CV & case-study PDFs – Auto-generated documents with QR links to on-chain fingerprints.
- Portfolio personalization – Theme picker, layout toggles, custom sections per skill.
- Recruiter search – Filter by skills, tools, location, availability, Proof-of-Growth score, credential count.
- Integrations – GitHub, Dribbble, Behance, Medium/Substack, YouTube, X; attach imported artifacts to roles.
- Analytics – Views, clicks, recruiter engagement, milestone consistency metrics.
- Proof-of-Growth Explorer – Visualize a student’s milestones, credentials, and endorsements as a timeline graph.
- Cohort dashboards showing all alumni, their status, and aggregate stats for partner communities.
- One-click job package – Generate the best-fit portfolio + endorsements + verifiable hash per job application.
- Open API – Recruiters or EdTech partners can request candidate data (with consent) or trigger credential issuance.
- Tokenized incentives – Off-chain points (future SPL token) for completing profiles, earning credentials, referrals, etc., redeemable for premium themes or featured placement.
| Layer | Responsibility |
|---|---|
| Portfolio Program | Stores user_pubkey, portfolio version, hash, timestamp. Guarantees that a public profile equals a specific on-chain fingerprint. |
| Credential Program | Registers issuers and mints non-transferable SBT credentials containing course/program metadata. |
| Endorsement Program | Records structured endorsements referencing role IDs with signer, relationship, rating, and note. |
| Reputation Layer | Off-chain score composed from credential count, issuer quality, endorsement weight, and milestone cadence. Anchoring references are on-chain for auditability. |
Heavy assets (images, PDFs, video) live in object storage (Supabase/S3 for MVP, optional IPFS/Arweave later). Only hashes and metadata pointers hit Solana to keep costs minimal.
- Onboarding, profile editor, milestone logger, skill lane manager.
- Wallet connection + signing for publish and credential acceptance.
- Issuer dashboard and recruiter view (post-MVP).
- Public portfolio and Proof-of-Growth explorer screens.
- Node/TypeScript service handling auth, CRUD, integrations, webhook ingestion.
- Generates canonical portfolio JSON, computes hashes, and fires Solana transactions.
- Job queue for PDF generation, scheduled syncs, and analytics aggregation.
users,profiles,skill_identities,roles,milestones,credentials,endorsements,analytics_events.- Mirrors on-chain data for fast reads while referencing transaction IDs for verification.
- Create profile live – show onboarding, add a “Frontend Dev” hat, add roles and milestones.
- Publish – sign transaction, open Solana explorer to prove the portfolio hash was stored.
- Show portfolio – share link, highlight responsive UI, verified badge, timeline.
- Issuer flow – switch to issuer dashboard, mint an SBT credential to the same user. Refresh portfolio to show the new badge.
- Proof-of-Growth Explorer – display the timeline visualization correlating milestones with credentials and endorsements.
- Recruiter search teaser – filter by stack + credential count, open profile, verify fingerprint via on-chain hash.
Close with: “Students finally have proof-of-work and proof-of-trust. Myreliq leverages Solana to make portfolios verifiable, dynamic, and future-proof.”
- Finish wiring the MVP dashboards behind the marketing site.
- Build the initial Solana programs (portfolio hash + demo credential).
- Stand up issuer tooling and Proof-of-Growth explorer for the hackathon demo.
- Line up partner institutions/communities for the first batch of verifiable credentials.
Myreliq already looks the part. With this documentation and architecture, the product pitch is now hackathon-ready and clearly grounded in Solana-native value. Let’s ship.