Repository files navigation

Hellodeck

Short Description

Hellodeck is an end-to-end encrypted messaging and communication platform leveraging Cairo/Calimero SDK for peer-to-peer, self-sovereign data ownership and verified off-chain computing.


Table of Contents

  1. Overview
  2. Key Features
  3. Tech Stack
  4. Getting Started
  5. Project Structure
  6. Short & Long Descriptions
  7. Next Steps & Roadmap

Overview

Hellodeck serves as a proof-of-concept for building decentralized, secure chat solutions. It demonstrates private text messages, user authentication, and modular expansions for future enhancements.


Key Features

  • Secure Messaging: AES-based encryption or Calimero SDK for E2E encryption.
  • Peer-to-Peer Data Ownership: Calimero’s framework ensures self-sovereign user data.
  • Flexible Authentication: next-auth integration with credentials or GitHub sign-in.
  • Group & Direct Chat: Seamlessly switch between private user chats and group channels.
  • Mobile-Responsive UI: SideBar toggles for compact screen support.

Tech Stack

  • Next.js & React: Front-end and serverless API routes.
  • NextAuth: Simple credential and OAuth flows.
  • Calimero SDK: P2P encryption and verified off-chain computing.
  • Prisma & SQLite: Database ORM and local storage (or upgrade to Postgres).
  • Tailwind CSS: Flexible styling, glass morphism, animations.

Getting Started

  1. Clone the Repo

    git clone https://github.com/username/hellodeck.git
    cd hellodeck
  2. Install Dependencies

    npm install
  3. Set Up Environment Variables
    Create a .env.local file in the root folder:

    ENCRYPTION_KEY=01234567890123456789012345678901
    ENCRYPTION_IV=0123456789012345
    DATABASE_URL=file:./dev.db
    GITHUB_ID=your_github_client_id
    GITHUB_SECRET=your_github_client_secret
    # CalimeroNEXT_PUBLIC_CALIMERO_NODE_URL=https://example-calimero-node.com
    NEXT_PUBLIC_CALIMERO_NETWORK_ID=calimero-testnet

    Adjust to your own secrets and keys.

  4. Database Setup

    npx prisma migrate dev

    This applies Prisma migrations, creating or updating your SQLite database.

  5. Run the Dev Server

    npm run dev

    Then visit http://localhost:3000 in your browser.


Project Structure

Below is a simplified outline of main directories. Some folders and files are omitted for brevity:

hellodeck/
├─ src/
│ ├─ app/
│ │ ├─ api/
│ │ │ ├─ messages/
│ │ │ ├─ servers/
│ │ ├─ chat/[id]/
│ │ ├─ auth/
│ │ ├─ layout.tsx
│ │ └─ RootLayoutClient.tsx
│ ├─ components/
│ │ └─ SideBar.tsx
│ ├─ lib/
│ │ ├─ encryption.ts
│ │ └─ prisma.ts
│ └─ prisma/
│ └─ schema.prisma
├─ README.md
└─ package.json

Short & Long Descriptions

Short Description:
Hellodeck is an application for secure, end-to-end encrypted chat, with flexible authentication and peer-to-peer data integrity backed by Cairo/Calimero technology.

Long Description:
The Hellodeck project showcases a robust foundation for messaging solutions in decentralized environments. By integrating Next.js, NextAuth, and the Calimero SDK, it explores how real-time communication, user autonomy, and cryptographic verifiability can coexist. Users can sign in with traditional credentials or GitHub, exchange encrypted messages in private or group chats, and confidently trust that their data remains in their own hands. The architecture is modular, encouraging further enhancements like media attachments, voice notes, or advanced cryptographic key management.


Next Steps & Roadmap

  1. Advanced Calimero Integration
    • Replace local encryption with full Calimero peer-to-peer logic.
    • Implement contract-based user identity or wallet connect for authentication.
  2. Scaling
    • Move from SQLite to a production database like PostgreSQL.
  3. UI Enhancements
    • Real-time messages (e.g., websockets).
    • More polished design, emojis, file sharing, etc.
  4. Testing & CI
    • Add integration tests with Jest, ESLint, and CI pipeline.

Enjoy building with Hellodeck!

For questions or contributions, open an issue or submit a pull request.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

