A modern, static website for the NLFTs Developer Program built with Nuxt 3
- ✅ Static website with Nuxt Content
- ✅ Blog posts from markdown files
- ✅ Documentation pages
- ✅ Product showcase
- ✅ Events listing
- ✅ GitHub OAuth login (no database)
- ✅ Responsive design with Nuxt UI
- ✅ Dark mode support
- ✅ SEO optimized
- Framework: Nuxt 3
- UI Library: Nuxt UI
- Content: Nuxt Content
- Styling: Tailwind CSS
- Animations: GSAP
- Icons: Iconify
- Authentication: GitHub OAuth (localStorage)
- Node.js 20+
- pnpm (recommended)
- Clone the repository:
git clone https://github.com/your-org/developer-program.git
cd developer-program- Install dependencies:
pnpm install- Setup environment variables:
cp .env.example .env-
Configure GitHub OAuth:
- Create a GitHub OAuth App at https://github.com/settings/developers
- Update
.envwith your credentials - See
SETUP_GITHUB_OAUTH.mdfor detailed instructions
-
Run development server:
pnpm devVisit http://localhost:3000
# GitHub Personal Access Token (for API calls)
GITHUB_TOKEN=your_github_personal_access_token
# Site URL
NUXT_PUBLIC_SITE_URL=https://nlfts.dev
# GitHub OAuth Configuration
GITHUB_CLIENT_ID=your_github_oauth_app_client_id
GITHUB_CLIENT_SECRET=your_github_oauth_app_client_secret
NUXT_PUBLIC_GITHUB_CLIENT_ID=your_github_oauth_app_client_id# Build for production
pnpm build
# Preview production build
pnpm preview- Refactor Summary - Overview of recent changes
- Refactor Notes - Detailed refactor documentation
- Setup GitHub OAuth - OAuth setup guide
- Checklist - Deployment checklist
.
├── app/
│ ├── assets/ # CSS and static assets
│ ├── components/ # Vue components
│ ├── composables/ # Vue composables
│ ├── layouts/ # Layout components
│ ├── pages/ # Page components (routes)
│ ├── plugins/ # Nuxt plugins
│ └── utils/ # Utility functions
├── content/ # Markdown content
│ ├── blog/ # Blog posts
│ ├── docs/ # Documentation
│ └── product/ # Product pages
├── public/ # Static files
├── server/ # Server API routes
│ └── api/
│ └── auth/ # Authentication endpoints
└── nuxt.config.ts # Nuxt configuration
This website uses a simple GitHub OAuth authentication system:
- User data is stored in localStorage (client-side only)
- No database backend
- No persistent storage
- Users must login again after clearing browser data
- User clicks "Login" button
- Redirected to GitHub OAuth
- After authorization, redirected back to
/confirm - User data fetched from GitHub API
- Data stored in localStorage
- User is logged in
vercelAdd environment variables in Vercel dashboard.
netlify deployAdd environment variables in Netlify dashboard.
Build the project and deploy the .output directory.
MIT License - see LICENSE for details
Contributions are welcome! Please read our Code of Conduct first.
For support, email support@nlfts.dev or join our Discord community.
Made with ❤️ by the NLFTs Team