nbd-app
v1.0.6
Published
๐ CLI tool to scaffold full-stack authentication starter projects with React, Node.js, and multiple auth providers (Email, Google, and more)
Maintainers
Readme
nbd-app ๐
nbd-app is a powerful CLI tool that scaffolds production-ready, full-stack authentication starter projects. Get up and running in seconds with React, Node.js, Express, Tailwind CSS, and multiple authentication providers.
โจ Features
- ๐ฏ Multiple Auth Options: Email verification, Google OAuth, and more
- โก Lightning Fast: Vite + React for blazing fast development
- ๐จ Beautiful UI: Pre-configured Tailwind CSS styling
- ๐ Production Ready: Security best practices built-in
- ๐ ๏ธ Full Stack: Complete frontend + backend setup
- ๐ฑ Responsive: Mobile-first design approach
- ๐ Zero Config: Works out of the box
๐ Quick Start
Run directly (recommended):
npx nbd-app@latestโ Don't install globally (to always get the latest version)
๐ฏ Interactive Setup
The CLI will guide you through:
- Project Name - Your project folder name
- Package Name - NPM package name
- Language - JavaScript (TypeScript coming soon)
- Framework - React JS (Next.js coming soon)
- Auth Template - Choose your authentication setup
๐ Available Templates
๐ Authentication Options
- Email + Google - Complete auth with email verification and Google OAuth
- Email Only - Traditional email/password with verification
- Google Only - Simple Google OAuth login
๐ฎ Coming Soon
- Facebook, GitHub, Twitter OAuth
- TypeScript support
- Next.js templates
- Database integrations (MongoDB, PostgreSQL)
๐ ๏ธ Tech Stack
Frontend
- React 18 - Modern React with hooks
- Vite - Super fast build tool
- Tailwind CSS - Utility-first CSS framework
- React Router - Client-side routing
Backend
- Node.js - JavaScript runtime
- Express.js - Web framework
- JWT - JSON Web Tokens for auth
- Bcrypt - Password hashing
- Nodemailer - Email service
๐ Project Structure
your-project/
โโโ frontend/
โ โโโ src/
โ โ โโโ components/
โ โ โโโ pages/
โ โ โโโ utils/
โ โ โโโ App.jsx
โ โโโ public/
โ โโโ package.json
โโโ backend/
โ โโโ routes/
โ โโโ middleware/
โ โโโ models/
โ โโโ controllers/
โ โโโ server.js
โโโ .env.example
โโโ README.md๐ Getting Started
After creating your project:
# Navigate to your project
cd your-project-name
# Install dependencies
npm install
# Configure environment variables
cp .env.example .env
# Edit .env with your credentials
# Start development servers
npm run dev๐ง Configuration
Environment Variables
# Database
DATABASE_URL=your_database_url
# JWT
JWT_SECRET=your_jwt_secret
# Email Service
[email protected]
EMAIL_PASS=your_email_password
# Google OAuth (if using Google auth)
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret๐ Documentation
Authentication Flow
- Email Verification - Users receive verification emails
- Secure Login - JWT tokens with refresh mechanism
- Protected Routes - Frontend and backend route protection
- Password Reset - Secure password reset flow
API Endpoints
POST /api/auth/register- User registrationPOST /api/auth/login- User loginGET /api/auth/verify/:token- Email verificationPOST /api/auth/forgot-password- Password resetGET /api/auth/google- Google OAuth
๐ค Contributing
We welcome contributions! Here's how you can help:
- Add Templates - Create new authentication templates
- Report Bugs - Open issues for any problems
- Feature Requests - Suggest new features
- Documentation - Improve our docs
Adding New Templates
# Create a new template folder
templates/
โโโ react_facebook_auth/
โ โโโ frontend/
โ โโโ backend/
โ โโโ README.md๐ Roadmap
- [ ] TypeScript support
- [ ] Next.js templates
- [ ] Vue.js support
- [ ] Database integrations
- [ ] Docker support
- [ ] Testing setup
- [ ] CI/CD templates
๐ Issues & Support
- ๐ Bug Reports: GitHub Issues
- ๐ก Feature Requests: GitHub Discussions
- ๐ง Email: [email protected]
๐ License
๐ Acknowledgments
- Thanks to all contributors
- Inspired by create-react-app and similar tools
- Built with โค๏ธ for the developer community
โญ Star this repo if it helped you!
Made with โค๏ธ by Nischay Bandodiya