Hellodeck

Short Description

Hellodeck is an end-to-end encrypted messaging and communication platform leveraging Cairo/Calimero SDK for peer-to-peer, self-sovereign data ownership and verified off-chain computing.


Table of Contents

  1. Overview
  2. Key Features
  3. Tech Stack
  4. Getting Started
  5. Project Structure
  6. Short & Long Descriptions
  7. Next Steps & Roadmap

Overview

Hellodeck serves as a proof-of-concept for building decentralized, secure chat solutions. It demonstrates private text messages, user authentication, and modular expansions for future enhancements.


Key Features

  • Secure Messaging: AES-based encryption or Calimero SDK for E2E encryption.
  • Peer-to-Peer Data Ownership: Calimero’s framework ensures self-sovereign user data.
  • Flexible Authentication: next-auth integration with credentials or GitHub sign-in.
  • Group & Direct Chat: Seamlessly switch between private user chats and group channels.
  • Mobile-Responsive UI: SideBar toggles for compact screen support.

Tech Stack

  • Next.js & React: Front-end and serverless API routes.
  • NextAuth: Simple credential and OAuth flows.
  • Calimero SDK: P2P encryption and verified off-chain computing.
  • Prisma & SQLite: Database ORM and local storage (or upgrade to Postgres).
  • Tailwind CSS: Flexible styling, glass morphism, animations.

Getting Started

  1. Clone the Repo

    git clone https://github.com/username/hellodeck.git
    cd hellodeck
  2. Install Dependencies

    npm install
  3. Set Up Environment Variables
    Create a .env.local file in the root folder:

    ENCRYPTION_KEY=01234567890123456789012345678901
    ENCRYPTION_IV=0123456789012345
    DATABASE_URL=file:./dev.db
    GITHUB_ID=your_github_client_id
    GITHUB_SECRET=your_github_client_secret
    # CalimeroNEXT_PUBLIC_CALIMERO_NODE_URL=https://example-calimero-node.com
    NEXT_PUBLIC_CALIMERO_NETWORK_ID=calimero-testnet

    Adjust to your own secrets and keys.

  4. Database Setup

    npx prisma migrate dev

    This applies Prisma migrations, creating or updating your SQLite database.

  5. Run the Dev Server

    npm run dev

    Then visit http://localhost:3000 in your browser.


Project Structure

Below is a simplified outline of main directories. Some folders and files are omitted for brevity:

hellodeck/
├─ src/
│ ├─ app/
│ │ ├─ api/
│ │ │ ├─ messages/
│ │ │ ├─ servers/
│ │ ├─ chat/[id]/
│ │ ├─ auth/
│ │ ├─ layout.tsx
│ │ └─ RootLayoutClient.tsx
│ ├─ components/
│ │ └─ SideBar.tsx
│ ├─ lib/
│ │ ├─ encryption.ts
│ │ └─ prisma.ts
│ └─ prisma/
│ └─ schema.prisma
├─ README.md
└─ package.json

Short & Long Descriptions

Short Description:
Hellodeck is an application for secure, end-to-end encrypted chat, with flexible authentication and peer-to-peer data integrity backed by Cairo/Calimero technology.

Long Description:
The Hellodeck project showcases a robust foundation for messaging solutions in decentralized environments. By integrating Next.js, NextAuth, and the Calimero SDK, it explores how real-time communication, user autonomy, and cryptographic verifiability can coexist. Users can sign in with traditional credentials or GitHub, exchange encrypted messages in private or group chats, and confidently trust that their data remains in their own hands. The architecture is modular, encouraging further enhancements like media attachments, voice notes, or advanced cryptographic key management.


Next Steps & Roadmap

  1. Advanced Calimero Integration
    • Replace local encryption with full Calimero peer-to-peer logic.
    • Implement contract-based user identity or wallet connect for authentication.
  2. Scaling
    • Move from SQLite to a production database like PostgreSQL.
  3. UI Enhancements
    • Real-time messages (e.g., websockets).
    • More polished design, emojis, file sharing, etc.
  4. Testing & CI
    • Add integration tests with Jest, ESLint, and CI pipeline.

Enjoy building with Hellodeck!

For questions or contributions, open an issue or submit a pull request.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Hellodeck

