~

Code Snippets

React Functional Component (TypeScript)
import React from 'react';
  
  type ButtonProps = {
    label: string;
    onClick: () => void;
  };
  
  const Button: React.FC<ButtonProps> = ({ label, onClick }) => (
    <button
      onClick={onClick}
      className="px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 transition"
    >
      {label}
    </button>
  );
  
  export default Button;
Next.js API Route with CORS
import type { NextApiRequest, NextApiResponse } from 'next';
  import Cors from 'cors';
  
  // Initialize CORS middleware
  const cors = Cors({ methods: ['GET', 'POST'] });
  
  function runMiddleware(req: NextApiRequest, res: NextApiResponse, fn: Function) {
    return new Promise((resolve, reject) => {
      fn(req, res, (result: any) => {
        if (result instanceof Error) reject(result);
        resolve(result);
      });
    });
  }
  
  export default async function handler(req: NextApiRequest, res: NextApiResponse) {
    await runMiddleware(req, res, cors);
    res.status(200).json({ message: 'Hello with CORS!' });
  }
React useEffect Fetch Data Hook
import { useEffect, useState } from 'react';
  
  const useFetch = (url: string) => {
    const [data, setData] = useState(null);
    const [loading, setLoading] = useState(true);
    const [error, setError] = useState(null);
  
    useEffect(() => {
      fetch(url)
        .then((res) => res.json())
        .then(setData)
        .catch(setError)
        .finally(() => setLoading(false));
    }, [url]);
  
    return { data, loading, error };
  };
  
  export default useFetch;
Redux Toolkit Slice Example
import { createSlice, PayloadAction } from '@reduxjs/toolkit';
  
  interface CounterState {
    value: number;
  }
  
  const initialState: CounterState = { value: 0 };
  
  const counterSlice = createSlice({
    name: 'counter',
    initialState,
    reducers: {
      increment(state) {
        state.value += 1;
      },
      decrement(state) {
        state.value -= 1;
      },
      setValue(state, action: PayloadAction<number>) {
        state.value = action.payload;
      },
    },
  });
  
  export const { increment, decrement, setValue } = counterSlice.actions;
  export default counterSlice.reducer;
Tailwind CSS Responsive Button
<button className="bg-indigo-600 hover:bg-indigo-700 text-white font-bold py-2 px-4 rounded
      transition duration-300 md:px-6 md:py-3 md:text-lg">
    Click Me
  </button>
Basic Express Server
import express from 'express';
  
  const app = express();
  const port = 3000;
  
  app.get('/', (req, res) => {
    res.send('Hello from Express!');
  });
  
  app.listen(port, () => {
    console.log(`Server running at http://localhost:${port}`);
  });
Express Middleware Logger
import { Request, Response, NextFunction } from 'express';
  
  const logger = (req: Request, res: Response, next: NextFunction) => {
    console.log(`${req.method} ${req.url}`);
    next();
  };
  
  export default logger;
Express JSON Body Parser & Route
import express from 'express';
  
  const app = express();
  app.use(express.json());
  
  app.post('/user', (req, res) => {
    const { name, email } = req.body;
    res.json({ message: `User ${name} with email ${email} created.` });
  });
Laravel Basic Route
// routes/web.php
  
  use IlluminateSupportFacadesRoute;
  
  Route::get('/', function () {
      return view('welcome');
  });
Symfony Controller Example
// src/Controller/DefaultController.php
  
  namespace AppController;
  
  use SymfonyBundleFrameworkBundleControllerAbstractController;
  use SymfonyComponentHttpFoundationResponse;
  
  class DefaultController extends AbstractController
  {
      public function index(): Response
      {
          return $this->render('default/index.html.twig');
      }
  }
MongoDB Connection with Mongoose
import mongoose from 'mongoose';
  
  mongoose.connect(process.env.MONGO_URI || '', {
    useNewUrlParser: true,
    useUnifiedTopology: true,
  }).then(() => console.log('MongoDB connected'))
    .catch(err => console.error(err));
