Skip to content

HiteshMondal/social

Repository files navigation

My Project

Overview

This project is a ConnectedWorld which allows users to to to be social online and se or create post. It includes features like authentication with GitHub using Supabase, community-based posts, and media upload.

Technologies Used

  • Frontend: React, Vite
  • Backend: Supabase
  • Database: PostgreSQL (via Supabase)
  • Authentication: Supabase Auth (GitHub OAuth)
  • File Storage: Supabase Storage
  • State Management: React Context API, React Query

Features

  • User authentication with GitHub.
  • Users can create posts, select communities, and upload images.
  • Real-time updates using Supabase's realtime features.
  • Communities allow users to group posts by topics.
  • Responsive UI with modern CSS styling.

Installation

1. Clone the repository

git clone https://github.com/your-username/your-project-name.git
cd your-project-name

# React + TypeScript + Vite

This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.

Currently, two official plugins are available:

- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Babel](https://babeljs.io/) for Fast Refresh
- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh

## Expanding the ESLint configuration

If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:

```js
export default tseslint.config({
  extends: [
    // Remove ...tseslint.configs.recommended and replace with this
    ...tseslint.configs.recommendedTypeChecked,
    // Alternatively, use this for stricter rules
    ...tseslint.configs.strictTypeChecked,
    // Optionally, add this for stylistic rules
    ...tseslint.configs.stylisticTypeChecked,
  ],
  languageOptions: {
    // other options...
    parserOptions: {
      project: ['./tsconfig.node.json', './tsconfig.app.json'],
      tsconfigRootDir: import.meta.dirname,
    },
  },
})

You can also install eslint-plugin-react-x and eslint-plugin-react-dom for React-specific lint rules:

// eslint.config.js
import reactX from 'eslint-plugin-react-x'
import reactDom from 'eslint-plugin-react-dom'

export default tseslint.config({
  plugins: {
    // Add the react-x and react-dom plugins
    'react-x': reactX,
    'react-dom': reactDom,
  },
  rules: {
    // other rules...
    // Enable its recommended typescript rules
    ...reactX.configs['recommended-typescript'].rules,
    ...reactDom.configs.recommended.rules,
  },
})

AWS Free Tier Terraform Example

Features

  • EC2 instance (Ubuntu, Free Tier)
  • S3 Bucket
  • Security Group for SSH/HTTP
  • Outputs for public IP, instance ID, and S3 bucket name

Usage

  1. Create a Key Pair in AWS EC2 and note the key name.
  2. Edit terraform.tfvars: set the key pair and a unique S3 bucket name.
  3. Initialize Terraform

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors