A secure and efficient platform for creating, managing, and sharing verifiable professional credentials. Built for businesses to showcase Learning and Employment Records (LERs) that are compliant with W3C Verifiable Credential standards.
LinkedCreds - Business is a Next.js web application that enables organizations to create, validate, and share verifiable credentials for their employees. The platform supports various types of credentials including:
- Employment Records - Document job roles and responsibilities
- Performance Reviews - Collaborative performance evaluations
- Skills & Competencies - Professional skills with supervisor endorsements
- Volunteer Work - Community service and volunteer activities
- Identity Verification - Notarized identity verification (coming soon)
- β Verifiable - W3C Verifiable Credential compliant
- β Shareable - Easy sharing with stakeholders
- β Tamper-proof - Cryptographically secure
- β Beautiful Presentation - Professional visual design
- β User Ownership - Credentials owned by the recipient
- β Access Control - Users control who can view their credentials
- β No Degree Required - Focus on skills and experience
- Frontend: Next.js 14 with React 18, TypeScript
- UI Framework: Material-UI (MUI) with Emotion styling
- Authentication: NextAuth.js with Google OAuth
- Storage: Google Drive integration for credential storage
- Blockchain: Ethereum integration with ethers.js
- Email: SendGrid and Nodemailer for notifications
- File Processing: PDF.js, Excel processing, QR code generation
- Development: ESLint, Prettier, TypeScript
- Node.js 18.0 or higher
- npm, yarn, or pnpm package manager
- Google Cloud Platform account (for OAuth and Drive API)
- Git
git clone https://github.com/Cooperation-org/Linked-Creds-Author-Businees-Enhancement.git
cd Linked-Creds-Author-Businees-Enhancementnpm install
# or
yarn install
# or
pnpm installCreate a .env.local file in the root directory based on example.env:
cp example.env .env.localConfigure the following environment variables:
# Google OAuth Configuration
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
# NextAuth Configuration
NEXTAUTH_SECRET=your_nextauth_secret_key
NEXTAUTH_URL=http://localhost:3000
# Additional environment variables may be required
# Check example.env for the complete list- Create a new project in Google Cloud Console
- Enable the following APIs:
- Google Drive API
- Google+ API (for OAuth)
- Create OAuth 2.0 credentials:
- Go to "Credentials" β "Create Credentials" β "OAuth 2.0 Client IDs"
- Set authorized redirect URIs:
http://localhost:3000/api/auth/callback/google - Copy Client ID and Client Secret to your
.env.local
npm run dev
# or
yarn dev
# or
pnpm devOpen http://localhost:3000 in your browser to see the application.
The project includes automated code formatting:
# Format code
npm run format
# Run linter
npm run lintWe welcome contributions from the community! Please follow these guidelines:
- Fork the repository
- Create a feature branch:
git checkout -b feature/your-feature-name - Make your changes following the coding standards
- Test your changes thoroughly
- Commit with clear, descriptive messages
- Push to your fork and submit a pull request
- TypeScript: All new code should be written in TypeScript
- Formatting: Use Prettier for code formatting (
npm run format) - Linting: Ensure ESLint passes (
npm run lint) - Components: Follow React functional component patterns with hooks
- Styling: Use Material-UI components and emotion for styling
- File Structure: Follow the existing app directory structure
- Ensure your PR description clearly describes the problem and solution
- Include screenshots for UI changes
- Update documentation if necessary
- Ensure all tests pass and add new tests for new features
- Request review from maintainers
- Address any feedback promptly
- Code follows TypeScript best practices
- Components are properly typed
- Error handling is implemented
- Accessibility considerations are addressed
- Performance implications are considered
- Security best practices are followed
When reporting issues:
- Use a clear, descriptive title
- Provide steps to reproduce the problem
- Include browser/environment information
- Add screenshots if applicable
- Check if the issue already exists before creating a new one
- All authentication is handled through Google OAuth 2.0
- Credentials are stored securely in users' Google Drive
- No personal data is stored on our servers
- All data transmissions use encrypted HTTPS connections
- Regular security audits are conducted
For security concerns, please email the maintainers directly rather than creating public issues.
Β© 2024 US Chamber of Commerce Foundation
This project is developed by the T3 Innovation Network, a network of leading organizations committed to open infrastructure for Learning and Employment Records.
This project is open source and available under the terms specified in the LICENSE file. The T3 Innovation Network promotes open infrastructure for credential management and verifiable credentials.
This project uses various open-source libraries and services:
- Next.js - MIT License
- React - MIT License
- Material-UI - MIT License
- NextAuth.js - ISC License
- And other dependencies listed in
package.json
- β Commercial use permitted
- β Modification permitted
- β Distribution permitted
- β Private use permitted
When using or modifying this software, please maintain attribution to:
- US Chamber of Commerce Foundation
- T3 Innovation Network
- Original contributors
- Live Application: https://linked-creds-author-businees-enhancement.vercel.app/
- T3 Innovation Network: https://t3networkhub.org
- GitHub Organization: https://github.com/Cooperation-org
- LinkedIn: https://linkedin.com/company/linkedtrust/
- Documentation: Check the
/helproute in the application - Issues: Create an issue in this repository
- Community: Join discussions in the T3 Innovation Network
βββ app/ # Next.js app directory
β βββ api/ # API routes
β βββ components/ # Reusable React components
β βββ utils/ # Utility functions
β βββ firebase/ # Firebase configuration
β βββ hooks/ # Custom React hooks
β βββ [formType]/ # Dynamic credential form routes
βββ public/ # Static assets
βββ .github/ # GitHub workflows and templates
βββ docs/ # Additional documentation
Built with β€οΈ by the T3 Innovation Network for the future of verifiable credentials.