Mongoose Schema Example
import { Schema, model } from 'mongoose';
  
  const UserSchema = new Schema({
    name: String,
    email: { type: String, required: true, unique: true },
    createdAt: { type: Date, default: Date.now },
  });
  
  const User = model('User', UserSchema);
  
  export default User;
PostgreSQL Query with node-postgres
import { Pool } from 'pg';
  
  const pool = new Pool({
    connectionString: process.env.DATABASE_URL,
  });
  
  export const getUsers = async () => {
    const res = await pool.query('SELECT * FROM users');
    return res.rows;
  };
MySQL Connection with mysql2
import mysql from 'mysql2/promise';
  
  const connection = await mysql.createConnection({
    host: 'localhost',
    user: 'root',
    database: 'test',
    password: 'password',
  });
  
  const [rows] = await connection.execute('SELECT * FROM users');
  console.log(rows);
Dockerfile for Node.js App
FROM node:16-alpine
  
  WORKDIR /app
  COPY package*.json ./
  RUN npm install
  COPY . .
  EXPOSE 3000
  CMD ["npm", "start"]
GitHub Actions Workflow for Node.js
name: Node.js CI
  
  on: [push]
  
  jobs:
    build:
      runs-on: ubuntu-latest
      steps:
        - uses: actions/checkout@v2
        - name: Use Node.js
          uses: actions/setup-node@v2
          with:
            node-version: '16'
        - run: npm ci
        - run: npm test
Deploy to Heroku CLI
# Login to Heroku
  heroku login
  
  # Create app
  heroku create my-app-name
  
  # Push code
  git push heroku main
  
  # Open app
  heroku open
DigitalOcean Droplet SSH
ssh root@your_droplet_ip_address
WebSocket Server (ws)
import WebSocket from 'ws';
  
  const wss = new WebSocket.Server({ port: 8080 });
  
  wss.on('connection', (ws) => {
    ws.on('message', (message) => {
      console.log('received:', message);
      ws.send('Hello client!');
    });
  });
Basic GraphQL Query (Apollo Client)
import { gql, useQuery } from '@apollo/client';
  
  const GET_USERS = gql`
    query {
      users {
        id
        name
      }
    }
  `;
  
  const Users = () => {
    const { loading, error, data } = useQuery(GET_USERS);
    if (loading) return <p>Loading...</p>;
    if (error) return <p>Error :(</p>;
  
    return (
      <ul>
        {data.users.map(({ id, name }) => (
          <li key={id}>{name}</li>
        ))}
      </ul>
    );
  };
OAuth2 Authorization Code Flow
import express from 'express';
  import axios from 'axios';
  
  const app = express();
  
  app.get('/auth/callback', async (req, res) => {
    const code = req.query.code;
  
    const tokenRes = await axios.post('https://oauth.provider.com/token', {
      code,
      client_id: process.env.CLIENT_ID,
      client_secret: process.env.CLIENT_SECRET,
      redirect_uri: 'https://yourapp.com/auth/callback',
      grant_type: 'authorization_code',
    });
  
    const accessToken = tokenRes.data.access_token;
    // Use accessToken to fetch user data...
    res.send('Logged in!');
  });
Stripe Payment Intent (Node.js)
import Stripe from 'stripe';
  const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!, { apiVersion: '2022-11-15' });
  
  export const createPaymentIntent = async (amount: number) => {
    return await stripe.paymentIntents.create({
      amount,
      currency: 'usd',
      payment_method_types: ['card'],
    });
  };
Basic REST API with Express
import express from 'express';
  
  const app = express();
  
  app.use(express.json());
  
  app.get('/api/items', (req, res) => {
    res.json([{ id: 1, name: 'Item 1' }]);
  });
  
  app.post('/api/items', (req, res) => {
    const newItem = req.body;
    res.status(201).json(newItem);
  });
Redis Cache Get/Set (ioredis)
import Redis from 'ioredis';
  const redis = new Redis();
  
  async function cacheExample() {
    await redis.set('mykey', 'value', 'EX', 60); // expire in 60 sec
    const value = await redis.get('mykey');
    console.log(value);
  }