Short Description

Hellodeck is an end-to-end encrypted messaging and communication platform leveraging Cairo/Calimero SDK for peer-to-peer, self-sovereign data ownership and verified off-chain computing.


Table of Contents

  1. Overview
  2. Key Features
  3. Tech Stack
  4. Getting Started
  5. Project Structure
  6. Short & Long Descriptions
  7. Next Steps & Roadmap

Overview

Hellodeck serves as a proof-of-concept for building decentralized, secure chat solutions. It demonstrates private text messages, user authentication, and modular expansions for future enhancements.


Key Features

  • Secure Messaging: AES-based encryption or Calimero SDK for E2E encryption.
  • Peer-to-Peer Data Ownership: Calimero’s framework ensures self-sovereign user data.
  • Flexible Authentication: next-auth integration with credentials or GitHub sign-in.
  • Group & Direct Chat: Seamlessly switch between private user chats and group channels.
  • Mobile-Responsive UI: SideBar toggles for compact screen support.

Tech Stack

  • Next.js & React: Front-end and serverless API routes.
  • NextAuth: Simple credential and OAuth flows.
  • Calimero SDK: P2P encryption and verified off-chain computing.
  • Prisma & SQLite: Database ORM and local storage (or upgrade to Postgres).
  • Tailwind CSS: Flexible styling, glass morphism, animations.

Getting Started

  1. Clone the Repo

    git clone https://github.com/username/hellodeck.git
    cd hellodeck
  2. Install Dependencies

    npm install
  3. Set Up Environment Variables
    Create a .env.local file in the root folder:

    ENCRYPTION_KEY=01234567890123456789012345678901
    ENCRYPTION_IV=0123456789012345
    DATABASE_URL=file:./dev.db
    GITHUB_ID=your_github_client_id
    GITHUB_SECRET=your_github_client_secret
    # CalimeroNEXT_PUBLIC_CALIMERO_NODE_URL=https://example-calimero-node.com
    NEXT_PUBLIC_CALIMERO_NETWORK_ID=calimero-testnet

    Adjust to your own secrets and keys.

  4. Database Setup

    npx prisma migrate dev

    This applies Prisma migrations, creating or updating your SQLite database.

  5. Run the Dev Server

    npm run dev

    Then visit http://localhost:3000 in your browser.


Project Structure

Below is a simplified outline of main directories. Some folders and files are omitted for brevity:

hellodeck/
├─ src/
│ ├─ app/
│ │ ├─ api/
│ │ │ ├─ messages/
│ │ │ ├─ servers/
│ │ ├─ chat/[id]/
│ │ ├─ auth/
│ │ ├─ layout.tsx
│ │ └─ RootLayoutClient.tsx
│ ├─ components/
│ │ └─ SideBar.tsx
│ ├─ lib/
│ │ ├─ encryption.ts
│ │ └─ prisma.ts
│ └─ prisma/
│ └─ schema.prisma
├─ README.md
└─ package.json

Short & Long Descriptions

Short Description:
Hellodeck is an application for secure, end-to-end encrypted chat, with flexible authentication and peer-to-peer data integrity backed by Cairo/Calimero technology.

Long Description:
The Hellodeck project showcases a robust foundation for messaging solutions in decentralized environments. By integrating Next.js, NextAuth, and the Calimero SDK, it explores how real-time communication, user autonomy, and cryptographic verifiability can coexist. Users can sign in with traditional credentials or GitHub, exchange encrypted messages in private or group chats, and confidently trust that their data remains in their own hands. The architecture is modular, encouraging further enhancements like media attachments, voice notes, or advanced cryptographic key management.


Next Steps & Roadmap

  1. Advanced Calimero Integration
    • Replace local encryption with full Calimero peer-to-peer logic.
    • Implement contract-based user identity or wallet connect for authentication.
  2. Scaling
    • Move from SQLite to a production database like PostgreSQL.
  3. UI Enhancements
    • Real-time messages (e.g., websockets).
    • More polished design, emojis, file sharing, etc.
  4. Testing & CI
    • Add integration tests with Jest, ESLint, and CI pipeline.

Enjoy building with Hellodeck!

For questions or contributions, open an issue or submit a pull request.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Hellodeck

Short Description

Hellodeck is an end-to-end encrypted messaging and communication platform leveraging Cairo/Calimero SDK for peer-to-peer, self-sovereign data ownership and verified off-chain computing.


Table of Contents

  1. Overview
  2. Key Features
  3. Tech Stack
  4. Getting Started
  5. Project Structure
  6. Short & Long Descriptions
  7. Next Steps & Roadmap

Overview

Hellodeck serves as a proof-of-concept for building decentralized, secure chat solutions. It demonstrates private text messages, user authentication, and modular expansions for future enhancements.


Key Features

  • Secure Messaging: AES-based encryption or Calimero SDK for E2E encryption.
  • Peer-to-Peer Data Ownership: Calimero’s framework ensures self-sovereign user data.
  • Flexible Authentication: next-auth integration with credentials or GitHub sign-in.
  • Group & Direct Chat: Seamlessly switch between private user chats and group channels.
  • Mobile-Responsive UI: SideBar toggles for compact screen support.

Tech Stack

  • Next.js & React: Front-end and serverless API routes.
  • NextAuth: Simple credential and OAuth flows.
  • Calimero SDK: P2P encryption and verified off-chain computing.
  • Prisma & SQLite: Database ORM and local storage (or upgrade to Postgres).
  • Tailwind CSS: Flexible styling, glass morphism, animations.

Getting Started

  1. Clone the Repo

    git clone https://github.com/username/hellodeck.git
    cd hellodeck
  2. Install Dependencies

    npm install
  3. Set Up Environment Variables
    Create a .env.local file in the root folder:

    ENCRYPTION_KEY=01234567890123456789012345678901
    ENCRYPTION_IV=0123456789012345
    DATABASE_URL=file:./dev.db
    GITHUB_ID=your_github_client_id
    GITHUB_SECRET=your_github_client_secret
    # CalimeroNEXT_PUBLIC_CALIMERO_NODE_URL=https://example-calimero-node.com
    NEXT_PUBLIC_CALIMERO_NETWORK_ID=calimero-testnet

    Adjust to your own secrets and keys.

  4. Database Setup

    npx prisma migrate dev

    This applies Prisma migrations, creating or updating your SQLite database.

  5. Run the Dev Server

    npm run dev

    Then visit http://localhost:3000 in your browser.


Project Structure

Below is a simplified outline of main directories. Some folders and files are omitted for brevity:

hellodeck/
├─ src/
│ ├─ app/
│ │ ├─ api/
│ │ │ ├─ messages/
│ │ │ ├─ servers/
│ │ ├─ chat/[id]/
│ │ ├─ auth/
│ │ ├─ layout.tsx
│ │ └─ RootLayoutClient.tsx
│ ├─ components/
│ │ └─ SideBar.tsx
│ ├─ lib/
│ │ ├─ encryption.ts
│ │ └─ prisma.ts
│ └─ prisma/
│ └─ schema.prisma
├─ README.md
└─ package.json

Short & Long Descriptions

Short Description:
Hellodeck is an application for secure, end-to-end encrypted chat, with flexible authentication and peer-to-peer data integrity backed by Cairo/Calimero technology.

Long Description:
The Hellodeck project showcases a robust foundation for messaging solutions in decentralized environments. By integrating Next.js, NextAuth, and the Calimero SDK, it explores how real-time communication, user autonomy, and cryptographic verifiability can coexist. Users can sign in with traditional credentials or GitHub, exchange encrypted messages in private or group chats, and confidently trust that their data remains in their own hands. The architecture is modular, encouraging further enhancements like media attachments, voice notes, or advanced cryptographic key management.


Next Steps & Roadmap

  1. Advanced Calimero Integration
    • Replace local encryption with full Calimero peer-to-peer logic.
    • Implement contract-based user identity or wallet connect for authentication.
  2. Scaling
    • Move from SQLite to a production database like PostgreSQL.
  3. UI Enhancements
    • Real-time messages (e.g., websockets).
    • More polished design, emojis, file sharing, etc.
  4. Testing & CI
    • Add integration tests with Jest, ESLint, and CI pipeline.

Enjoy building with Hellodeck!

For questions or contributions, open an issue or submit a pull request.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

