Skip to content

neuralnurture/ntwo

Repository files navigation

Neural Nurture Website

Modern, responsive website for Neural Nurture - An emerging AI research lab built with Next.js, TypeScript, and Tailwind CSS.

πŸš€ Features

  • βœ… Built with Next.js 14 (App Router)
  • βœ… TypeScript for type safety
  • βœ… Tailwind CSS for styling
  • βœ… Google Analytics integration
  • βœ… Formspree contact form integration
  • βœ… Google Maps embed
  • βœ… Fully responsive design
  • βœ… Dark mode toggle
  • βœ… Smooth scrolling navigation
  • βœ… Optimized for Netlify deployment
  • βœ… SEO-friendly with metadata

πŸ“‹ Prerequisites

  • Node.js 18.17 or later
  • npm or yarn package manager
  • A Namecheap domain (for custom domain)
  • Formspree account (for contact form)
  • Google Analytics account (optional)

πŸ› οΈ Setup Instructions

1. Install Dependencies

npm install

2. Configure Environment Variables

Create a .env.local file in the root directory:

cp .env.example .env.local

Edit .env.local with your credentials:

# Google Analytics
NEXT_PUBLIC_GA_MEASUREMENT_ID=your_ga_measurement_id

# Formspree Contact Form
NEXT_PUBLIC_FORMSPREE_ENDPOINT=your_formspree_endpoint

# Formspree Waitlist Form
NEXT_PUBLIC_FORMSPREE_WAITLIST=your_waitlist_endpoint

Note: These values are already configured as fallbacks in the code, so the site will work even without the .env.local file.

3. Run Development Server

npm run dev

Open http://localhost:3000 in your browser.

πŸ”§ Configuration Guide

Google Analytics Setup

  1. Go to Google Analytics
  2. Create a new property for your website
  3. Get your Measurement ID (format: G-XXXXXXXXXX)
  4. Add it to .env.local as NEXT_PUBLIC_GA_MEASUREMENT_ID

Formspree Setup

  1. Go to Formspree.io
  2. Create a new form
  3. Copy your form endpoint URL
  4. Add it to .env.local as NEXT_PUBLIC_FORMSPREE_ENDPOINT
  5. Update the endpoint in src/components/Contact.tsx if needed

Google Maps

The map is already embedded in src/components/Contact.tsx. To customize:

  1. Go to Google Maps
  2. Search for your location
  3. Click "Share" β†’ "Embed a map"
  4. Copy the iframe src URL
  5. Replace the iframe src in Contact.tsx

🚒 Deployment to Netlify

Method 1: Deploy via GitHub (Recommended)

  1. Push to GitHub:

    git init
    git add .
    git commit -m "Initial commit"
    git branch -M main
    git remote add origin https://github.com/yourusername/neural-nurture.git
    git push -u origin main
  2. Connect to Netlify:

    • Go to Netlify
    • Click "Add new site" β†’ "Import an existing project"
    • Connect your GitHub repository
    • Configure build settings:
      • Build command: npm run build
      • Publish directory: out
    • Add environment variables in Netlify:
      • NEXT_PUBLIC_GA_MEASUREMENT_ID
      • NEXT_PUBLIC_FORMSPREE_ENDPOINT
    • Click "Deploy site"
  3. Set up Custom Domain (Namecheap):

    • In Netlify, go to Site settings β†’ Domain management
    • Click "Add custom domain"
    • Enter your domain (e.g., neuralnurture.com)
    • Follow Netlify's DNS instructions
    • In Namecheap:
      • Go to Domain List β†’ Manage β†’ Advanced DNS
      • Add/Update these records:
        Type: A Record
        Host: @
        Value: 75.2.60.5 (Netlify's load balancer IP)
        
        Type: CNAME Record
        Host: www
        Value: your-site-name.netlify.app
        
    • Wait for DNS propagation (can take up to 48 hours)
    • Enable HTTPS in Netlify (automatic)

Method 2: Deploy via Netlify CLI

# Install Netlify CLI
npm install -g netlify-cli

# Login to Netlify
netlify login

# Deploy
netlify deploy --prod

πŸ“ Project Structure

neural-nurture-nextjs/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ layout.tsx          # Root layout with GA
β”‚   β”‚   β”œβ”€β”€ page.tsx            # Main page
β”‚   β”‚   └── globals.css         # Global styles
β”‚   └── components/
β”‚       β”œβ”€β”€ Navigation.tsx      # Header with navigation
β”‚       β”œβ”€β”€ Hero.tsx            # Hero section
β”‚       β”œβ”€β”€ About.tsx           # About section
β”‚       β”œβ”€β”€ Team.tsx            # Team section
β”‚       β”œβ”€β”€ Services.tsx        # Services section
β”‚       β”œβ”€β”€ Waitlist.tsx        # Waitlist section
β”‚       β”œβ”€β”€ Careers.tsx         # Careers section
β”‚       β”œβ”€β”€ Contact.tsx         # Contact form (Formspree)
β”‚       └── Footer.tsx          # Footer
β”œβ”€β”€ public/                     # Static files
β”œβ”€β”€ .env.example                # Environment variables template
β”œβ”€β”€ .env.local                  # Your environment variables (create this)
β”œβ”€β”€ package.json
β”œβ”€β”€ tailwind.config.js
β”œβ”€β”€ tsconfig.json
β”œβ”€β”€ next.config.js
β”œβ”€β”€ netlify.toml                # Netlify configuration
└── README.md

🎨 Customization

Colors

Edit tailwind.config.js to change the color scheme.

Content

All content is in the component files under src/components/. Edit these files to update:

  • Company information
  • Team profiles
  • Services descriptions
  • Career listings

Styling

  • Global styles: src/app/globals.css
  • Component-specific styles: Inline Tailwind classes in each component

πŸ” SEO

Metadata is configured in src/app/layout.tsx. Update:

  • Title
  • Description
  • Keywords

πŸ› Troubleshooting

Build fails on Netlify

  • Check that all environment variables are set in Netlify
  • Ensure Node.js version is 18.17 or later
  • Check build logs for specific errors

Form not working

  • Verify Formspree endpoint is correct
  • Check browser console for errors
  • Ensure email field has name="email" attribute

Analytics not tracking

  • Verify GA Measurement ID is correct
  • Check that the ID is in the correct format (G-XXXXXXXXXX)
  • Allow 24-48 hours for data to appear in GA

πŸ“ Scripts

npm run dev      # Start development server
npm run build    # Build for production
npm run start    # Start production server
npm run lint     # Run ESLint

🀝 Support

For issues or questions:

πŸ“„ License

Β© 2024 Neural Nurture. All rights reserved.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •