Skip to content

It's a Market Place DApps Web3 project using Aiken language as a smart contract and MeshJS to connect with the Cardano Server. This project uses NextJS as the framework for the front end.

Notifications You must be signed in to change notification settings

JasonImanuelK/HackathonMeshAiken

Repository files navigation

🚀 Hackathon Web3 DApps on Cardano Server

This project is a Marketplace DApps running on the Cardano Server, using MeshJS as the blockchain connector and Aiken for smart contract implementation.


📋 Table of Contents

  1. Introduction
  2. Features
  3. Authentication & Sessions
  4. Smart Contract Features
  5. UI Improvements
  6. Contributors

🔑 Features

Minihackathon-1

  • Authentication System:

    • Implements JWT-based session management.
    • Sessions expire within 1 hour and are deleted upon logout.
    • Sessions store the wallet address and user level based on NFT assets.
  • User Levels:

    • 🥈 Silver Member: Browse the marketplace.
    • 🥇 Gold Member: Buy items and validate delivery.
    • 💎 Platinum Member: Full access, including withdrawing funds.

Minihackathon-2

  • Transaction Management:

    • Currency stored in smart contracts when buying items.
    • Users can validate delivery and mark transactions as "done."
  • Smart Contract Constructors:

    • Validate withdrawals.
    • Update delivery status in the datum (pending → done).

🔐 Authentication & Sessions

  • Users connect their wallet to create a session.
  • Sessions are stored in cookies, securely maintaining:
    • Wallet Address.
    • User Level (determined by NFT ownership).
  • Session validity is checked on every page load, allowing seamless navigation while ensuring security.

🛠️ Smart Contract Features

  • Ownership Validation: Transactions are bound to their respective owners.
  • Withdrawals: Platinum members can withdraw funds collected from sales.
  • State Updates: Delivery status can be updated from "pending" to "done" only by the transaction owner.

💡 UI Improvements

  • Notifications:
    • Added authentication notifications for a smoother user experience.
  • Parent Layout:
    • Simplified wallet connection to one-time per session.
    • Easier navigation between pages.
  • Refresh Button:
    • Allows users to load new transactions without refreshing the entire page.
  • Modularity:
    • Grouping auth and service on api, utilizations, and smart contract script and transaction builder in their own folder, to reduce redundancy and improve maintainability.

👥 Contributors


📬 Contact

For questions or feedback, reach out to [[email protected]] or [[email protected]].

About

It's a Market Place DApps Web3 project using Aiken language as a smart contract and MeshJS to connect with the Cardano Server. This project uses NextJS as the framework for the front end.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published