Hellodeck

Short Description

Hellodeck is an end-to-end encrypted messaging and communication platform leveraging Cairo/Calimero SDK for peer-to-peer, self-sovereign data ownership and verified off-chain computing.


Table of Contents

  1. Overview
  2. Key Features
  3. Tech Stack
  4. Getting Started
  5. Project Structure
  6. Short & Long Descriptions
  7. Next Steps & Roadmap

Overview

Hellodeck serves as a proof-of-concept for building decentralized, secure chat solutions. It demonstrates private text messages, user authentication, and modular expansions for future enhancements.


Key Features

  • Secure Messaging: AES-based encryption or Calimero SDK for E2E encryption.
  • Peer-to-Peer Data Ownership: Calimero’s framework ensures self-sovereign user data.
  • Flexible Authentication: next-auth integration with credentials or GitHub sign-in.
  • Group & Direct Chat: Seamlessly switch between private user chats and group channels.
  • Mobile-Responsive UI: SideBar toggles for compact screen support.

Tech Stack

  • Next.js & React: Front-end and serverless API routes.
  • NextAuth: Simple credential and OAuth flows.
  • Calimero SDK: P2P encryption and verified off-chain computing.
  • Prisma & SQLite: Database ORM and local storage (or upgrade to Postgres).
  • Tailwind CSS: Flexible styling, glass morphism, animations.

Getting Started

  1. Clone the Repo

    git clone https://github.com/username/hellodeck.git
    cd hellodeck
  2. Install Dependencies

    npm install
  3. Set Up Environment Variables
    Create a .env.local file in the root folder:

    ENCRYPTION_KEY=01234567890123456789012345678901
    ENCRYPTION_IV=0123456789012345
    DATABASE_URL=file:./dev.db
    GITHUB_ID=your_github_client_id
    GITHUB_SECRET=your_github_client_secret
    # CalimeroNEXT_PUBLIC_CALIMERO_NODE_URL=https://example-calimero-node.com
    NEXT_PUBLIC_CALIMERO_NETWORK_ID=calimero-testnet

    Adjust to your own secrets and keys.

  4. Database Setup

    npx prisma migrate dev

    This applies Prisma migrations, creating or updating your SQLite database.

  5. Run the Dev Server

    npm run dev

    Then visit http://localhost:3000 in your browser.


Project Structure

Below is a simplified outline of main directories. Some folders and files are omitted for brevity:

hellodeck/
├─ src/
│ ├─ app/
│ │ ├─ api/
│ │ │ ├─ messages/
│ │ │ ├─ servers/
│ │ ├─ chat/[id]/
│ │ ├─ auth/
│ │ ├─ layout.tsx
│ │ └─ RootLayoutClient.tsx
│ ├─ components/
│ │ └─ SideBar.tsx
│ ├─ lib/
│ │ ├─ encryption.ts
│ │ └─ prisma.ts
│ └─ prisma/
│ └─ schema.prisma
├─ README.md
└─ package.json

Short & Long Descriptions

Short Description:
Hellodeck is an application for secure, end-to-end encrypted chat, with flexible authentication and peer-to-peer data integrity backed by Cairo/Calimero technology.

Long Description:
The Hellodeck project showcases a robust foundation for messaging solutions in decentralized environments. By integrating Next.js, NextAuth, and the Calimero SDK, it explores how real-time communication, user autonomy, and cryptographic verifiability can coexist. Users can sign in with traditional credentials or GitHub, exchange encrypted messages in private or group chats, and confidently trust that their data remains in their own hands. The architecture is modular, encouraging further enhancements like media attachments, voice notes, or advanced cryptographic key management.


Next Steps & Roadmap

  1. Advanced Calimero Integration
    • Replace local encryption with full Calimero peer-to-peer logic.
    • Implement contract-based user identity or wallet connect for authentication.
  2. Scaling
    • Move from SQLite to a production database like PostgreSQL.
  3. UI Enhancements
    • Real-time messages (e.g., websockets).
    • More polished design, emojis, file sharing, etc.
  4. Testing & CI
    • Add integration tests with Jest, ESLint, and CI pipeline.

Enjoy building with Hellodeck!

For questions or contributions, open an issue or submit a pull request.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Hellodeck