Kafka Producer (node-rdkafka)
import Kafka from 'node-rdkafka';
  
  const producer = new Kafka.Producer({
    'metadata.broker.list': 'localhost:9092',
  });
  
  producer.connect();
  
  producer.on('ready', () => {
    producer.produce(
      'topic-name',
      null,
      Buffer.from('Hello Kafka'),
      null,
      Date.now()
    );
  });
React Context API Example
import React, { createContext, useContext, useState } from 'react';
  
  const ThemeContext = createContext(null);
  
  export const ThemeProvider = ({ children }) => {
    const [darkMode, setDarkMode] = useState(false);
    return (
      <ThemeContext.Provider value={{ darkMode, setDarkMode }}>
        {children}
      </ThemeContext.Provider>
    );
  };
  
  export const useTheme = () => useContext(ThemeContext);
Next.js getStaticProps
export async function getStaticProps() {
    const res = await fetch('https://api.example.com/posts');
    const posts = await res.json();
  
    return {
      props: { posts },
      revalidate: 10,
    };
  }
Express Route Params
app.get('/users/:id', (req, res) => {
    const { id } = req.params;
    res.send(`User ID is ${id}`);
  });
Tailwind Flexbox Layout
<div className="flex flex-col md:flex-row items-center justify-between p-4 gap-4">
    <div className="flex-1 bg-gray-200 dark:bg-gray-700 p-4 rounded">Left</div>
    <div className="flex-1 bg-gray-300 dark:bg-gray-600 p-4 rounded">Right</div>
  </div>
Node.js Stream File Upload
import fs from 'fs';
  import express from 'express';
  
  const app = express();
  
  app.post('/upload', (req, res) => {
    const writeStream = fs.createWriteStream('./uploads/file');
    req.pipe(writeStream);
    req.on('end', () => res.send('File uploaded!'));
  });
Laravel Migration Example
use IlluminateDatabaseMigrationsMigration;
  use IlluminateDatabaseSchemaBlueprint;
  use IlluminateSupportFacadesSchema;
  
  class CreatePostsTable extends Migration
  {
      public function up()
      {
          Schema::create('posts', function (Blueprint $table) {
              $table->id();
              $table->string('title');
              $table->text('body');
              $table->timestamps();
          });
      }
  
      public function down()
      {
          Schema::dropIfExists('posts');
      }
  }
Symfony Doctrine Entity
// src/Entity/Post.php
  
  namespace AppEntity;
  
  use DoctrineORMMapping as ORM;
  
  /**
   * @ORMEntity()
   */
  class Post
  {
      /** 
       * @ORMId 
       * @ORMGeneratedValue 
       * @ORMColumn(type="integer") 
       */
      private $id;
  
      /** @ORMColumn(type="string", length=255) */
      private $title;
  
      /** @ORMColumn(type="text") */
      private $content;
  
      // getters and setters...
  }
PostgreSQL Transaction Example
await client.query('BEGIN');
  try {
    await client.query('INSERT INTO users(name) VALUES($1)', ['Alice']);
    await client.query('COMMIT');
  } catch (e) {
    await client.query('ROLLBACK');
    throw e;
  }
MySQL Prepared Statement
const [rows] = await connection.execute(
    'SELECT * FROM users WHERE email = ?',
    ['user@example.com']
  );
Docker Compose for Node & Mongo
version: '3'
  services:
    app:
      build: .
      ports:
        - "3000:3000"
      depends_on:
        - mongo
    mongo:
      image: mongo
      ports:
        - "27017:27017"
GitHub Actions Deploy to Vercel
name: Deploy to Vercel
  
  on:
    push:
      branches:
        - main
  
  jobs:
    deploy:
      runs-on: ubuntu-latest
      steps:
        - uses: actions/checkout@v2
        - uses: amondnet/vercel-action@v20
          with:
            vercel-token: ${{ secrets.VERCEL_TOKEN }}
            vercel-org-id: ${{ secrets.VERCEL_ORG_ID }}
            vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID }}
            working-directory: ./
