
Research
Two Malicious Rust Crates Impersonate Popular Logger to Steal Wallet Keys
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
Complete Next.js boilerplate with authentication, i18n & CLI - Create production-ready apps instantly
π Create production-ready Next.js applications in seconds, not hours
The most comprehensive Next.js 15 starter template with authentication, internationalization, corporate features, and an interactive CLI that lets you choose the perfect template.
npx starkon my-app
Choose from 3 optimized templates with arrow keys:
Simply run the command and choose your template:
npx starkon my-app
You'll see an interactive menu with 3 options:
Use ββ arrow keys to navigate and Enter to select.
npx starkon my-awesome-app
# β Interactive menu appears
# β Select template with arrow keys
# β Press Enter to confirm
cd my-awesome-app
npm install
npm run dev
Your Next.js app will be running at http://localhost:3000
π
You can also specify template directly:
npx starkon my-app --template corporate # Business website
npx starkon my-app --template landing # Marketing page
npx starkon my-app --template standard # Full-stack app
Choose the perfect starting point for your specific use case:
Complete business website with content management system.
npx starkon company-website --template corporate
Perfect for:
Includes:
Excludes: Authentication system, i18n complexity for cleaner corporate focus
Single-page marketing websites optimized for conversions.
npx starkon product-launch --template landing
Perfect for:
Includes:
Excludes: Authentication, i18n, dashboard components for faster loading
Complete full-stack setup with all enterprise features.
npx starkon enterprise-app --template standard
Perfect for:
Includes:
Essential Next.js setup without complexity.
npx starkon simple-app --template basic
Perfect for:
Includes: Next.js 15, TypeScript, Tailwind CSS, ESLint Excludes: Authentication, i18n, complex UI components
Admin dashboard optimized for data-heavy applications.
npx starkon admin-panel --template dashboard
Perfect for:
Includes: Dashboard layout, data tables, charts integration Excludes: Public marketing pages
Bare-bones Next.js setup for maximum control.
npx starkon minimal-app --template minimal
Perfect for:
Includes: Next.js 15, TypeScript only Excludes: Everything else - build your own way
starkon-app/
βββ src/
β βββ app/ # Next.js App Router
β β βββ (auth)/ # π Protected route group
β β β βββ dashboard/ # Main dashboard
β β β βββ settings/ # User settings
β β β βββ layout.tsx # Auth layout wrapper
β β βββ (corporate)/ # π’ Corporate route group
β β β βββ about/ # Company info
β β β βββ services/ # Services catalog
β β β βββ blog/ # Blog system
β β β βββ gallery/ # Project gallery
β β β βββ layout.tsx # Corporate layout
β β βββ (authentication)/ # Login/register flows
β β β βββ login/
β β β βββ register/
β β β βββ verify-email/
β β βββ layout.tsx # Root layout
β βββ components/ # Reusable components
β β βββ core/ # π§© Base UI (Button, Input, Card, etc.)
β β βββ corporate/ # π’ Business components
β β β βββ ServiceCard.tsx
β β β βββ TeamMember.tsx
β β β βββ BlogCard.tsx
β β β βββ GalleryItem.tsx
β β βββ sections/ # π― Landing page sections
β β β βββ Hero.tsx
β β β βββ Features.tsx
β β β βββ Testimonials.tsx
β β βββ ui/ # Complex components
β β βββ layout/ # Layout components
β βββ lib/ # Core utilities
β β βββ content.ts # π Content management system
β β βββ services/ # API services & auth
β β βββ validations/ # Zod schemas
β β βββ utils.ts # Helper utilities
β βββ hooks/ # Custom React hooks
β βββ providers/ # Context providers
β βββ locales/ # π i18n translations
βββ public/ # Static assets
βββ tailwind.config.mjs # Tailwind configuration
βββ next.config.mjs # Next.js configuration
Core Framework:
UI & Design:
State & Data:
Development:
// Available test accounts
admin@example.com / admin123 // Full admin access
user@example.com / user123 // Standard user
demo@example.com / demo123 // Demo account
import { useAuth } from '@/hooks/useAuth'
function Dashboard() {
const { user, logout, isAuthenticated } = useAuth()
if (!isAuthenticated) return <LoginForm />
return <h1>Welcome {user.name}!</h1>
}
# 1. Create translation file
src/locales/es/translation.json
# 2. Add to supported locales
src/lib/locale-utils.ts
import { useTranslation } from 'react-i18next'
function Component() {
const { t } = useTranslation()
return <h1>{t('welcome.title')}</h1>
}
// Form Components
<Button variant="default | outline | ghost" size="sm | md | lg" />
<Input type="text | email | password" />
<Textarea placeholder="Enter text..." />
<Checkbox checked={true} />
<Switch enabled={true} />
// Layout Components
<Card>
<CardHeader>
<CardTitle>Title</CardTitle>
</CardHeader>
<CardContent>Content</CardContent>
</Card>
// Data Display
<DataTable data={data} columns={columns} />
<Badge variant="default | secondary | outline" />
<Avatar src="/avatar.jpg" fallback="JD" />
// Navigation
<Tabs defaultValue="tab1">
<TabsList>
<TabsTrigger value="tab1">Tab 1</TabsTrigger>
</TabsList>
</Tabs>
// Feedback
<Alert variant="default | destructive">
<AlertTitle>Alert Title</AlertTitle>
<AlertDescription>Description</AlertDescription>
</Alert>
// Service showcase
<ServiceCard
title="Web Development"
description="Custom web solutions"
features={["React", "Next.js", "TypeScript"]}
icon={Code}
href="/services/web"
/>
// Team member display
<TeamMember
name="John Doe"
role="Lead Developer"
bio="10+ years experience"
image="/team/john.jpg"
social={{ linkedin: "...", github: "..." }}
skills={["React", "Node.js", "AWS"]}
/>
// Blog post cards
<BlogCard
title="Getting Started with Next.js"
excerpt="Learn the fundamentals..."
author={{ name: "Jane Smith", avatar: "/authors/jane.jpg" }}
category="Tutorial"
readingTime="5 min read"
publishedAt="2024-01-15"
/>
// Hero section with CTA
<Hero
title="Build Amazing Apps"
subtitle="Next.js boilerplate for rapid development"
primaryAction="Get Started"
secondaryAction="View Demo"
/>
// Feature showcase
<Features
title="Everything You Need"
features={[
{ title: "Fast Setup", icon: Zap, description: "..." },
{ title: "TypeScript", icon: Shield, description: "..." }
]}
/>
// Social proof
<Testimonials
title="What Developers Say"
testimonials={[
{ name: "Developer", role: "CTO", content: "Amazing tool!" }
]}
/>
# 1. Create project with interactive menu
npx starkon my-project
# β Choose template from menu
# 2. Setup development
cd my-project
npm install
# 3. Start development server
npm run dev
# 4. Open browser
open http://localhost:3000
# Linting and formatting
npm run lint # ESLint check
npm run lint:fix # Auto-fix ESLint errors
npm run prettier # Format code
npm run prettier:check # Check formatting
# Type checking
npm run type-check # TypeScript validation
# Testing
npm test # Run test suite
npm run test:watch # Watch mode testing
npm run test:coverage # Coverage report
# Production build
npm run build
# Analyze bundle size
npm run analyze # Opens webpack-bundle-analyzer
# Start production server
npm run start
# Interactive template selection
npx starkon <project-name>
# Or specify template directly
npx starkon <project-name> --template <template-type>
Option | Description | Example |
---|---|---|
--template <type> | Choose template type | --template corporate |
--skip-git | Skip git repository initialization | - |
--skip-update-check | Skip version update check | - |
--verbose | Show detailed output | - |
--config-set <key=value> | Set user configuration | --config-set locale=en |
--config-get <key> | Get configuration value | --config-get defaultTemplate |
--clear-cache | Clear template cache | - |
Template | Use Case | Interactive Selection |
---|---|---|
standard | Full-stack apps with auth + i18n | Next.js Boilerplate |
landing | Marketing/product pages | Landing Page Template |
corporate | Business websites | Corporate Template |
Template | Use Case | Command |
---|---|---|
dashboard | Admin panels | npx starkon admin --template dashboard |
basic | Simple projects | npx starkon simple --template basic |
minimal | Bare-bones setup | npx starkon minimal --template minimal |
# Interactive template selection (recommended)
npx starkon my-awesome-project
# Skip interactive menu with specific template
npx starkon acme-corp --template corporate --skip-git
# Landing page with verbose output
npx starkon product-launch --template landing --verbose
# Configuration management
npx starkon --config-set locale=en
npx starkon --config-get locale
npx starkon --clear-cache
Feature | Standard | Corporate | Landing | Dashboard | Basic | Minimal |
---|---|---|---|---|---|---|
Core | ||||||
Next.js 15 | β | β | β | β | β | β |
TypeScript | β | β | β | β | β | β |
Tailwind CSS | β | β | β | β | β | β |
Authentication | ||||||
JWT Auth System | β | β | β | β | β | β |
Protected Routes | β | β | β | β | β | β |
User Management | β | β | β | β | β | β |
Internationalization | ||||||
i18n Support | β | β | β | β | β | β |
Multi-language | β | β | β | β | β | β |
UI Components | ||||||
Core UI Kit | β | β | β | β | β | β |
Corporate Components | β | β | β | β | β | β |
Landing Sections | β | β | β | β | β | β |
Dashboard Components | β | β | β | β | β | β |
Pages & Routing | ||||||
Public Pages | β | β | β | β | β | β |
Corporate Pages | β | β | β | β | β | β |
Auth Pages | β | β | β | β | β | β |
Performance | ||||||
Bundle Size | Large | Medium | Small | Medium | Small | Tiny |
Setup Time | 2-3 min | 1-2 min | 1 min | 2 min | 30 sec | 15 sec |
Zero-configuration deployment for Next.js apps:
# Install Vercel CLI
npm install -g vercel
# Deploy
vercel
# Production deployment
vercel --prod
Features:
Great for static and hybrid apps:
# Build for deployment
npm run build
# Deploy to Netlify
netlify deploy --prod --dir=.next
Containerized deployment:
# Dockerfile included in template
FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["npm", "start"]
# Build and run
docker build -t my-starkon-app .
docker run -p 3000:3000 my-starkon-app
railway deploy
gcloud app deploy
# API Configuration
NEXT_PUBLIC_API_URL=http://localhost:3001/api
NODE_ENV=development
# Authentication (Standard template)
NEXTAUTH_SECRET=your-secret-key
NEXTAUTH_URL=http://localhost:3000
# Database (if using)
DATABASE_URL=postgresql://user:pass@localhost:5432/db
# Analytics (optional)
NEXT_PUBLIC_GA_ID=G-XXXXXXXXXX
# Set default template
npx starkon --config-set defaultTemplate=corporate
# Set preferred package manager
npx starkon --config-set preferredPackageManager=pnpm
# Set default locale
npx starkon --config-set locale=en
# Disable telemetry
npx starkon --config-set telemetryEnabled=false
npm test # Run all tests
npm run test:watch # Watch mode
npm run test:coverage # Coverage report
import { render, screen } from '@testing-library/react'
import { Button } from '@/components/core/button'
test('Button renders correctly', () => {
render(<Button>Click me</Button>)
expect(screen.getByRole('button')).toHaveTextContent('Click me')
})
// Custom theme configuration
// tailwind.config.mjs
export default {
theme: {
extend: {
colors: {
primary: {
50: 'hsl(210 40% 98%)',
// ... your brand colors
},
},
},
},
}
// Using class-variance-authority
import { cva } from 'class-variance-authority'
const buttonVariants = cva('base-styles', {
variants: {
variant: {
default: 'bg-primary text-white',
outline: 'border border-primary text-primary',
},
size: {
sm: 'px-3 py-1.5 text-sm',
lg: 'px-6 py-3 text-lg',
},
},
})
npm run dev # Next.js development server (Turbo mode)
npm run build # Production build
npm run start # Production server
npm run analyze # Bundle analyzer (set ANALYZE=true)
npm run lint # ESLint check
npm run type-check # TypeScript validation
npm run prettier # Code formatting
npm run prettier:check # Check formatting only
npm test # Jest test runner
npm run test:watch # Watch mode testing
npm run test:coverage # Generate coverage report
# 1. Create Starkon project
npx starkon my-app --template basic
# 2. Copy your existing code
cp -r old-project/src/pages/* new-project/src/app/
cp -r old-project/components/* new-project/src/components/
# 3. Update imports
# Change: import { Button } from '../components/Button'
# To: import { Button } from '@/components/core/button'
src/components/
src/lib/services/
src/types/
We welcome contributions to make Starkon even better!
# Clone repository
git clone https://github.com/zzafergok/starkon.git
cd starkon
# Install dependencies
npm install
# Start development
npm run dev
# Run tests
npm test
# 1. Add template to index.js TEMPLATES object
# 2. Create template-specific components
# 3. Test template generation
# 4. Update README.md
# 5. Submit PR
# Analyze your build
ANALYZE=true npm run build
# Opens webpack-bundle-analyzer in browser
Build Errors:
# Clear Next.js cache
rm -rf .next
# Clear npm cache
npm cache clean --force
# Reinstall dependencies
rm -rf node_modules package-lock.json
npm install
TypeScript Errors:
# Check types without building
npm run type-check
# Clear TypeScript cache
rm -rf node_modules/.cache
Authentication Issues:
# Check token in browser storage
# DevTools -> Application -> Session Storage -> tokens
# Clear all auth data
localStorage.clear()
sessionStorage.clear()
This project is licensed under the MIT License - see the LICENSE file for details.
Core Technologies:
Inspiration:
Get Started β’ View Examples β’ Read Docs
Made with β€οΈ by Zafer GΓΆk
β If Starkon helped you ship faster, please give us a star on GitHub!
FAQs
Complete Next.js boilerplate with authentication, i18n & CLI - Create production-ready apps instantly
The npm package starkon receives a total of 18 weekly downloads. As such, starkon popularity was classified as not popular.
We found that starkon demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago.Β It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
Research
A malicious package uses a QR code as steganography in an innovative technique.
Research
/Security News
Socket identified 80 fake candidates targeting engineering roles, including suspected North Korean operators, exposing the new reality of hiring as a security function.