Short Description

Hellodeck is an end-to-end encrypted messaging and communication platform leveraging Cairo/Calimero SDK for peer-to-peer, self-sovereign data ownership and verified off-chain computing.


Table of Contents

  1. Overview
  2. Key Features
  3. Tech Stack
  4. Getting Started
  5. Project Structure
  6. Short & Long Descriptions
  7. Next Steps & Roadmap

Overview

Hellodeck serves as a proof-of-concept for building decentralized, secure chat solutions. It demonstrates private text messages, user authentication, and modular expansions for future enhancements.


Key Features

  • Secure Messaging: AES-based encryption or Calimero SDK for E2E encryption.
  • Peer-to-Peer Data Ownership: Calimero’s framework ensures self-sovereign user data.
  • Flexible Authentication: next-auth integration with credentials or GitHub sign-in.
  • Group & Direct Chat: Seamlessly switch between private user chats and group channels.
  • Mobile-Responsive UI: SideBar toggles for compact screen support.

Tech Stack

  • Next.js & React: Front-end and serverless API routes.
  • NextAuth: Simple credential and OAuth flows.
  • Calimero SDK: P2P encryption and verified off-chain computing.
  • Prisma & SQLite: Database ORM and local storage (or upgrade to Postgres).
  • Tailwind CSS: Flexible styling, glass morphism, animations.

Getting Started

  1. Clone the Repo

    git clone https://github.com/username/hellodeck.git
    cd hellodeck
  2. Install Dependencies

    npm install
  3. Set Up Environment Variables
    Create a .env.local file in the root folder:

    ENCRYPTION_KEY=01234567890123456789012345678901
    ENCRYPTION_IV=0123456789012345
    DATABASE_URL=file:./dev.db
    GITHUB_ID=your_github_client_id
    GITHUB_SECRET=your_github_client_secret
    # CalimeroNEXT_PUBLIC_CALIMERO_NODE_URL=https://example-calimero-node.com
    NEXT_PUBLIC_CALIMERO_NETWORK_ID=calimero-testnet

    Adjust to your own secrets and keys.

  4. Database Setup

    npx prisma migrate dev

    This applies Prisma migrations, creating or updating your SQLite database.

  5. Run the Dev Server

    npm run dev

    Then visit http://localhost:3000 in your browser.


Project Structure

Below is a simplified outline of main directories. Some folders and files are omitted for brevity:

hellodeck/
├─ src/
│ ├─ app/
│ │ ├─ api/
│ │ │ ├─ messages/
│ │ │ ├─ servers/
│ │ ├─ chat/[id]/
│ │ ├─ auth/
│ │ ├─ layout.tsx
│ │ └─ RootLayoutClient.tsx
│ ├─ components/
│ │ └─ SideBar.tsx
│ ├─ lib/
│ │ ├─ encryption.ts
│ │ └─ prisma.ts
│ └─ prisma/
│ └─ schema.prisma
├─ README.md
└─ package.json

Short & Long Descriptions

Short Description:
Hellodeck is an application for secure, end-to-end encrypted chat, with flexible authentication and peer-to-peer data integrity backed by Cairo/Calimero technology.

Long Description:
The Hellodeck project showcases a robust foundation for messaging solutions in decentralized environments. By integrating Next.js, NextAuth, and the Calimero SDK, it explores how real-time communication, user autonomy, and cryptographic verifiability can coexist. Users can sign in with traditional credentials or GitHub, exchange encrypted messages in private or group chats, and confidently trust that their data remains in their own hands. The architecture is modular, encouraging further enhancements like media attachments, voice notes, or advanced cryptographic key management.


Next Steps & Roadmap

  1. Advanced Calimero Integration
    • Replace local encryption with full Calimero peer-to-peer logic.
    • Implement contract-based user identity or wallet connect for authentication.
  2. Scaling
    • Move from SQLite to a production database like PostgreSQL.
  3. UI Enhancements
    • Real-time messages (e.g., websockets).
    • More polished design, emojis, file sharing, etc.
  4. Testing & CI
    • Add integration tests with Jest, ESLint, and CI pipeline.

Enjoy building with Hellodeck!

For questions or contributions, open an issue or submit a pull request.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Hellodeck