Redis Publish/Subscribe Example
const Redis = require('ioredis');
  const subscriber = new Redis();
  const publisher = new Redis();
  
  subscriber.subscribe('channel1');
  subscriber.on('message', (channel, message) => {
    console.log(`Received ${message} from ${channel}`);
  });
  
  publisher.publish('channel1', 'Hello Subscribers!');
Kafka Consumer (node-rdkafka)
const Kafka = require('node-rdkafka');
  
  const consumer = new Kafka.KafkaConsumer({
    'group.id': 'kafka-group',
    'metadata.broker.list': 'localhost:9092',
  }, {});
  
  consumer.connect();
  
  consumer.on('ready', () => {
    consumer.subscribe(['topic-name']);
    consumer.consume();
  }).on('data', (data) => {
    console.log(`Received message: ${data.value.toString()}`);
  });
React Query Fetch Example
import { useQuery } from '@tanstack/react-query';
  
  const fetchTodos = async () => {
    const res = await fetch('/api/todos');
    return res.json();
  };
  
  const Todos = () => {
    const { data, isLoading, error } = useQuery(['todos'], fetchTodos);
  
    if (isLoading) return <p>Loading...</p>;
    if (error) return <p>Error!</p>;
  
    return <ul>{data.map(todo => <li key={todo.id}>{todo.text}</li>)}</ul>;
  };
OAuth with Passport.js Google Strategy
import passport from 'passport';
  import { Strategy as GoogleStrategy } from 'passport-google-oauth20';
  
  passport.use(new GoogleStrategy({
    clientID: process.env.GOOGLE_CLIENT_ID!,
    clientSecret: process.env.GOOGLE_CLIENT_SECRET!,
    callbackURL: '/auth/google/callback',
  }, (accessToken, refreshToken, profile, done) => {
    // Find or create user logic here
    done(null, profile);
  }));
Stripe Webhook Handler (Express)
import express from 'express';
  import Stripe from 'stripe';
  
  const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!, { apiVersion: '2022-11-15' });
  const app = express();
  
  app.post('/webhook', express.raw({ type: 'application/json' }), (req, res) => {
    const sig = req.headers['stripe-signature']!;
    let event;
  
    try {
      event = stripe.webhooks.constructEvent(req.body, sig, process.env.STRIPE_WEBHOOK_SECRET!);
    } catch (err) {
      return res.status(400).send(`Webhook Error: ${err.message}`);
    }
  
    // Handle event
    if (event.type === 'payment_intent.succeeded') {
      console.log('Payment succeeded!');
    }
  
    res.json({ received: true });
  });
REST API Pagination Example
app.get('/api/items', async (req, res) => {
    const page = parseInt(req.query.page) || 1;
    const limit = parseInt(req.query.limit) || 10;
    const offset = (page - 1) * limit;
  
    const items = await db.query('SELECT * FROM items LIMIT $1 OFFSET $2', [limit, offset]);
    res.json(items.rows);
  });
GraphQL Mutation Example
const CREATE_USER = gql`
    mutation CreateUser($input: CreateUserInput!) {
      createUser(input: $input) {
        id
        name
      }
    }
  `;
  
  const [createUser] = useMutation(CREATE_USER);
  
  createUser({ variables: { input: { name: 'John' } } });
Docker Compose with Redis
version: '3'
  services:
    app:
      build: .
      ports:
        - "3000:3000"
      depends_on:
        - redis
    redis:
      image: redis
      ports:
        - "6379:6379"
Next.js API Route with Authentication
import { getSession } from 'next-auth/react';
  
  export default async function handler(req, res) {
    const session = await getSession({ req });
    if (!session) return res.status(401).json({ error: 'Unauthorized' });
  
    res.json({ message: 'Welcome, ' + session.user.email });
  }
React Hook Form Simple Usage
import { useForm } from 'react-hook-form';
  
  const MyForm = () => {
    const { register, handleSubmit } = useForm();
  
    const onSubmit = data => console.log(data);
  
    return (
      <form onSubmit={handleSubmit(onSubmit)}>
        <input {...register('firstName')} />
        <input type="submit" />
      </form>
    );
  };