The International Blockchain Olympiad (IBCOL) is a multidisciplinary design and building competition focused on blockchain technology. This repository contains the official website and registration platform for the competition.
IBCOL invites students from around the world to solve real-world challenges through decentralized applications. Unlike typical hackathons, IBCOL provides:
- Sufficient time to design complete solutions
- A multidisciplinary approach to blockchain applications
- Opportunities for matching with investors and incubators
Environment | URL | Status |
---|---|---|
Production | https://www.ibcol.org/ | |
UAT | https://www.uat.ibcol.org/ |
- Frontend: React, Next.js, Styled Components
- State Management: Apollo Client (GraphQL)
- Deployment: Zeit Now (Vercel)
- CI/CD: Travis CI
- File Storage: Google Cloud Storage
- Internationalization: Custom translation system with support for multiple languages
- Multi-language support with 20+ languages
- Team registration and project submission system
- Whitepaper and presentation file uploads
- Admin dashboard for application management
- Responsive design for all devices
For detailed documentation about the codebase, architecture, and development processes, please refer to the Wiki.
- Node.js 12.x
- npm or yarn
-
Clone the repository:
git clone git@github.com:altx-labs/ibcol.git cd ibcol
-
Install dependencies:
npm install
-
Set up environment variables:
- Create a
.env
file based on the configuration examples in theconfigs
directory - For Google Cloud Storage integration, set up the appropriate credentials
- Create a
-
Run the development server:
npm run local
The application is deployed using Zeit Now (Vercel). Different deployment environments are configured in the respective now-*.json
files:
now-local.json
- Local developmentnow-dev.json
- Development environmentnow-stage.json
- Staging environmentnow-production.json
- Production environment
To deploy to a specific environment:
npm run deploy-dev # Deploy to development
npm run deploy-stage # Deploy to staging
npm run deploy-production # Deploy to production
- ibcol-micro-graphql-api - GraphQL API for IBCOL
- ibcol-towww - Redirect service for IBCOL
This project is proprietary and not open for public use or modification without explicit permission.
- William Li - Lead Developer
- Breaking Bad Interactive (BBI) - Development Team