Short Description

Hellodeck is an end-to-end encrypted messaging and communication platform leveraging Cairo/Calimero SDK for peer-to-peer, self-sovereign data ownership and verified off-chain computing.


Table of Contents

  1. Overview
  2. Key Features
  3. Tech Stack
  4. Getting Started
  5. Project Structure
  6. Short & Long Descriptions
  7. Next Steps & Roadmap

Overview

Hellodeck serves as a proof-of-concept for building decentralized, secure chat solutions. It demonstrates private text messages, user authentication, and modular expansions for future enhancements.


Key Features

  • Secure Messaging: AES-based encryption or Calimero SDK for E2E encryption.
  • Peer-to-Peer Data Ownership: Calimero’s framework ensures self-sovereign user data.
  • Flexible Authentication: next-auth integration with credentials or GitHub sign-in.
  • Group & Direct Chat: Seamlessly switch between private user chats and group channels.
  • Mobile-Responsive UI: SideBar toggles for compact screen support.

Tech Stack

  • Next.js & React: Front-end and serverless API routes.
  • NextAuth: Simple credential and OAuth flows.
  • Calimero SDK: P2P encryption and verified off-chain computing.
  • Prisma & SQLite: Database ORM and local storage (or upgrade to Postgres).
  • Tailwind CSS: Flexible styling, glass morphism, animations.

Getting Started

  1. Clone the Repo

    git clone https://github.com/username/hellodeck.git
    cd hellodeck
  2. Install Dependencies

    npm install
  3. Set Up Environment Variables
    Create a .env.local file in the root folder:

    ENCRYPTION_KEY=01234567890123456789012345678901
    ENCRYPTION_IV=0123456789012345
    DATABASE_URL=file:./dev.db
    GITHUB_ID=your_github_client_id
    GITHUB_SECRET=your_github_client_secret
    # CalimeroNEXT_PUBLIC_CALIMERO_NODE_URL=https://example-calimero-node.com
    NEXT_PUBLIC_CALIMERO_NETWORK_ID=calimero-testnet

    Adjust to your own secrets and keys.

  4. Database Setup

    npx prisma migrate dev

    This applies Prisma migrations, creating or updating your SQLite database.

  5. Run the Dev Server

    npm run dev

    Then visit http://localhost:3000 in your browser.


Project Structure

Below is a simplified outline of main directories. Some folders and files are omitted for brevity:

hellodeck/
├─ src/
│ ├─ app/
│ │ ├─ api/
│ │ │ ├─ messages/
│ │ │ ├─ servers/
│ │ ├─ chat/[id]/
│ │ ├─ auth/
│ │ ├─ layout.tsx
│ │ └─ RootLayoutClient.tsx
│ ├─ components/
│ │ └─ SideBar.tsx
│ ├─ lib/
│ │ ├─ encryption.ts
│ │ └─ prisma.ts
│ └─ prisma/
│ └─ schema.prisma
├─ README.md
└─ package.json

Short & Long Descriptions

Short Description:
Hellodeck is an application for secure, end-to-end encrypted chat, with flexible authentication and peer-to-peer data integrity backed by Cairo/Calimero technology.

Long Description:
The Hellodeck project showcases a robust foundation for messaging solutions in decentralized environments. By integrating Next.js, NextAuth, and the Calimero SDK, it explores how real-time communication, user autonomy, and cryptographic verifiability can coexist. Users can sign in with traditional credentials or GitHub, exchange encrypted messages in private or group chats, and confidently trust that their data remains in their own hands. The architecture is modular, encouraging further enhancements like media attachments, voice notes, or advanced cryptographic key management.


Next Steps & Roadmap

  1. Advanced Calimero Integration
    • Replace local encryption with full Calimero peer-to-peer logic.
    • Implement contract-based user identity or wallet connect for authentication.
  2. Scaling
    • Move from SQLite to a production database like PostgreSQL.
  3. UI Enhancements
    • Real-time messages (e.g., websockets).
    • More polished design, emojis, file sharing, etc.
  4. Testing & CI
    • Add integration tests with Jest, ESLint, and CI pipeline.

Enjoy building with Hellodeck!

For questions or contributions, open an issue or submit a pull request.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

