BlockBadge is a blockchain-based certifications and reputation web application, designed to efficiently, securely, and transparently connect recruiters and employers to applicants. The unique feature of BlockBadge lies in its attestation-based system, utilizing Ethereum Attestation Service (EAS) where reputation and certification data are created based on attestations from verified Ethereum addresses. BlockBadge relies on the security, transparency, and immutability of the blockchain, as well as the strength and reputability of blockchain-based attestations made by verified participants in the network.
Proof of Excellence, Verified Securely
This project was created during the BCamp Apprenticeship, which combines elements of both a traditional internship and a hackathon to provide a personalized learning experience, professional networking opportunities, insights into blockchain development, and job opportunities. Below are the assignments completed throughout the program.
Week | Assignment | Presenation/GitHub Link |
---|---|---|
2 | Project Proposal | Link to Presentation |
3 | Pseudo Smart Contract Code | Link to Presentation |
4 | Smart Contract Tests | Link to Presentation |
5 | Front-End Development | Link to Font End Site |
6 | Smart Contract Security Review | Link to Securiy Review GitHub |
- Installation & Running the Application
- Basic Usage
- Enhanced Insights into BlockBadge
- Features and Functionality
- Streamlined Architecture
- User Experience
- Integrated Technologies
- Collaborators
- License
- Download the project repository by either downloading the zip file or using Git to clone the repository (green "<>Code" button > Clone with HTTPS, SSH, or GitHub CLI)
- Navigate to the project directory in your terminal: cd Sept23_Apprenticeship_Certification
- After installing the dependencies, start the app: npm run dev
- Open your web browser and go to: http://localhost:3000
Make sure you have Node.js and other necessary dependencies installed and linked.
BlockBadge provides the following high-level functionalities. Continue reading below sections for more information.
- Connect your crypto wallet to perform transactions
- Utilize the Blockchain Naming Service (BNS) to register your account
- Make or receive certifications (including soulbounf NFT) or reputation attestations
- Navigate your dynamic profile to review your certifications and reputation attestations
BlockBadge serves as an all-in-one recruiting solution, providing comprehensive credential verification and applicant reputation assessment.
In response to the inefficiencies and opacity of traditional tech recruiting methods, BlockBadge strives to introduce a new standard of transparency in verifying skills and conducting background checks.
We prioritize transparency, security, and robust data validation by leveraging Blockchain-based Attestation, supported by the Ethereum Attestation Service.
- Streamlined Employment Evaluation Processes
- Elimination of Dependence on Applicant Tracking Systems (ATS)
- Simplified Referral Assessment Procedures
- Direct, Trustworthy Interaction without Third-Party Intermediaries
-
Certification Attestation: Users can make certification attestations for various programs. If the attester's address is whitelisted in the smart contract, they can attest to specific certifications. For instance, BCamp mentors with whitelisted addresses can endorse BCamp apprentices, and the certified apprentice also receives a unique BlockBadge soulbound token (BlockBadge SBT). This non-transferable NFT can be stored in their wallet and showcased when necessary.
-
Reputation Attestation: Users can provide reputation attestations for any Ethereum address using simple free text. Unlike certification attestations, reputation attestations are not restricted to specific addresses or conditions.
-
Profile Page/Registration: By leveraging the Blockchain Naming Service (BNS), users can link their wallet address and register on BlockBadge to acquire a personalized blockbadge name (e.g., JohnathanSmith.blockbadge). This enables users to easily naviagate profile pages, and make attestations utilizing simple naming conventions tied to verified ethereum addresses.
-
Search Navigation: Users can utilize BlockBadge names (BNS) and other crypto wallet addresses to seamlessly navigate through various profiles.
-
LinkedIn Badge Integration: BlockBadge facilitates the incorporation of blockchain-based information into LinkedIn badges. This integration allows organizations to enhance their badge criteria with verified data from the BlockBadge network, emphasizing transparency and security.
BlockBadge's streamlined architecture comprises:
- Smart contract for BNS registration and naming convention, which ultimately links to the frontend user profile and search navigation features
- Two distinct schemas for both certifications and reputations within the Ethereum Attestation Service (EAS) infrastructure
- Smart contracts for certifications, incorporating a resolver contract that 1) whitelists specific addresses for making attestations (e.g., BCamp mentors whitelisted addresses only can attest to BCamp apprentices) 2) mints a unique non-trasnferrable soulbound NFT token for the given certification, which is stored in IPFS
- Smart contracts for reputations, enabling direct and simple free text attestations
- EAS Software Development Kit (SDK) for direct and secure attestations linked to the frontend, and ultimately the user profile
Key Features/Functionalities |
---|
Transparent Verification Process |
Streamlined Skill Evaluation |
Easy Access to Validated Candidate Data via Seach Navigation & BNS Features |
Key Features/Functionalities |
---|
Secure and Transparent Profile Management |
Easy Reputation and Certification Attestation Process |
Real-Time Profile Updates for Attestations |
Collection of BlockBadge SBT for Securely Showcasing and Storing Certifications |
LinkedIn Badge Integration that utilizes blockchain-based data for LinkedIn badges, showcasing Certifications |
- Solidity Smart Contracts for both Certifications and Reputation Attestation
- Ethereum Attestation Service (EAS) Architecture and SDK
- Apollo Client for efficient data fetching and management
- Web3Storage for IPFS management of SBT certification images
- Web3Modal for simplified Ethereum wallet integration and management
- Wagmi for Ethereum-based application integration and configuration
- React and Next.js for the Front-End Interface
- Tailwind CSS for an intuitive and streamlined styling experience
- Harold: BCamp Mentor
- Aliraza: Full-Stack Developer & Security Architect
- Alfaqi: Front-End Developer
- Manraj: Back-End Developer
- Theresa: Project Manager & Code Reviewer
This project is licensed under the MIT License - see the LICENSE file for details.