A modern web application starter template built with Vite and React, featuring a beautiful UI and Firebase integration.
- Framework: Vite + React
- Database: Firebase
- Styling: Tailwind CSS
- UI Components: shadcn/ui
- Data Management: TanStack Query
- Form Handling: React Hook Form
- Animations: Framer Motion
- Validation: Zod
Before you begin, ensure you have the following:
- Node.js 18+ installed
- A Firebase account for backend services
- Generated project documents from CodeGuide for best development experience
-
Clone the repository
git clone <repository-url> cd codeguide-vite-firebase
-
Install dependencies
npm install # or yarn install # or pnpm install
-
Environment Variables Setup
- Copy the
.env.example
file to.env
:cp .env.example .env
- Fill in the environment variables in
.env
(see Configuration section below)
- Copy the
-
Start the development server
npm run dev # or yarn dev # or pnpm dev
-
Open http://localhost:5173 with your browser to see the result.
- Go to Firebase Console
- Create a new project
- Enable desired services (Authentication, Firestore, Storage, etc.)
- Go to Project Settings > General
- Add a web app to your project
- Copy the Firebase configuration object
- Set up the environment variables as shown below
Create a .env
file in the root directory with the following variables:
# Firebase
VITE_FIREBASE_API_KEY=your_api_key
VITE_FIREBASE_AUTH_DOMAIN=your_auth_domain
VITE_FIREBASE_PROJECT_ID=your_project_id
VITE_FIREBASE_STORAGE_BUCKET=your_storage_bucket
VITE_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
VITE_FIREBASE_APP_ID=your_app_id
- 📦 Firebase Integration (Firestore, Authentication, Storage)
- 🎨 Modern UI with Tailwind CSS and Radix UI
- 🚀 Fast Development with Vite
- 🔄 Data Fetching with TanStack Query
- 📱 Responsive Design
- 🎭 Beautiful Animations with Framer Motion
- 📝 Type-Safe Forms with React Hook Form and Zod
codeguide-vite-firebase/
├── src/ # Source files
│ ├── components/ # React components
│ ├── lib/ # Utility functions
│ ├── hooks/ # Custom hooks
│ └── types/ # TypeScript types
├── public/ # Static assets
└── documentation/ # Generated documentation from CodeGuide
npm run dev
- Start development servernpm run build
- Build for productionnpm run lint
- Run ESLintnpm run preview
- Preview production build
To implement the generated documentation from CodeGuide:
-
Create a
documentation
folder in the root directory:mkdir documentation
-
Place all generated markdown files from CodeGuide in this directory:
# Example structure documentation/ ├── project_requirements_document.md ├── app_flow_document.md ├── frontend_guideline_document.md └── backend_structure_document.md
-
These documentation files will be automatically tracked by git and can be used as a reference for your project's features and implementation details.
Contributions are welcome! Please feel free to submit a Pull Request.