Hellodeck

Short Description

Hellodeck is an end-to-end encrypted messaging and communication platform leveraging Cairo/Calimero SDK for peer-to-peer, self-sovereign data ownership and verified off-chain computing.


Table of Contents

  1. Overview
  2. Key Features
  3. Tech Stack
  4. Getting Started
  5. Project Structure
  6. Short & Long Descriptions
  7. Next Steps & Roadmap

Overview

Hellodeck serves as a proof-of-concept for building decentralized, secure chat solutions. It demonstrates private text messages, user authentication, and modular expansions for future enhancements.


Key Features

  • Secure Messaging: AES-based encryption or Calimero SDK for E2E encryption.
  • Peer-to-Peer Data Ownership: Calimero’s framework ensures self-sovereign user data.
  • Flexible Authentication: next-auth integration with credentials or GitHub sign-in.
  • Group & Direct Chat: Seamlessly switch between private user chats and group channels.
  • Mobile-Responsive UI: SideBar toggles for compact screen support.

Tech Stack

  • Next.js & React: Front-end and serverless API routes.
  • NextAuth: Simple credential and OAuth flows.
  • Calimero SDK: P2P encryption and verified off-chain computing.
  • Prisma & SQLite: Database ORM and local storage (or upgrade to Postgres).
  • Tailwind CSS: Flexible styling, glass morphism, animations.

Getting Started

  1. Clone the Repo

    git clone https://github.com/username/hellodeck.git
    cd hellodeck
  2. Install Dependencies

    npm install
  3. Set Up Environment Variables
    Create a .env.local file in the root folder:

    ENCRYPTION_KEY=01234567890123456789012345678901
    ENCRYPTION_IV=0123456789012345
    DATABASE_URL=file:./dev.db
    GITHUB_ID=your_github_client_id
    GITHUB_SECRET=your_github_client_secret
    # CalimeroNEXT_PUBLIC_CALIMERO_NODE_URL=https://example-calimero-node.com
    NEXT_PUBLIC_CALIMERO_NETWORK_ID=calimero-testnet

    Adjust to your own secrets and keys.

  4. Database Setup

    npx prisma migrate dev

    This applies Prisma migrations, creating or updating your SQLite database.

  5. Run the Dev Server

    npm run dev

    Then visit http://localhost:3000 in your browser.


Project Structure

Below is a simplified outline of main directories. Some folders and files are omitted for brevity:

hellodeck/
├─ src/
│ ├─ app/
│ │ ├─ api/
│ │ │ ├─ messages/
│ │ │ ├─ servers/
│ │ ├─ chat/[id]/
│ │ ├─ auth/
│ │ ├─ layout.tsx
│ │ └─ RootLayoutClient.tsx
│ ├─ components/
│ │ └─ SideBar.tsx
│ ├─ lib/
│ │ ├─ encryption.ts
│ │ └─ prisma.ts
│ └─ prisma/
│ └─ schema.prisma
├─ README.md
└─ package.json

Short & Long Descriptions

Short Description:
Hellodeck is an application for secure, end-to-end encrypted chat, with flexible authentication and peer-to-peer data integrity backed by Cairo/Calimero technology.

Long Description:
The Hellodeck project showcases a robust foundation for messaging solutions in decentralized environments. By integrating Next.js, NextAuth, and the Calimero SDK, it explores how real-time communication, user autonomy, and cryptographic verifiability can coexist. Users can sign in with traditional credentials or GitHub, exchange encrypted messages in private or group chats, and confidently trust that their data remains in their own hands. The architecture is modular, encouraging further enhancements like media attachments, voice notes, or advanced cryptographic key management.


Next Steps & Roadmap

  1. Advanced Calimero Integration
    • Replace local encryption with full Calimero peer-to-peer logic.
    • Implement contract-based user identity or wallet connect for authentication.
  2. Scaling
    • Move from SQLite to a production database like PostgreSQL.
  3. UI Enhancements
    • Real-time messages (e.g., websockets).
    • More polished design, emojis, file sharing, etc.
  4. Testing & CI
    • Add integration tests with Jest, ESLint, and CI pipeline.

Enjoy building with Hellodeck!

For questions or contributions, open an issue or submit a pull request.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages