Skip to content

==> Building Slack Clone App with React Js + Next Js + Redux + Styled Components + Material-UI + Firebase Realtime Database + Vercel Hosting + User Authentication + firebase-hooks (a mobile-friendly)

License

Notifications You must be signed in to change notification settings

saddamarbaa/slack-clone-app-nex-js

Repository files navigation

Slack Clone

Building Slack Clone Clone App with React Js, Next Js, Redux, Styled Component, Material-UI, Firebase Realtime Database, Vercel Hosting, with complete user authentication (a mobile-friendly).

Table of contents

Author

Technologies

Client:

  • React Js
  • Next Js
  • Redux
  • Styled Component
  • Material-UI

Server:

  • Firebase Realtime Database
  • Firebase Google Authentication
  • Vercel Hosting

Demo

Features

  • Complete user authentication users can sign in, sign out
  • add new chat rooms
  • realtime time chat

Optimizations

  • Next' Js Image component
  • Next' Js file-system based router
  • Next' Js Server-side rendering
  • Memoization (useMemo, Memo)
  • Function components
  • React hooks
  • React useEffect cleanup
  • react-firebase-hooks

Contributing

Contributions are always welcome!

Support

For support, email saddamarbaas@gmail.com.

Feedback

If you have any feedback, please reach out to me at saddamarbaas@gmail.com

Twitter https://twitter.com/ArbaaSaddam/

Linkedin. https://www.linkedin.com/in/saddamarbaa/

Github https://github.com/saddamarbaa

Instagram https://www.instagram.com/saddam.dev/

Facebook https://www.facebook.com/saddam.arbaa

Run_Locally

Clone the project

  https://github.com/saddamarbaa/slack-clone-app-nex-js

Go to the project directory

  cd slack-clone-app-nex-js

Install dependencies

  npm install

Start the server

npm run dev
# or
yarn dev

Environment

  • To run this project, you will need to create a new project on firebase, setup Firebase Realtime Database and add the following environment variables to your next.config.js

  • API_KEY

  • AUTH_DOMAIN

  • PROJECT_ID

  • STORAGE_BUCKET

  • MESSAIN_SENDER_ID

  • APPID

Status

Project is now complete in (React js + Next js) so my next step I would love to converted to (React + TypeScript + Next.js + Node.js + Express + MongoDB)

Inspiration

Build By Saddam Arbaa Project inspired by [https://slack.com/intl/en-id/]

Screenshots

Responsive on large screens - Home Page

image

Responsive on mobile and tablet screens

image

LogIn Page

image

This is a Next.js project bootstrapped with create-next-app.

Getting Started

First, run the development server:

npm run dev
# or
yarn dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying pages/index.js. The page auto-updates as you edit the file.

API routes can be accessed on http://localhost:3000/api/hello. This endpoint can be edited in pages/api/hello.js.

The pages/api directory is mapped to /api/*. Files in this directory are treated as API routes instead of React pages.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.

About

==> Building Slack Clone App with React Js + Next Js + Redux + Styled Components + Material-UI + Firebase Realtime Database + Vercel Hosting + User Authentication + firebase-hooks (a mobile-friendly)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published