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> ); };